欢迎来到天天文库
浏览记录
ID:48143095
大小:49.62 KB
页数:13页
时间:2020-01-21
《51单片机汇编伪指令.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.51单片机汇编伪指令 0、ALTNAME功能: 这一伪指令用来自定义名字,以替换源程序中原来的保留字,替换的保留字均可等效地用于子程序中。格式: ALTNAME 保留字 自定义名 注意: 自定义名与保留字之间首字符必须相同。1、BIT功能:指令用于将一个位地址赋给指定的符号名。 指令格式:符号名BIT位地址经BIT指令定义过的位符号名不能更改。例如:X_ON BIT 60H;定义一个绝对位地址 X_OFF BIT 24h.2;定义一个绝对位地址 BIT---定义位命令 格式
2、: 字符名称 BIT 位地址功能用于给字符名称定义位地址。 SPK BIT P3.7 经定义后,允许在指令中用SPK代替P3.7。2、BSEG 功能:绝对选择指令指令BSEG选择绝对位寻址数据段 指令格式如下:BSEG[AT绝对地址表达式]3、CODE功能:用于将程序存储器ROM地址赋给指定的符号名。 指令格式:符号名 CODE 表达式例如:RESET CODE 00H 4、CSEG 功能:绝对选择指令CSEG选择绝对代码段;
3、 指令格式如下:CSEG[AT绝对地址表达式]5、DATA(BYTE)..功能:指令用于将一个内部RAM的地址赋给指定的符号名 指令格式:符号名DATA 表达式数值表达式的值应在0~255之间,表达式必须是一个简单再定位表达式。例如:REGBUF DATA(BYTE) 40H PORT0 DATA(BYTE) 80HDATA与BYTE的区别: DATA与BYTE是相类
4、似的伪指令。 当程序运行到DATA伪指令定义的符号名时,该符号名将被显示;而由BYTE定义的符号名不被显示。 6、DB 功能:DB伪指令用于定义一个连续的存储区,给该存储区的存储单元赋值。该伪指令的参数即为存储单元的值,在表达式中对变元个数没有限制,只要此条伪指令能容纳在源程序的一行内,其格式为:标号:DB表达式只要表达式不是字符串,每一表达式值都被赋给一个字节。计算表达式值时按16位处理,但其结果只取低8位,若多个表达式出现在一个DB伪指令中,它们必须以逗号分开。表达式中有字符串时,以单引号“'”作分隔符,每个字符占一个字节
5、,字符串不加改变地被存在各字节中,并不将小写字母转换成大写字母。例如:DB00H01H03H46H DB'Thisisademo!'7、DBIT功能:在内部数据区的BIT段以位为单位保留存储空间。 指令格式:[标号:]DBIT数值表达式其操作类似于DB。 8、DS 功能:DS为定义存储内容的伪指令,用它定义一个存储区,并用指定的参数填满该存储区。DS伪指令包含两个变元,第一个变元定义了存储区的长度的字节数,在汇编时,汇
6、编程序将跳过这些单元把其它指令汇编在..这些字节之后,因此在使用DS伪指令时第一个变元不可活力第二个变元表示在这些单元中真入什么值,第二个变元可以活力活力时这些字节将不处理。下例中0173处有一条DS9,则空出9个字节,下一第指令被汇编到017C处;在017C处空出1BH个单元,在这些字节中被27H所填充。DS指令的格式如下: 标号:DS表达式1,表达式2表达式1定义了存储区的长度(以字节为单位)。这个变元不能省略。表达式2是可选择的,它的值低8位用以填入所定义的存储区。若省略则这部
7、分存储单元不处理。例:000004INCA 0001DS9 000A04INCA 000BDS1BH,27H 002604INCADS---预留存储区命令 格式: 〔标号:〕DS 表达式值 其功能是从指定地址开始,定义一个存储区,以备源程序使用。 存储区预留的存储单元数由表达式的值决定。TMP: DS 1
8、 从标号TEP地址处开始保留1个存储单元(字节)。9、DSEG 功能:绝对选择指令DSEG内部绝对数据段 指令格式如下:DSEG[AT绝对地址表达式]10、DW 功能:D
此文档下载收益归作者所有