网站大量收购闲置独家精品文档,联系QQ:2885784924

课件-微机原理及应用-05章资料.ppt

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

第5章 86系列微型计算机的指令系统 5.1 86系列汇编语言及指令的格式与寻址方式 5.2 传送类指令 5.3 数据操作类指令 5.4 串操作指令 5.5 控制类指令 习题 指令是让计算机完成某种操作的命令,指令的集合称作指令系统,不同系列计算机有不同的指令系统。指令是根据计算机CPU硬件特点研制出来的,指令的符号用规定的英文字母组成,称为助记符。指令系统与计算机硬件有着某些对应关系,用指令进行编程能够充分开发计算机硬件资源,它的程序目标代码短、运行速度快,因此,指令语言是面向机器的语言,它在自动控制、智能化仪器仪表、监测等领域应用非常广泛。 86系列指令系统是在8位微处理器86系列的指令系统基础上设计的,它兼容了86系列的全部指令,这部分对8位微处理器具有兼容性的指令往往是处理字节(8位)的。此外,86系列还有自己所特有的对字或字符串的处理指令,以及对带符号数的运算指令,中断指令和协处理器指令。 5.1 86系列汇编语言及指令的格式与寻址方式 5.1.1 86系列汇编语言指令语句格式 任何一种汇编语言的指令语句都是与机器指令一一对应的,它通过汇编程序将其翻译成机器指令代码(目标代码),让CPU执行某种操作。86系列汇编语言指令语句格式如图5.1所示。图中由前向后的箭头表示是可选项,由后向前的箭头表示是重复项,圆头方框表示是语句中的关键字。 (1) 标号是给该指令所在地址取的名字,必须后跟冒号“:”,它可以缺省,是可供选择的标识符。86系列汇编语言中可使用的标识符必须遵循下列规则: ① 标识符由字母(a~z,A~Z)、数字(0~9)或某些特殊字符(@,-,?)组成。 ② 第一个字符必须是字母(a~z,A~Z)或某些特殊的符号(@,-,?),但“?”不能单独作标识符。 ③ 标识符有效长度为31个字符,若超过31个字符,则只保留前面的31个字符为有效标识符。 下面是有效的标识符:  START: MY-CODE: ALPHA:  NUM@-1: LOOP1: X:    ?MORE-350: BETA-1: DELAYIS: 下面是无效的标识符:  4LOOP: MAIN A/B:    BETA*: START=3: GAMA$1:    NUM+1: ?: ONE*TWO: (2) 指令助记符是指令名称的代表符号,它是指令语句中的关键字,不可缺省,它表示本指令的操作类型,必要时可在指令助记符的前面加上一个或多个“前缀”,从而实现某些附加操作。 (3) 操作数是参加本指令运算的数据,有些指令不需要操作数,可以缺省;有些指令需要两个操作数,这时必须用逗号(,)将两个操作数分开;有些操作数可以用表达式来表示。 (4) 注释部分是可选项,允许缺省,如果带注释则必须用分号(;)开头,注释本身只用来对指令功能加以说明,给阅读程序带来方便,汇编程序不对它做任何处理。 5.1.2 86系列 CPU的寻址方式 1. 立即数寻址 8086 CPU指令系统中,有一部分指令所用的8位或16位操作数就在指令中提供,这种方式叫立即数寻址方式。例如: MOV AL,80H ;将十六进制数80H送入AL MOV AX,1090H ;将1090H送AX,AH中为10H,AL中 ;为90H 采用立即数寻址方式的指令主要用来对寄存器赋值。因为操作数可以从指令中直接取得,不需要运行总线周期,所以,立即数寻址方式的显著特点就是速度快。 立即数可以为8位,也可以为16位;规定立即数只能是整数,不能是小数、变量或者其他类型的数据;另外还要注意,立即数只能作为源操作数。 2. 寄存器寻址 如果操作数就在CPU的内部寄存器中,那么寄存器名可在指令中指出。这种寻址方式就叫寄存器寻址方式。 对16位操作数来说,寄存器可以为AX,BX,CX,DX,SI,DI,SP或者BP,而对8位操作数来说,寄存器可为AH,AL,BH,BL,CH,CL,DH,DL。例如:  INC CX  ;将CX的内容加1    ROL AH,1 ;将AH中的内容循环左移一位 采用寄存器寻址方式的指令在执行时,操作就在CPU内部进行,不需要使用总线周期,因此,执行速度快。在一条指令中,可以对源操作数采用寄存器寻址方式,也可以对目的操作数采用寄存器寻址方式,还可以两者都用寄存器寻址方式。 3. 直接寻址 使用直接寻址方式时,数据总是在存储器中,存储单元的有效地址由指令直接指出,所以直接寻址是对存储器进行访问时可采用的最简单的方式。例如:  MOV AX,[1070H];将DS段的1070H和1071H两单元的内容取到AX中 要注意的是采用直接寻址方式时,如果指令前面没有用前缀指明操作数在哪一段,则默认为段寄存器  是数据段寄存器DS。例如,上一条指令执行时,设DS=2000H,则执行

文档评论(0)

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

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

1亿VIP精品文档

相关文档