【2017年整理】5汇编语言程序设计.ppt
文本预览下载声明
第5章 汇编语言程序设计;5. 汇编语言程序设计; 5.2 汇编语言源程序的编辑和汇编
5.2.1 源程序编辑
在计算机上,借助编辑软件,编写汇编语言的源程序。
5.2.2 源程序的汇编
1. 手工汇编
2. 机器汇编;5.2.3 伪指令
在对汇编语言源程序进行汇编时,有一些控制汇编用的特 殊指令,它们不属于指令系统,不产生机器代码,不影响汇编语言源程序的功能,称为 “伪指令”。
指定程序或数据的起始位置,给出一些连续存放数据的确切地址,或为中间运算结果保留一部分存储空间、表示源程序结束。
; (1)汇编起始地址伪指令ORG
格式:ORG 16位地址
该伪指令的功能是规定其后面的目标程序或数据块的起始地址。它放在一段源程序(主程序、子程序)或数据块的前面,说明紧跟在其后的程序段或数据块的起始地址就是ORG后面给出的地址。例如:
ORG 2000H
START:MOV A,#64H; (2) 结束汇编伪指令END
格式:[标号:] END
END是汇编语言源程序的结束标志,表示汇编结束。在END以后所写的指令,汇编程序都不予处理。一个源程序只能有一个END命令,否则就有一部分指令不能被汇编。如果END前面加标号的话,则应与被结束程序段的起始点的标号一致,以表示结束的是哪一个程序段。; (3) 赋值伪指令EQU
格式:字符名称 EQU 项
该伪指令的功能是将指令中的项的值赋予EQU前面的字符名称 。项可以是常数、地址标号或表达式。例如:
AA EQU R1
MOV A,AA
汇编后R1与AA等值。
用EQU伪指令对某标号赋值后,该标号的值在整个程序中不能再改变。; (4)定义标号数值伪指令DATA
格式:字符名称: DATA 表达式
该伪指令的功能是给标号段中的标号赋以数值。
MN:DATA 3000H
汇编后MN的值为3000H。
; (5)定义字节伪指令DB
格式:[标号:] DB 项或项表
其中项或项表指一个字节,用逗号分开的字符串,或以引号括起来的字符串。该伪指令的功能是把项或项表的数据存入从标号地址开始的连续存储单元中。例如:
ORG 2000H
TAB1: DB 30H,8AH,7FH,73
DB 5,A,BCD; 由于ORG 2000H,所以TAB1的地址为2000H,因此,以上伪指令经汇编后,将对2000H开始的连续存储单元赋值:; 7. 预留存储空间伪指令DS
格式:[标号:] DS 表达式
该伪指令的功能是从标号地址开始,保留若干个字节的内存空间以备存放数据。保留的字节单元数由表达式的值决定。例如:
ORG 1000H
DS 20H
DB 30H,8FH
; 8. 定义字伪指令DW
格式:[标号:] DW 16位数据项或项表
该伪指令的功能是把DW后数据项或项表从当前地址连续存放。每项数值为16位二进制数,高八位先存放,低八位后存放。例如: ORG 1500H
TABLE:DW 1234H,8AH,10H
汇编后:( 1500H )=12H ( 1501H )=34H
( 1502H )=00H ( 1503H )=8AH
( 1504H )=00H ( 1505H )=10H; 9. 位地址定义伪指令BIT
格式:字符名称 BIT 位地址
该伪指令的功能是将位地址赋予BIT前面的字符名称 ,经赋值后可用该字符名称代替BIT后面的位地址。例如:
A1 BIT P1.0
A2 BIT 02H
经以上伪指令定义后,在程序中就可以把A1和A2作为位地址来使用。A1的值为90H,A2的值为02H。;5.3 汇编程序设计
5.3.1 汇编语言程序设计步骤与方法
步骤
显示全部