变量定义语句有两种不同的格式
指示语句又称伪指令。指示语句没有对应的机器指令,不由CPU执行,而是在汇编程序汇编时识别,用于说明CPU的类型、段结构、源程序起止信息和段内存的安排等。
MASM有丰富的伪指令。必须搞清这些伪指令的功能及用法,才能编写出高质量的汇编语言源程序。
MASM的伪指令可分为变量定义语句、符号定义语句、段定义语句、段分配语句、过程定义语句、群定义语句、结构定义语句、记录定义语句等。
本节重点讨论前五种伪指令语句,这些语句在程序中比较重要,使用频繁。
4.3.1 变量定义语句
变量定义语句用来定义字节、字或双字等变量。变量定义语句有两种不同的格式。
1.格式1
[变量名]DB/DW/DD/DF/DQ/DT表达式
功能:为变量分配1个字节/字/双字/长字/四字/十字节的存储单元,并给它们赋值。格式1又可分为以下几种具体用法:
2.格式2
格式2用于定义重复变量。
4.3.2 符号定义语句
编制源程序时,经常将常数或表达式等用一特定符号表示,这时需要用符号定义语句。符号定义语句不占用内存,有两种基本格式。
1.等值语句(EQU)
格式:符号EQU表达式
功能:将表达式的值赋给EQU左边的符号。
例如:COUNT EQU 5;COUNT等于5
NUMEQU 13+6-2;NUM等于表达式的值
等值语句在汇编时不产生任何目标代码,也不占用存储单元。但在同一个程序中,不能对已定义的符号重新定义。
2.等号语句
格式:符号 表达式
等号语句与EQU语句有同样的功能,区别在于等号语句定义的符号允许重新定义,使用更加方便灵活。
4.3.3 段定义语句
在汇编程序设计中,需要将存储器分成若干段,CPU访问存储器时,凭借段寄存器对各段进行访问。通常用段定义语句(SEGMENT/ENDS)来定义各种类型的逻辑段。在MASM5.0以上的汇编语言版本中,有完整定义伪指令和简化段定义两种。
1.完整的段定义语句
1)段定义语句
格式:段名SEGMENT[定位类型][,组合类型][,字长选择][,类别]
任何一个逻辑段从SEGMENT语句开始,以ENDS语句结束。伪指令名SEGM ENT和ENDS是本语句的关键字,不可以默认,并且总是成对出现的。语句中段名是必选项,定位类型、组合类型、字长选择、分类名为可选项。
(1)段名(SEG NAME)
用户自己选定,不能省略,一个段开始与结尾用的段名应一致。
(2)定位类型(ALIGN TYPE)
定位类型表示对段的起始边界的要求,可有以下五种选择:
①PAGE(页):表示本段从一页的边界开始,一页为256个字节,所以PAGE定义的边界其地址能整除256,这样段的首地址的最后八位二进制数一定为‘0’(即以00H结尾)。
②PARA(节):表示本段从一个节的边界开始,一节为16个字节,所以段的起始地址最后四位二进制数一定为‘0’(即以0H结尾)。PARA通常隐含,即未定义定位类型时,其定位类型为PARA。
③DWORD(双字):表示本段从4的倍数地址开始。
④WORD(字):表示本段从偶数地址开始,该地址的最低位应为0。
⑤BYTE(字节):表示本段可从任何地址开始定位。
(3)组合类型(COMBINE TYPE)
组合类型用来对各个逻辑段之间的连接方式提出要求,可供选择的参数有以下六种:
①NONE:表示该段与其他同名段不进行连接,独立存于存储器中。如果语句中省略组合类型,则MASM把它作为NONE处理。
②PUBLIC:该段可与其他模块中的同名段在满足定位类型的前提下,由低地址到高地址连接起来,组合成一个较大的逻辑段。
③COMMON:该段与其他模块中的同名段采用覆盖方式在存储器中定位,即它们具有相同的段首地址,共享同一个存储区,而共享存储器的长度由同名段中最大的段确定。段的内容为所连接的最后一个模块中的内容,以及没有覆盖到的前面COMMON段的部分内容。
④MEMORY:定义该段与其他模块中的同名段具有相同的首地址,采用覆盖方式在存储器中进行连接。与COMMON的不同处是:带有MEMORY参数的逻辑段覆盖在其他同名段的最高地址。
- 面对面学习总是比在线学习好吗
- 最近关于重新开放学校的激烈争论主要取决于在线教学的质量。这是可以理解的。但是,关于在线指导的许多内容仍然被误解。现在该改变这种
- 06-09 关注:73
- 在线学习的4条建议
- 印第安纳大学(IU)的新资源介绍了使在线学习成功的一些最重要因素。
当IU关闭体育课并转向在线教学时,电子学习研究与实践实验室开始
- 06-09 关注:65
- 激光视盘 可以自由放置和使用
- 激光视盘采用丙烯酸塑料制成,大多数光盘直径为30厘米(C12英寸),也有13厘 米(5英寸)的小型盘,盘的转速为1500转/分,但应指出,为
- 09-18 关注:133
- 数字技术用于语音信号高效多路传输
- 欣赏声音、喜爱音乐,这是音响的源点。为了满足这一需要,音响系统需由两个系统组成。其一是对音乐与人声加以收音并加以调整,记录在唱
- 09-18 关注:122
- 电脑正在进入有线电视网
- 当前,随着数字计算机和多媒体技术的发展,许多大的计算机制造公司都提出,在微型计算机上实现电视的功能,即利用计算机网络来接收数字
- 09-18 关注:128
- 电视信号的传输过程
- 当前,像高保真音响、高清晰度电视、VCD、数码录音等新词汇大量充斥在我们身边,它们一方面代表这新技术的涌现,另一方面也体现了这些
- 09-18 关注:196
- 计算机6.2.180x86中断结构及类型
- 从Intel 8086/8088、286、386、486直到Pentium系列微处理器,它们中断系统的结构基本相同,不同之处主要有两点:一是 因CPU的工作模式
- 09-18 关注:132
- 中断技术引入计算机系统
- 中断技术是现代计算机系统中很重要的功能。最初,中断技术引入计算机系统,只是为了解决快速的CPU与慢速的外部设备之间传送数据的矛盾
- 09-18 关注:261