第3章8086指令系统与程序设计.ppt

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

第3章 8086指令系统与程序设计 用来指挥和控制计算机完成指定操作的命令称为指令。不同的微处理器具有各自不同的指令。 每种微处理器能够识别和执行的所有指令的集合称为该微处理器的指令系统。 3.1 寻址方式 计算机的指令一般由操作码和操作数两部分组成。操作码表示指令所要执行的操作,操作数表示指令执行过程中操作的对象。 所谓寻址方式,就是寻找操作数或操作数地址的方式。与数据有关的寻址方式有: 立即数寻址 寄存器寻址 直接寻址 寄存器间接寻址 存储器相对寻址 基址变址寻址 基址变址相对寻址 寄存器比例寻址 3.1.1 立即数寻址 立即数,操作数直接包含在指令中,作为指令的一部分存放在代码段中 例3-1 MOV AX,2004H ;(AH)=20H,(AL)=04H MOV BL, 5AH ;(BL)=5AH MOV EAX ;(EAX), (AX)=4455H 立即数常用于给寄存器赋初值,只能作源操作数,不能作目的操作数 3.1.2 寄存器寻址 操作数存放在指令指定的8位、16位或32位通用寄存器中。 例3-2 寄存器寻址 MOV AX,BX ; 将BX中的内容送入AX中, BX中的内容保持不变 MOV SI,DI ;将DI中的内容送入SI中, DI中的内容保持不变 MOV EAX,EBX ;将EBX中的内容送入EAX中 3.1.3 直接寻址 直接寻址指的是操作数在存储器中的有效地址EA直接包含在指令中,书写时有效地址加上中括号 例3-3 存储器直接寻址 MOV AX,[1000H] ;将DS段的1000H和1001H两个 单元的内容送入AX寄存器中 MOV EAX,ES:[2000H] ;将ES段的2000H~2003H四个 单元的内容送入EAX寄存中,其中ES为段超越前缀 MOV AX,BUF ;将DS段内以有效地址BUF (符号地址)起始的两个单元的内容送入AX寄存器中 3.1.4 寄存器间接寻址 操作数的有效地址EA放在基址寄存器BX,BP,或变址寄存器SI,DI中。 操作数的物理地址为: (DS)×16+(SI/DI/BX)或(SS)×16+(BP) 例3-4 假定(DS)=2000H,(SI)=3600H,(23600H)=6022H MOV AX,[SI] ;先将DS中的值左移4位,然后与SI中的值相加, 形成物理地址是23600H,再将该物理地址中的 数据6022H送入AX寄存器中 例3-5 假定(SS)=3000H,(BP)=1100H,(31100H)=5E28H MOV BX,[BP] 例3-6 偏移量为32位时的寄存器间接寻址 MOV EAX,[ECX] MOV EAX,[DX] 3.1.5 寄存器相对寻址 操作数的有效地址是一个基址寄存器或变址寄存器中存放的数据加上指令给出的8位或16位偏移量,其物理地址为: (DS)×16+(SI/DI/BX)+8位或16位偏移量 或 (SS)×16+(BP)+8位或16 位偏移量 例3-7 假定(DS)=2000H,(SS)=3000H,(SI)=3600H,(BP)=1100H,COUNT=10H,(23620H)=8A76H,(31110H)=4567H MOV AX ,[SI+20H] MOV BX ,[BP+COUNT] 指令MOV BX,[BP+COUNT]书写有下面的等效形式: MOV BX,[BP]+COUNT MOV BX,COUNT[BP] 3.1.6 基址变址寻址 操作数的有效地址是一个基址寄存器和一个

文档评论(0)

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

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

1亿VIP精品文档

相关文档