MASM伪指令系统42汇编语言语句种类与格式421汇编语言

MASM伪指令系统42汇编语言语句种类与格式421汇编语言

ID:45063215

大小:295.00 KB

页数:22页

时间:2019-11-09

MASM伪指令系统42汇编语言语句种类与格式421汇编语言_第1页
MASM伪指令系统42汇编语言语句种类与格式421汇编语言_第2页
MASM伪指令系统42汇编语言语句种类与格式421汇编语言_第3页
MASM伪指令系统42汇编语言语句种类与格式421汇编语言_第4页
MASM伪指令系统42汇编语言语句种类与格式421汇编语言_第5页
资源描述:

《MASM伪指令系统42汇编语言语句种类与格式421汇编语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章MASM伪指令系统4.2 汇编语言语句种类与格式4.2.1 汇编语言语句的种类汇编语言源程序可以使用如下三类语句: 1.指令性语句 2.伪指令语句 3.宏指令语句4.2.2 汇编语言语句的格式由于宏指令实质上不是一类语句,故我们主要分析指令性语句和伪指令语句的格式。 指令性语句的格式为: [标号:]指令助记符[操作数[,操作数]][;注释] 伪指令语句的格式为: [名字] 伪指令定义符 [参数,…,参数] [;注释] 1.标号、名字 指令或数据的符号地址。2.助记符、定义符 规定指令或伪指令的功能。 3.

2、参数 参数可分为三类,如下: (1).数值表达式⊙常数 宏汇编中允许使用如下几种常数: ①二进制常数、②十进制常数、③十六进制常数、④八进制常数、⑤串常数、⑤十进制科学计数法、⑦十六进制实数⊙算术运算符 算术运算符有+、-、*、/、MOD。 (2)⊙逻辑运算符 逻辑运算符有NOT、AND、OR、XOR、SHR和SHL。⊙关系运算符 关系运算符有:EQ、NE、LT、LE、GT、GE。 (2).寄存器操作数寄存器操作数就是寄存器的名字,常用于指令性语句中。 (3).存储器操作数 存储器操作数即存储器的地址,常以一个

3、表达式的形式给出,称为地址表达式。单个的变量、标号或有方括号的基址或变址寄存器是地址表达式的特例。 4.注释 注释项必须以分号开头。4.3 常用伪指令4.3.1 符号定义伪指令1.等值语句EQU格式:变量名EQU表达式 功能:EQU伪指令告知汇编程序,指令左右的二个量相等,并且用右边表达式的值定义左边的符号。表达式可以是常数、变量、标号、指令助记符、数值表达式、地址表达式。2.等号伪指令 格式:变量名=表达式 功能:“=”伪指令用来为右边的表达式定义一个替代符号,且只能是数值表达式,不能为字符串或地址表达式,“

4、=”伪指令定义的符号允许重复定义。4.3.2 数据定义伪指令与变量1.数据定义语句 数据定义语句有5条,其格式相同,如下: 变量名DB初值表达式变量名DW初值表达式 变量名DD初值表达式变量名DQ初值表达式 变量名DT初值表达式 功能: 让汇编程序在内存中划出指定个数的存储单元,然后将这些存储单元与变量名联系起来,并在存储单元中预置初值。DB伪指令定义字节类型变量,其每个初值都占一个字节的存储空间。DW伪指令用来定义字类型变量,其每个初值都占一个字的存储空间。DD伪指令用来定义双字类型变量,其每个初值都占二个字

5、的存储空间。DQ伪指令用来定义四字类型变量,其每个初值都占四个字的存储空间。DT伪指令用来定义十字节类型变量,其每个初值都占五个字的存储空间。 初值表达式: 初值表达式决定变量初值的个数,定义变量时可以指定多个初值,从而占据较多的存储空间。多个初值时各个初值间用逗号隔开。初值表达式中可以有常数或常数表达式、字符串、?和带DUP的表达式。 例如:B0DB2 B1DB3,5,?,9 B2DW10H,2 DUP(1234H,?) B3DD1,2 B4DB0,2 DUP(?,1,2 DUP(7)这5个变量分配内存情况如

6、图4-1(a)~(f)所示(见下页)。图4-1DBDWDD初值示意图说明: (1)表达式中也可以有用引号引起来的字符串,它表 示将字符的ASCII码作为初值。 例如:C1DB‘ABCD’C2DW‘AB’,‘B’C3DD‘AB’这三个变量在内存中的存放情况如图4-2(a)~(c)所示.图4-2DBDWDD初值示意图(2)对于DW和DD,表达式中也允许是一个变量名或者标号.DW伪指令将变量或标号的偏移量作为初值置入存储区,而DD伪指令则把变量或标号的段基址与偏移量作为初值置入存储区。例:S1DB5S2DWS1S3D

7、DS1内存情况如图4-3所示。 2.变量的访问 (1)当变量只代表一个数据时, 用变量名可直接对其代表的单 元进行操作。 (2)当变量对应着多个数据时, 变量名仅代表其第一个数据项, 对其后数据项的存取可用变量名 加一偏移量来实现。 3.变量的属性 一个变量一经定义就具备了如 下三个属性:图4-3变量/标号名作初值(1).段属性 表示变量对应数据区所在段的段基址。变量在哪个段 内定义,其段属性就是哪个段的段基址。 (2).偏移属性 表示变量对应数据区的段内的偏移量,即从段的起始地址开始到变量对应数据区的第一个存

8、储单元之间的字节数,用16位无符号数表示。 变量的段属性与偏移属性构成了变量的逻辑地址。 (3).类型属性 指变量对应数据项的存取单位,它与变量定义时使用的伪指令有关。如:DB定义的变量,类型为BYTE(字节);DW定义的变量,类型为WORD(字);DD定义的变量,类型为DWORD(双字)等。4.3.3 标号及其属性1.标号的概念 标号是一条指令的符号地址,它常作为转移指令或子程序调用

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

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

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