微机原理与接口技术 课件 第3、4章 指令系统、 汇编语言程序设计.pptx

微机原理与接口技术 课件 第3、4章 指令系统、 汇编语言程序设计.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术课件

第三章 8088/8086的指令系统3.1指令的基本格式3.2第3 章8086/8088的寻址方式3.38086/8088指令系统微机原理与接口技术3.1 指令的基本格式汇编指令由两部分组成:操作码 操作数1.操作码:表示计算机要执行的操作类型 如:MOV数据传送 IN 数据输入2.操作数:指令执行所需的数 1) 大部分指令有2个操作数:目的操作数和源操作数 如: MOV AL ,45H ; 逗号前面的AL是目的操作数,后面45H是源操作数 2) 少数指令只有一个操作数,可能是源操作数,也可能是目的操作数 如:INC BX ;BX既是源操作数,又是目的操作数 PUSH AX ;AX是源操作数 POP AX ;AX是目的操作数 3) 少数指令没有操作数 如:DAA ;加法的十进制调整指令,操作数隐含在AL中3.2 8086/8088 的寻址方式3.1 指令的基本格式3.1 指令的基本格式3.1 指令的基本格式寻找操作数来源的方式,称为寻址方式,共6种。操作数的可能来源只有三个: (1)直接包含在指令中; 立即寻址 (2)CPU的寄存器中; 寄存器寻址 (3)存储器中。;4种寻址方式,具体是哪种方式,就看怎样表达存储器单元的地址 操作数来源不同,即寻址方式不同。3.2 8086/8088 的寻址方式1、立即寻址 例:MOVAL,34H MOV AX,3000H 特点: 操作数是立即数,直接放在指令中 注意:立即数只能做源操作数2、寄存器寻址 例:MOVAL,BL;√ MOVDS,AX;√ 特点: 操作数包含在寄存器中 注意:寄存器位数要一致 MOV AL,BX; × MOV AX,BL;×这两种寻址方式,数据都来源于CPU内部,无须访问总线,所以执行速度相对快。3.2 8086/8088 的寻址方式3.1 指令的基本格式3.1 指令的基本格式3.1 指令的基本格式 后面4种寻址方式,操作数都来源于存储器。 表3-1存储单元的表示方法。 不同的表示方法,表示不同的寻址方式。 3.2 8086/8088 的寻址方式3. 直接寻址 例: MOV AX,[2000H] 特点:操作数的偏移地址2000H直接在指令中物理地址PA的计算:默认PA=DS×16 +偏移地址例如:MOV AL, [2000H];此时,PA=DS×16 +2000H若有超越,则PA=超越到的段寄存器×16 +偏移地址例如:MOV AX,ES:[4000H] ;此时,PA=ES×16 +4000H执行结果:AX=1234H3.2 8086/8088 的寻址方式4 .寄存器间接寻址 例: MOV BX,[SI] 注意: 1)可间接寻址的寄存器只有四个: BX、BP、SI、DI。其中存放操作数所在的偏移地址 2)以SI/ DI/ BX间接寻址时,默认DS段 3) 以BP间接寻址时, 默认SS段 PA=SS?16+BP 4)允许段超越MOV BX, [SI]DS=1000H, SI=3000H结果:BX=2345HMOV BX,SS:[SI]3.2 8086/8088 的寻址方式5.变址寻址寄存器间接寻址的基础上加一个8/16位的偏移量,注意事项同上 例:MOV BX,[SI +4000H] 设:DS=3000H,SI=2000H,位移量为4000H,(36000H)=5678H 则:PA = DS×16+SI+COUNT =30000H+2000H+4000H =36000H 执行结果为BX=5678H。3.2 8086/8088 的寻址方式6.基址加变址寻址 例: MOV AX,[BX+SI][+16位偏移量];红色部分加不加都可以 有的教材会把加红色部分称作相对基址变址寻址  注意: [BX][BP]不能共存,[SI][DI]不能共存 若用BX: 默认操作数在数据段DS中 若用BP: 默认操作数在堆栈段SS中 上例中:DS=3000H, BX=2000H,SI=5000H 则:PA=DS×16+BX+SI=37000H 指令执行后,AX=5577H 该指令还可写成: MOV AX,[BX][SI] MOV AX, [BX+DI+偏移量]寻址方式小结(看源操作数,不用看目的操作数):立即寻址:MOV AX, 3000H寄存器寻址: MOV AX, BX直接寻址:MOVAX, [3000H]寄存器间接寻址:MOV AX, [BX] 变址寻址:MOV AX, [BX+800H]基址加变址寻址:MOV AX,【BX+SI+900H】3. 3 8088/8086的指令系

您可能关注的文档

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档