文档介绍:回顾:
1
主要解决问题:
第四章汇编语言程序设计
汇编语言的基本语法
第四章汇编语言程序设计
程序设计的基本方法
2
第四章汇编语言程序设计
§ 伪指令
伪指令
伪指令
在汇编语言中,伪指令是给汇编程序的命令,在汇编过程中由汇编程序进行处理。
例如定义数据、分配存储区、定义段及定义过程等都采用伪指令表示。
说明
指示性语句
汇编程序完成,不产生目标代码。
指令性语句
CPU
对应CPU的一个特定操作。
3
包括:
第四章汇编语言程序设计
数据定义伪指令
§ 汇编语言基本语法
伪指令
符号定义伪指令
段定义伪指令
过程定义伪指令
结束伪指令
4
第四章汇编语言程序设计
伪指令
一、数据定义伪指令
定义程序中所用的内存操作数。
【格式】
[变量名] 类型命令操作数[,操作数…]
变量名
内存操作数的符号地址
类型命令
指示内存操作数的类型
操作数
内存操作数的内容
【操作】
为变量分配存储空间,并置初值。
§ 伪指令
5
类型命令
说明
,表示每个参数占1/2/4/6/8/10字节存储空间;
、表达式或“?”;
;
[变量名] 类型命令 n DUP (操作数)
;
字符串长度超过两个
只能用DB类型定义
重复次数
;
[变量名]
操作数[,操作数…]
重复内容
6
‘E’
‘H’
S3
‘H’
‘E’
‘L’
S1
大
小
例:
X2 DB 1, -1,0FCH
X3 DW 1, -1,0FCH
X4 DD 1, -1,0FCH
X1 DB 40H
例:
Y1 DW 10*10
Y2 DW ?
例:
Y3 DW 2 DUP(2,4),1476H
Y4 DB 2 DUP(?,2 DUP(‘A’,‘B’) )
例:
S1 DB ‘HEL’
S2 DB ‘H’, ‘E’, ‘L’
S3 DW ‘HE’
?
‘A’
‘B’
‘A’
‘B’
?
‘A’
‘B’
‘A’
‘B’
Y4
7
第四章汇编语言程序设计
伪指令
二、符号定义伪指令
符号定义伪指令的用途是给一个符号重新命名,或定义新的类型属性等。这些符号可以包括汇编语言的变量名、标号名、过程名、寄存器名以及指令助记符等。
§ 伪指令
●EQU
●”=”
8
第四章汇编语言程序设计
§ 伪指令
●EQU
二、符号定义伪指令
【格式】
名字 EQU 表达式
用途: 便于程序的调试和赋值
例: AA EQU 30H
K1 EQU 40H
MOV A, AA ; 30H→A
MOV A, K1 ; 40H→A
与变量不同,不占内存,不可任意改变。由EQU定义的符号在同一模块中不允许重定。
9
第四章汇编语言程序设计
§ 伪指令
●”=”
二、符号定义伪指令
【格式】
名字= 表达式
说明: 与EQU功能类似,起赋值作用。
例: X = 5
X = X + 1
用“=”定义的符号名可以被重新定义,使
符号名具有新值。
10