【精品】微型计算机原理及应用1.ppt

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

微型计算机原理及应用 西南民族大学电信学院 授 课 教 师:杜 诚 联系方式 Email:dcheng_76@ ;第三章 80X86指令系统 ;§3.1 指令的基本格式;1.操作码字段 该字段指示计算机所要执行的操作类型,由一组二进制代码表示,在汇编语言中又用助记符代表。;微计算机中此字段通常可有一个或两个,称前者为单操作数指令,称后者为双操作数指令。 而双操作数又分别称为源操作数和目的操数。在指令执行之前,SRC和DST均为参加运算处理的两个操作数,指令执行之后在DST中存放运算处理的结果。 ;8086的通用指令格式 8086的指令长度可在1~6字节的范围,如图所示。其中B1和B2为基本字节,B3~B6 将根据不同指令作相应的安排。;§3.2 8086的寻址方式;1、固定寻址 8086的单操作数指令,其操作是规定在CPU中某个固定的寄存器中进行,这个寄存器又被隐含在操作码中,因此,这种寻址方式的指令大多为单字节指令。;例: PUSH DS ;目的操作数隐含为栈顶字单元 POP BX ;源操作数隐含为栈顶字单元 LAHF ;源操作数隐含为标志寄存器低字节, ;目操作数隐含为寄存器AH; 2. 立即寻址(Immediate addressing) 操作数直接存放在指令中,紧跟在操作码之后,作为指令 的一部分,存放在代码段里,这种操作数称为立即数。 立即数可以是8位或16位的。 16位的立即数是高位字节放在高地址,低位字节放在低地址。 使用场合:经常用于给寄存器赋初值。 注意:只能用于源操作数字段,不能用于目的操作数字段。 ;例: MOV AL,05H 指令执行后: (AL)=05H;例如:MOV AL,C3H ;执行后,(AL)=C3H。 MOV AX ,2050H ;执行后,(AX)=2050H,其中:(AH)=20H,(AL)=50H。 这种寻址方式只能用于源操作数,且因操作数是直接从指令中取得,不执行总线周期,所以这种寻址方式的显著特点是执行速度快,主要用来给寄存器赋初值。;3、寄存器寻址方式 (Register addressing) 操作数在寄存器中,指令指定寄存器号。 对于16位操作数,寄存器可以是: AX,BX,CX,DX,SI,DI,SP,BP。 以及段寄存器。 对于8位操作数,寄存器可以是: AL,AH,BL,BH,CL,CH,DL,DH。 这种寻址方式因为操作数在寄存器中 不需要访问存储器的运算速度较高。;例: 指令执行前:(AX)=3064H (SS)=1234H MOV SS,AX 指令执行后: (SS)=3064H (AX)保持不变。 ;4. 存储器寻址;(4.1)直接寻址(Direct addressing) 操作数地址的16位偏移量,直接包含在指令中, 存放在代码段中指令操作码之后, 但操作数一般存放在数据段中, 必须先求出操作数的物理地址, 然后再访问存储器才能取得操作数。 物理地址 : PA=16d×(DS)+EA ;MOV AX , [1050H];例:MOV AX,[3100H] (DS)=6000H , (63100H)=3050H 则:(AX)=3050H 又如:用符号地址代替数值地址。 MOV AX,VALUE VALUE——有效操作数单元的 符号地址。 如:VALUE在附加段中, 则应指定段跨越。 MOV AX,ES:VALUE; 注意: (1)直接寻址方式适用于处理单个变量。 (2)直接寻址方式隐含的段寄存器是 DS, 8086/8088允许段跨越,即允许使用 CS SS ES 作为段寄存器,这时,必须在指令中特别标明。 ?;(4.2) 寄存器间接寻址方式(Register indirect addressing) 操作数在存储器中, 操作数地址的16位偏移量包含在 BP、BX、SI、DI寄存器中。 1、若选择SI、DI、BX作为间接寻址 操作数一般在现行数据段区域中,用(DS)作为段地址。 即操作数物理地址为: 物理地址PA=16 d ×(DS)+(BX) 物理地址PA=16 d × (DS)+(SI) 物理地址PA=16 d × (DS)+(DI) ;寄存器间接寻址过程;寄存器间接寻址示例; 例:MOV BX,[DI]

文档评论(0)

138****7331 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档