第5章 汇编语言程序设计

第5章 汇编语言程序设计

ID:34096739

大小:495.90 KB

页数:44页

时间:2019-03-03

第5章  汇编语言程序设计_第1页
第5章  汇编语言程序设计_第2页
第5章  汇编语言程序设计_第3页
第5章  汇编语言程序设计_第4页
第5章  汇编语言程序设计_第5页
资源描述:

《第5章 汇编语言程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章汇编语言程序设计5.1宏汇编语言的基本语法5.2伪指令5.3宏指令5.4汇编语言程序的结构5.5DOS系统功能调用5.6汇编语言程序设计方法5.7软件调试技术习题1汇编语言是用意义明确的助记符来表示指令的操作码、操作数。汇编语言是面向机器的语言,不同的机器有不同的汇编语言。用汇编语言编写的程序具有执行速度快、占用存储空间小、实时性能好等特点。汇编语言被大量用于编写计算机系统程序、实时控制程序等。用汇编语言编写的程序称为汇编语言源程序(简称汇编语言程序)。计算机必须将汇编语言程序翻译成由机器代码组成的目标

2、程序才能执行。这个翻译过程称为汇编。自动完成汇编过程的软件叫汇编程序。215.1宏汇编语言的基本语法5.1.1常数、变量和标号1.常数常数——没有任何属性的纯数值。在汇编期间,它的值已经完全确定,而且在程序的运行中也不会发生变化。它可以有以下几种类型:⑴二进制数:以字母B结尾的由一串“0”和“1”组成的序列。例如:0010110B。⑵八进制数:以字母O或Q结尾,由若干个0到7的数字组成的序列。例如:255Q、⑶十进制数:由若干个0到9的数字组成的序列,可以以字母D结尾,也可以省略字母D。例如:1234D或12

3、34。3⑷十六进制数:以字母H结尾,由若干个0到9的数字和字母A到F组成的序列,且必须以数字开头。例如:56H,0B3FH。⑸字符串常数:用引号括起来的一个或多个字符。这些字符以ASCII码形式存在内存中。例如‘A’的值是41H,而‘B’的值是42H。因此串常量与整数常量可以交替使用。42注意:为了区别由A~F组成的一个字符串是十六进制数还是英文符号,规定凡以字母A~F为起始字符的十六进制数,必须在前面冠以数字“0”。总之,常数主要以立即数、位移量的形式出现在指令语句或数据定义伪指令中。5⒉变量变量——通常是

4、存放在某些存储单元的数据,这些数据在程序运行期间可以修改。变量名——表示数据在段中的有效地址,由用户指定。变量名是可选的,如果使用变量名,它代表数据区中第一个数据项的地址。变量的三个属性:(1)段属性(SEGMENT):表示变量所在段的段首地址(2)偏移属性(OFFSET):表示变量的偏移地址(3)类型属性(TYPE):表示变量占用存储单元的字节数。类型:字节,字,双字,四字,十字节类型,63变量是用数据定义伪指令DB、DW、DD等定义的。DB—字节DW—字(2字节)DD—双字(4字节)注意:变量也可以定义为

5、一个数据区或存储区,但变量名仅表示该数据区或存储区的第一个数据单元(即数据区或存储区的首地址)。7⒊标号表示一条指令所在的地址,也是指令语句的地址符号,常用作转移指令(包含子程序调用指令)的操作数,即目标地址。通常由字母数字串组成,但第一个字符必须为字母。最多允许使用31个字符,且可以使用下划线(-)使标号容易阅读。84标号的三个属性:(1)段属性(SEGMENT):表示标号所在段的段基址(2)偏移属性(OFFSET):表示标号的偏移地址(3)距离属性(类型属性TYPE):表示标号作为段内或段间的转移属性

6、距离属性分为两种:NEAR(近):表示本标号只能被标号所在段内的转移和调用指令访问(即段内转移)。FAR(远):表示本标号可以被其他段(不是标号所在段)的转移和调用指令访问(即段间转移)。95.1.2运算符与表达式数值表达式:只产生数值结果表达式地址表达式:产生的结果是一个存储器地址,若该地址存放的是数据,一般称它为变量,若存放的是指令,一般称它为标号.105运算符主要包括以下6种类型:⒈算术运算符包括:+、-、*、/、MOD(求余)、SHL(左移)和右移(SHR)例:CONT=14*4CONT=CONT/8

7、MOVAL,21HSHL22.逻辑运算符包括:AND、OR、XOR和NOT。只适用于对常数进行逻辑运算。例:ANDDX,PORTAND0FEH113.关系运算符包括:EQ(相等)、NE(不相等)、LT(小于)、GT(大于)、LE(小于或等于)、GE(大于或等于)。结果:若关系为假(不成立),结果为0;若关系为真(成立),结果为0FFH或0FFFFH。例:MOVBX,PORTLT5例:MOVBX,((PORTLT5)AND20)OR((PORTGE5)AND30)当PORT<5时,等价MOVBX,20当PORT

8、>5时,等价MOVBX,30126⒋分析操作符(数值返回运算符)⑴取地址的偏移量格式:OFFSET变量名或标号功能:取变量名或标号所在段的段内偏移量。⑵取段基址格式:SEG变量名或标号功能:取变量名或标号所在段的段首地址。13⑶求变量名或标号的类型值格式:TYPE变量名或标号功能:返回一个数字值。若TYPE加在变量名前,返回该变量的类型属性;若加在标号前,返回该变量的距离属性。存储器操作数的类型值属

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。