第四章 16位和32位微处理器的指令系统及汇编语言编程.doc

第四章 16位和32位微处理器的指令系统及汇编语言编程.doc

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

第4章 本章学习要点 ● 8086CPu指令系统的寻址方式 ●8086CPU指令及其应用 ● 汇编语言基本格式 ● 汇编语言程序设计的步骤、方法及应用 ●DOS和BIOS中断调用 —1 本章知识重点 1-1 指令系统与寻址方式 1.指令系统与指令格式的概念 计算机所能执行的全部操作命令的集合称为该计算机的指令系统。指令系统是计算机硬 计算机中的指令格式由操作码字段和操作数字段两部分组成。 1 操作码字段:说明计算机要执行的具体操作,如传送、运算、移位、跳转等操作,是指令中必不可少的组成部分。 2 操作数字段:说明在指令执行的过程中需要的操作数,它可以是操作数本身,也可以是操作数地址或是地址的一部分,还可以是指向操作数的关操作数据的信息。 2.8086指令系统的寻址方式 计算机中的指令要给出操作数的存放位置,在执行时需要根据这个地址信息找到需要的 8086指令系统的寻址方式按其处理数据的类别区分,主要有以下两大类方式: 1 与数据有关的寻址方式,可以分为以下3种: ●立即数寻址:操作数在给定的指令中。 ●寄存器寻址:操作数在CPU的寄存器中。 ●存储器寻址方式:操作数在指定的存 其中,存储器寻址又包括以下5种基本寻址方式: ● 直接寻址:指令中直接给出操作数存放的存储单元有效地址。 ●寄存器间接寻址:操作数存放的存储单元有效地址在指定的寄存器中。 ●寄存器相对寻址:操作数存放的存储单元有效地址是寄存器的内容与位移 ●基址变址寻址:操作数存放的存储单元有效地址是基址寄存器的内容与变址寄存器的内容之和。 ●相对基址变址寻址:操作数存放的存储单元有效地址是基址寄存器的内容与变址寄存器的内容再加上相对位移量之和。 2 与I/O端口有关的寻址方式,可以分 ●直接端口寻址:是在指令中直接给出要访问的端口地址,一般采用2位十六进制数表示,也可以用符号表示,可访问的端口范围为0~255。 ●间接端口寻址:是访问的端口地址值大于255时所采用的I/O端口寻址方式。它是把I/O端口的地址先送到DX中,用DX作为间接寻址寄存器。此种方式可访问的端口范围为O~65535。 3.8086CPU指令系统按功能可以分为6大类指令 1 数据传送类指令:这类指令的功能是把数据或地址传送到指定的元中。根据传送的内容可以分为:通用数据传送指令、累加器专用传送指令、地址传送指令和标志寄存器传送指令等4类。 2 算术运算类指令:8086的算术运算类指令包括加、减、乘、除4种基本运算以及进行BCD码调整的指令。要注意算术运算类指令会影响标志位,应按相应的规则去处理。 3 逻辑运算 位操作 与移位类指令:逻辑运算类指令包括逻辑与、逻辑或、逻辑异或、逻辑非和测试指令,可对8位或16位数进行按位操作的逻辑运算。移位指令中包括逻辑左移令中包括循环左移、循环右移、带进位的循环左移和循环右移等指令。移位指令也会影响相应的标志位。 4 串操作类指令:8086指令系统中设置了串操作指令,其操作对象是内存中地址连续的字节串或字串。在完成每次串操作后,能够自动修改地址指针,为下一次操作作准备。串操作指令主要包括串传送、串存储、取串、串比较、串搜索、清除和设置方向标志以及重复操作前缀等指令。 5 控制转移类指令:控制转移类指令用来改变程序执行的方向寄存器IP和代码段寄存器CS的值。按程序的转移位置有段内转移和段间转移两种。 根据转移指令的功能,可以分为无条件转移指令、条件转移指令、循环控制指令、子程序调用和返回指令等。 6 处理器控制类指令:这类指令主要用于修改状态标志位,如设置进位标志CF、设置方向标志DF、设置中断允许控制标志Ⅲ指令等;对CPU的控制指令,如使CPU暂停、等待、空操作等。 1-2 汇编语言与汇编程序 1.汇编语言、汇编程序、汇编语言语句格式 1 汇编语言是一种面向CPU指令系统的程序设计语言,它采用指令助记符来表示操作码和操作数,用符号地址表示操作数地址。 2 汇编程序则是将汇编语言编制的源程序翻译成机器能够识别和执行的目标程序的一种系统软件。 3 汇编语言的语句一般可由1~4部分组成,其格式如下: 标识符 操作符 操作数;注释】 其中标识符也称为名字,带方括号的内容可根据需要任选2.标号和变量的3种属性 3种属性: 1 段属性:该属性定义了标号和变量的段起始地址,其值必须在一个段寄存器中。标号的段是它所出现的对应代码段,由CS指示。变量的段通常由DS或者ES指示。 2 偏移属性:该属性表示标号和变量相距段起始地址的字节数,该数是一个16位无符号数。 3 类型属性:该属性对于标号而言,用于指出该标号是在本段内引用还是在其他段中引用,标号的类型有NEAR 段内引用 和FAR 段间引用 。对于变量,其类型属性说明变量有几

文档评论(0)

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

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

1亿VIP精品文档

相关文档