微型计算机汇编语言及汇编程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微型计算机汇编语言及汇编程序

第五章 微型计算机汇编语言及汇编程序 汇编语言和机器语言相比,突出优点就是可以使用符号,即使用助记符表示指令的操作码和操作数,用标号和符号来代替地址、常量和变量。 汇编语言编写的程序不能由机器直接执行,而必须翻译成由机器代码组成的目标程序,这个过程叫做汇编。用来把汇编语言编写的程序自动翻译成目的程序的软件叫做汇编程序。 汇编语言源程序源程序 汇编语言源程序 源程序 汇编 汇编程序 目的程序 用汇编语言编写的程序叫做源程序。汇编语言大量被用于编写计算机系统程序、实时通信程序、实时控制程序等。 第一节 宏汇编程序语言的基本语法 一、伪指令语句格式 伪指令语句中的伪指令本身不产生对应的机器目标代码。它仅仅是告诉汇编程序,对后面的指令语句和伪指令语句的操作数应该如何产生机器目标代码。伪指令格式如下示: 标号名注释 标号名 注释 伪指令 操作数 , 1、标号名字段 这是任选字段。标号名可以是常量名、变量名、过程名、结构名、记录名等。标号名就表示一个常量或存储器地址。 2、伪指令字段 这是伪指令语句不可省略的主要部分。它们是伪指令语句要求汇编程序完成的具体操作命令。 3、操作数字段 本字段是否需要,需要几个,需要什么样的操作数等都由伪指令字段中伪指令来确定。操作数可以是一个常数、字符串、常量名、变量名、标号、一些专用的符号。 4、注释字段 这是一个任选字段,它必须以分号为开始,它的作用与指令语句的注释字段相同。 二、常数、变量和标号 1、常数 常数分为数值型常数和字符型常数,分别为: (1)二进制数 (2)八进制数 (3)十进制数 (4)十六进制数 (5)实数:它由整数、小数和指数3部分组成。这是计算机中的浮点数表示法。 (6)字符串常数:用引号括起来的一个或多个字符。这些字符以ASCII码形式存储在内存中。如“AB”,在内存中就是41H、42H。 在程序中,常数主要出现在: (1)指令语句中源操作数中作立即数,它应与目的操作数的位数相一致,可以是8位或16位。如: MOV AX,0A5F1H (2)在指令语句的基址加变址的寻址方式中作位移量,如: MOV BX,[SI+32H] (3)在数据定义的伪指令中,如: DB 12H DW 1234H DD DB ‘ABCD’ 2、变量 变量是代表存放在某些存储单元的数据,这些数据在程序运行期间随时可以修改。为了便于对变量的访问,它常常以变量名的形式出现在程序中,它可以认为是存放数据存储单元的符号地址。 (1)变量的定义与预置 定义变量就是给变量分配存储单元,且对这个存储单元赋于一个符号名——变量名,同时将这些存储单元预置初值。 VAR-DATA SEGMENT ;定义一个数据段 DATA1 DB 12H ;定义DATA1=12H DATA2 DB 34H ;定义DATA2=34H DATA3 DW 5678H ;定义DATA3=5678H VAR-DATA ENDS 经过定义的变量,每个变量均有3个属性。 1)段属性(SEG):表示变量存放在哪一个逻辑中,例如,上面所定义的变量,它就是在数据段中。当在指令中要对这些变量进行存取操作时,事先要把它们所在段的段基值存放在某一个段寄存器(如DS)中。 2)偏移量属性(OFFSET):表示变量在逻辑段中离段起始点的字节数。例如,变量DATA1的偏移量为0,而DATA2的偏移量为1,DATA3偏移量为2。 上述段和偏移量两个属性就构成了变量的逻辑地址。 3)类型属性(TYPE):表示变量占用存储单元的字节数。这一属性是由数据定义伪指令DB、DW、DD来规定的。变量DATA1、DATA2是用DB定义的,它的类型属性为字节;而DATA3是用DW定义的,类型属性为字;如果用DD定义,类型属性为双字。 (2)数据定义伪指令 这种伪指令主要为数据项分配存储单元并预置初值。它的格式为: 变量名DB 变量名 DB DWE DD 表达式1 表达式2 、 其中表达式1、表达式2、…是给变量赋予的初值。表达式可以有以下几种情况: 1)数值表达式。 DAT-BYTE DB 50H,50 变量DA-BYTE的内容为50H,它的下一个字节为32H。 2)?表达式:不带引号的?表示可预置任何内容。例: DA-B DB ?,? DA-W DW ?,? 第一条语句是要求汇编程序分配两个字节单位,第2条语句是要求分配两个字单元。这些单元里现在可以是任意值。 3)字符串表达式:对于DB伪指令,为字符串中每一个字符分配一个字节单元。字符串必须是用引号括起来且不超过255个字符。字符串

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档