单片机原理及接口第4章.pdf
文本预览下载声明
第 4 章 汇编语言程序设计简介
第4章汇编语言程序设计简介
4.1 伪指令
4.2 汇编语言程序设计
第 4 章 汇编语言程序设计简介
4.1 伪指令
一、汇编起始指令 ORG
指令格式为:
ORG nn
该指令的作用是指明后面的程序或数据块的起始地址,
它总是出现在每段源程序或数据块的开始。式中, nn为16 位
地址, 汇编时nn确定了此语句后面第一条指令或第一个数据
的地址,此后的源程序或数据块就依次连续存放在以后的地址
内, 直到遇到另一个ORG指令为止。
第 4 章 汇编语言程序设计简介
例: ORG 2000H
MOV SP, #60H
MOV R0, #2FH
MOV R2, #0FFH
ORG伪指令说明其后面程序的目标代码在存储器中存放的
起始地址是2000H, 即
存储器地址 目标程序
2000H 75 81 60
2003H 78 2F
2005H 7A FF
第 4 章 汇编语言程序设计简介
二、等值指令EQU
指令格式:
字符名称EQU 数字或汇编符号
功能: 使指令中的字符名称等价于给定的数字或汇编符号。
使用等值指令可给程序的编制、调试、修改带来方便, 如果
在程序中要多次使用到某一地址, 由EQU指令将其赋值给一个字
符名称, 一旦需要对其进行变动, 只要改变EQU命令后面的数字
即可, 而不需要对程序中涉及到该地址的所有指令逐句进行修
改。但要注意, 由EQU等值的字符名称必须先赋值后使用, 且
在同一个源程序中, 同一个标号只能赋值一次。例:
PA8155 EQU 8001H
即给标号PA8155赋值为8001H。
第 4 章 汇编语言程序设计简介
三、定义字节指令DB
指令格式:
[标号: ]DB 8位二进制数表
功能: 把 8 位二进制数表依次存入从标号开始的连续的
存储单元中。
格式中, 标号区段可有可无, DB指令之后的 8 位二进制
数表是字节常数或用逗号隔开的字节串, 也可以是用引号括
起来的ASCII码字符串 (一个ASCII字符相当于一个字节) 。
例:
第 4 章 汇编语言程序设计简介
ORG 1000H
BUF1: DB 38H, 7FH, 80H
BUF2: DB 45H, 66H
ORG伪指令指定了标号BUF1 的地址为1000H, 而DB伪
指令是将其后的二进制数表38H, 7FH, 80H 依次存放在
1000H, 1001H, 1002H 3 个连续单元之中, BUF2也是一个标
号, 其地址与前一条伪指令连续, 即1003H, 1004H地址单元
中依次存放45H, 66H 。
第 4 章 汇编语言程序设计简介
四、定义字指令DW
指令格式:
[标号:]DW 16 位数据表
该指令的功能与DB相似, 区别仅在于从指定地址开始存
放的是指令中的 16 位数据, 而不是字节串。每个 16 位数据
要占两个存储单元, 高8 位先存, 低8 位后存, 这和MCS -51指
令中的16位数据存放
显示全部