MCS-51汇编语言程序设计ppt课件.ppt

MCS-51汇编语言程序设计ppt课件.ppt

ID:58882044

大小:751.50 KB

页数:68页

时间:2020-09-30

MCS-51汇编语言程序设计ppt课件.ppt_第1页
MCS-51汇编语言程序设计ppt课件.ppt_第2页
MCS-51汇编语言程序设计ppt课件.ppt_第3页
MCS-51汇编语言程序设计ppt课件.ppt_第4页
MCS-51汇编语言程序设计ppt课件.ppt_第5页
资源描述:

《MCS-51汇编语言程序设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章51单片机汇编语言程序设计5.1汇编语言源程序的格式5.2伪指令5.3汇编语言源程序的人工汇编5.4MCS-51汇编语言程序的基本结构与设计举例1引言计算机能够直接执行的是:0和1组成的机器码指令程序。上一章在讲解指令时的程序,其特点是:.1、指令是采用助记符,而不是用机器码表示;2、地址是采用标号地址(符号地址),而不是真正的实际地址。汇编语言源程序:用助记符和标号地址编写的程序。汇编语言面向机器,要经过汇编。高级语言面向算法、过程、对象,类似自然语言,可移植性好,须经解释或翻译后才能被执行。2汇编汇编机器语言目标程序汇编语言源程序汇编程序汇编:将汇编语言源程序转换成机器语言目标程序的

2、过程称为汇编。(可人工汇编或机器汇编)汇编程序:能将汇编语言源程序转换成机器语言目标程序的软件称为汇编程序。(机器汇编)35.1汇编语言源程序的格式MCS-51的汇编语言的四分段格式如下:标号:操作码操作数;注释规则:(1)标号字段和操作字码段之间要有冒号“:”相隔;(2)操作码字段和操作数字段间的分界符是空格;(3)多操作数之间用逗号相隔;(4)操作数字段和注释字段之间的分界符用分号“;”相隔。操作码字段为必选项,其余各段为任选项。例如:START:MOVA,#00H;0→ANOP4基本语法规则:1.标号是语句所在地址的标志符号。命名规范如下:(1)由1~8个字母、数字与下划线“-”组成;(

3、2)首字符为字母;(3)同一标号在一个程序中只能定义一次;(4)绝对不允许把指令的保留字、寄存器及伪指令字符作为语句的标号。2.操作码字段是汇编语言指令中唯一不能空缺的部分。汇编程序就是根据这一字段来生成机器代码的。操作码段也可以是伪指令的助记符,在汇编时起作用。5基本语法规则23.操作数可以采用字母或数字等多种表示形式。操作数是立即数,可用二进制、十进制和十六进制形式:十六进制,后缀“H”。二进制,后缀“B”。十进制,后缀“D”,也可省略。若十六进制的操作数以字符A~F中的某个开头时,则需在它前面加一个“0”,以便在汇编时把它和字符A~F区别开来。注意数字前加“#”。带加、减运算符的表达式:

4、例如:MOVA,#100-16基本语法规则3对于直接地址direct,有多种选择:(1)直接数据地址(各种进制),如MOVA、30H等;(2)标号地址,如MOVA,SUM等,SUM应该在程序中某处加以定义;(3)带有加减的表达式,设SUM为已定义的标号地址,如MOVA,SUM十13;(4)特殊功能寄存器名,如MOVA,P2等。4、 注释段:注释指令或程序的含义,便于阅读程序、维护程序。必须用“;”隔开,续行时,也必须以“;”开头。7基本语法规则4美元符号$的使用用于表示该转移指令操作码所在的地址。例如,如下指令:JNBF0,$与如下指令是等价的:HERE:JNBF0,HERE85.2伪指令只有

5、在汇编前的源程序中才有伪指令。经过汇编得到目标程序(机器代码)后,伪指令已无存在的必要,所以“伪”体现在汇编时,伪指令没有相应的机器代码产生。伪指令是告诉汇编程序,如何汇编源程序的指令。不属于指令系统中的指令。用来对汇编过程进行某种控制,或者对符号、标号赋值。不同版本的汇编语言,基本用法类似,但稍有不同。9伪指令(1)起始地址伪指令功能:用于设定目标程序段或数据块的起始地址。注意:地址从小到大,且不能重叠。它放在一段源程序(主程序、子程序)或数据块的前面,说明紧跟在其后的程序段或数据块的起始地址就是伪指令中的16位绝对地址或用标号、表达式表示的地址。一般默认从0000开始。例如:ORG2000

6、HSTART:MOVA,#7FH…它表明标号为START的目标程序是从2000H单元开始存放的。格式:[标号:]ORG16位地址10(2)定义字节伪指令DB格式:[标号:]DB8位数据表功能:用于从指定的地址开始,在程序存储器的连续单元中定义字节数据。<8位数表>可以是一字节常数或字符,或用逗号分开的字节串,或用引号括起来的字符串。例如:ORG2000HTAB1:DB30H,8AH,7FH,73DB‘5’,‘a’,‘BCD’30H2008H8AH2007H7FH2006H49H2005H35H2004H61H2003H42H2002H43H2001H44H2000H由于ORG2000H,所以

7、TAB1的地址为2000H,因此以上伪指令经汇编以后,将对2000H开始的若干内存单元赋值。11(3)定义数据字伪指令DW格式:[标号:]DW16位数据表功能:用于从指定地址开始,在程序存储器的连续单元中定义16位的数据字。存放时,数据字的高8位在前(低地址),低8位在后(高地址)。例如,DW“AA”;存入41H,41HDW“A”;存入00H,41HDW“ABC”;超过两字节,不合法DW100H,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。