汇编伪指令介绍(二)

 

1、DS ---预留存储区命令
格式:   〔标号:〕 DS    表达式值
其功能是从指定地址开始,定义一个存储区,以备源程序使用。
存储区预留的存储单元数由表达式的值决定。
TMP:    DS    1
从标号TEP地址处开始保留1个存储单元(字节)。
2、BIT---定义位命令
格式:    字符名称    BIT     位地址
其功能用于给字符名称定义位地址。
SPK    BIT    P3.7
经定义后,允许在指令中用SPK代替P3.7。
3、USING指令
USING指令通知汇编器使用8051的哪一个工作寄存器组。
格式:   USING   表达式   (值必须为0-3,默认值为0。)
USING   0
使用第0组工作寄存器。
4、SEGMENT指令
SEGMENT 指令用来声明一个再定位段和一个可选的再定位类型。
格式:   再定位段名   SEGMENT   段类型〔再定位类型〕
其中,“再定位段名”用于指明所声明的段。
“段类型”用于指定所声明的段将处的存储器地址空间。
可用的段类型有 CODE、XDATA、DATA、IDATA和BIT。
STACK_SEG   SEGMENT   IDATA
DATA_SEG SEGMENT DATA
5、RSEG---再定位段选择指令
再定位段选择指令为RSEG,用于选择一个已在前面定义过的再定位段作为当前段。
格式:   RSEG   段名
段名必须是在前面已经声明过的再定位段。
DATA_SEG   SEGMENT   DATA    ;声明一个再定位DATA段
RSEG    DATA_SEG    ;选择前面声明的再定位DATA段作为当前段
6、绝对段选择指令
CSEG---绝对代码段
DSEG---内部绝对数据段
XSEG---外部绝对数据段
ISEG ---内部间接寻址数据段
BSEG---绝对位寻址数据段
格式:
CSEG   [AT 绝对地址表达式]
DSEG   [AT 绝对地址表达式]
XSEG   [AT 绝对地址表达式]
ISEG    [AT 绝对地址表达式]
BSEG   [AT 绝对地址表达式]
括号内是可选项,用来指定当前绝对段的基地址。
CSEG AT 0000H
AJMP   MAIN
7、ORG指令
ORG指令用来改变汇编器的计数器,从而设定一个新的程序起始地址。
格式:   ORG   表达式
表达式必须是绝对或简单再定位表达式。
ORG   0000H
AJMP   MAIN
设定 MAIN 程序的起始地址为 0000H。
8、END指令
END指令用来控制汇编结束。在每个汇编程序的最后一行必须有一条END指令,
并且END指令只能出现一次。
9、EQU指令
EQU 指令用于将一个数值或寄存器名赋给一个指定的符号名。
格式:   符号名    EQU    表达式  
或       符号名    EQU    寄存器名
表达式必须是一个简单再定位表达式。
用 EQU 指令赋值以后的字符名,可以用作数据地址、代码地址、位地址或者
直接当做一个立即数使用。
LIMIT        EQU     1200
COUNT     EQU      R5
10、DATA 指令
DATA 指令用于将一个内部 RAM 的地址赋给指定的符号名。
格式:   符号名     DATA     表达式
数值表达式的值在 0-255 之间,表达式必须是一个简单再定位表达式。
PORT1     DATA     40H
11、DB 指令
DB 指令以表达式的值的字节形式初始化代码空间。
格式: [标号:]     DB    表达式表
表达式中可包含符号、字符串、或表达式等项,各个项之间用逗号隔开,字符串应用引号括起来。
括号内的标号是可选项,如果使用了标号,则标号的值将是表达式表中第一字节的地址。
DB 指令必须位于 CODE 段之内,否则将会发生错误。
TABLE:
DB   0C0H, 0F9H, 0A4H
TABLE1:
DB  " WEINA

 

12  DUP

n DUP()就是括号里的重复 n 遍

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值