文档详情

单片机原理及应用汇编语言程序设计简介.pptx

发布:2025-05-11约1.54万字共10页下载文档
文本预览下载声明

13五月2025单片机原理及应用

13五月2025第4章汇编语言程序设计简介4.1伪指令4.2汇编语言程序设计

1伪指令13五月2025伪指令是汇编程序能够识别并对汇编过程进行某种控制的汇编命令。它不是单片机执行的指令,所以没有对应的可执行目标码,汇编后产生的目标程序中不会再出现伪指令。起始地址设定伪指令ORG格式为:ORG表达式该指令的功能是向汇编程序说明下面紧接的程序段或数据段存放的起始地址。表达式通常为16进制地址,也可以是已定义的标号地址。

ORG8000HSTART:MOVA,#30H……此时规定该段程序的机器码从地址8000H单元开始存放。在每一个汇编语言源程序的开始,都要设置一条ORG伪指令来指定该程序在存储器中存放的起始位置。若省略ORG伪指令,则该程序段从0000H单元开始存放。在一个源程序中,可以多次使用ORG伪指令规定不同程序段或数据段存放的起始地址,但要求地址值由小到大依序排列,不允许空间重叠。

汇编结束伪指令END格式为:END该指令的功能是结束汇编。汇编程序遇到END伪指令后即结束汇编。处于END之后的程序,汇编程序将不处理。0102

三、字节数据定义伪指令DB[标号:]DB字节数据表功能是从标号指定的地址开始,在ROM中定义字节数据。字节数据表可以是一个或多个字节数据、字符串或表达式。该伪指令将字节数据表中的数据根据从左到右的顺序依次存放在指定的存储单元中。一个数据占一个存储单元。例如:ORG9000HDATA1:DB73H,01H,90HDATA2:DB02HDB‘ABCD’,3*25,01H.’1’11个数据从9000H单元连续存放。

四、字数据定义伪指令DW[标号:]DW字数据表功能是从标号指定的地址单元开始,在程序存储器中定义字数据。该伪指令将字或字表中的数据根据从左到右的顺序依次存放在指定的存储单元中。应特别注意:16位的二进制数,高8位存放在低地址单元,低8位存放在高地址单元。例如:ORG1400HDATA:DW324AH,3CH……汇编后,(1400H)=32H,(1401H)=4AH,(1402H)=00H,(1403H)=3CH。

在定义中使用dup重复操作符13五月2025格式如下:

dup(参数表)

例如:ZERO:DB3DUP(0,0)BUFFER:DB‘AB’,2DUP(‘BA’,3DUP(1))

位地址符号定义伪指令BIT功能是将位地址赋给指定的符号名。其中,位地址表达式可以是绝对地址,也可以是符号地址。STBITP1.0格式为:符号名BIT位地址表达式例如:将P1.0的位地址赋给符号名ST,在其后的编程中就可以用ST来代替P1.0。

六、赋值伪指令EQU符号名EQU表达式功能是将表达式的值或特定的某个汇编符号定义为一个指定的符号名。例如:LENEQU10BLOCKEQU22HMOVR7,#LENMOVR0,#BLOCK命令执行后:R7=?R0=?1022H

汇编语言的语句格式语句行由四个字段组成:[标号:]操作码[操作数][;注释]括号内的部分可以根据实际情况取舍。每个字段之间要用分隔符分隔,可以用作分隔符的符号有空格、冒号、逗号、分号等。如:LOOP:MOVA,#7FH;A←7FH

一、标号标号是语句地址的标志符号,用于引导对该语句的非顺序访问。有关标号的规定为:标号由1~8个ASCII字符组成。第一个字符必须是字母,其余字符可以是字母、数字或其他特定字符;不能使用该汇编语言已经定义了的符号作为标号。如指令助记符、寄存器符号名称等;标号后边必须跟冒号。二、操作码操作码用于规定语句执行的操作。它是汇编语句中唯一不能空缺的部分。它由指令助记符表示。

操作数13五月2025操作数用于给指令的操作提供数据或地址。在一条汇编语句中操作数可能是空缺的,也可能包括一项,还可能包括两项或三项。各操作数间以逗号分隔。操作数字段的内容可能包括以下几种情况:工作寄存器名;特殊功能寄存器名;标号名;常数;符号“$”,表示程序计数器PC的当前值;表达式。

四、注释注释不属于汇编语句的功能部分,它只是对语句的说明。注释字段可

显示全部
相似文档