26 伪指令 由汇编程序执行的“指令系统”。伪指令没 有对应的机器指令,它不是由8086/8088CPU 来执行,而是由MASM-86识别,并完成相应的 功能。 用于定义变量、分配存储区、定义逻辑段、 指示程序开始和结束等 微机原理及应用
26 微机原理及应用 伪指令 ◼ 由汇编程序执行的“指令系统”。伪指令没 有对应的机器指令,它不是由8086/8088CPU 来执行,而是由MASM-86识别,并完成相应的 功能。 ◼ 用于定义变量、分配存储区、定义逻辑段、 指示程序开始和结束等
27 伪指令语句格式 ☆这是一个任选字段。标号名 后面不能用冒号“ 它与指令语句的突出要成分伪指令种类个,细登的在能 同的伪指令,标号名义数据伪指令DBD等都令这是一个任选字段, 量名、变量名、过程义伪指令 > SEGMENT;令来它必须以分号为 名,记录名等:它们伤指令PROC等。它 伪指令语句和指令语句要求汇编程序完成名、令语句的注释学段 始,它的作用与指 数,这时,标号名就 常量或存储器地址。命令。 相同。 标号名 伪指令 操作数 注释 伪指令语句格式 微机原理及应用
27 微机原理及应用 标号名 伪指令 操作数 注释 , 伪指令语句格式 ❖这是一个任选字段。标号名 后面不能用冒号“:”,这是 它与指令语句的突出区别。不 同的伪指令,标号名可以是常 量名、变量名、过程名、结构 名、记录名等。它们可以作为 伪指令语句和指令语句的操作 数,这时,标号名就表示一个 常量或存储器地址。 这是伪指令语句不可省略的主 要成分。伪指令种类很多,如定 义数据伪指令DB,DW,DD;段定 义伪指令SEGMENT;定义过程 伪指令PROC等。它们是伪指令语 句要求汇编程序完成的具体操作 命令。 本字段是否需要,需要几 个,需要什么样的操作数 等都由伪指令字段中伪指 令来确定。操作数可以是 一个常数、字符串、常量 名、变量名、标号、一些 专用的符号等。 ❖这是一个任选字段, 它必须以分号为开 始,它的作用与指 令语句的注释字段 相同。 伪指令语句格式
28 伪指令 MASM-86识别的伪指令可分成以下几类: (1)符号定义伪指令(8)定位伪指令 (2)内存数据定义伪指令(9)列表伪指令 (3)段定义伪指令(10)系统隐含进位制伪指令 (4)段寄存器说明伪指令(11)连接伪指令 (5)子程序定义伪指令(12)记录伪指令 (6)模块开始伪指令 (13)结构伪指令 (7)模块结束伪指令(14)块注释伪指令 (15)宏命令伪指令 微机原理及应用
28 微机原理及应用 伪指令 ◼ MASM-86识别的伪指令可分成以下几类: (1)符号定义伪指令 (8)定位伪指令 (2)内存数据定义伪指令 (9)列表伪指令 (3)段定义伪指令 (10)系统隐含进位制伪指令 (4)段寄存器说明伪指令 (11)连接伪指令 (5)子程序定义伪指令 (12)记录伪指令 (6)模块开始伪指令 (13)结构伪指令 (7)模块结束伪指令 (14)块注释伪指令 (15)宏命令伪指令
29 符号定义伪指令 ■格式: (1)〈名字〉EQU〈表达式 (2)〈名字〉=〈表达式〉 ■作用:把表达式的值赋给符号名。 区别:在同一程序中,用EQU语句赋值的符号名不能 被重新赋值,但用“=”号赋值的符号名可以被重新 赋值。 微机原理及应用
29 微机原理及应用 符号定义伪指令 ◼ 格式: (1)〈名字〉EQU〈表达式〉 (2)〈名字〉=〈表达式〉 ◼ 作用:把表达式的值赋给符号名。 ◼ 区别:在同一程序中,用EQU语句赋值的符号名不能 被重新赋值,但用“=”号赋值的符号名可以被重新 赋值
30 符号定义伪指令 例 CONSTANT EQU 100 VAR EQU 30H+99H EQU说明的表达式不占用内存空间 微机原理及应用
30 微机原理及应用 符号定义伪指令 ◼ 例: CONSTANT EQU 100 VAR EQU 30H+99H EQU说明的表达式不占用内存空间