【2017年整理】04单片机.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【2017年整理】04单片机

第4章 8051单片机汇编语言程序设计 ;本章学习要点: (1) 计算机编程基本知识; (2) 汇编语言编程特点,编程方法、步骤; (3) 单片机汇编语言程序结构、程序算法流程图设计; (4) 单片机程序设计:算术运算、数值转换、查表及数值处理等程序设计。 单片机编程规范; 伪指令的作用。;4.1 汇编语言程序设计概述 4.1.1 机器语言、汇编语言和高级语言 程序设计的语言分为三种: 1.机器语言 用机器码编程;2.汇编语言 汇编语言特点: 面向机器的语言,编程者对单片机的硬件有相当深入的了解。 助记符指令和机器指令一一对应,用汇编语言编写的程序效率高,占用存储空间小,运行速度快。 用汇编语言能编写出最优化的程序。 ;3.高级语言 不受具体机器的限制,使用了许多数学公式和数学计算上的习惯用语,非常擅长于科学计算。常用的如BASIC、FORTRAN以及C语言等。 高级语言优点:通用性强,直观、易懂、易学,可读性好。 可以用C语言语言来进行单片机的应用程序。 对于程序的空间和时间要求很高的场合,汇编语言仍是必不可缺的。 ;编程应用: C语言和汇编语言混合编程 在很多需要直接控制硬件的应用场合,则更是非用汇编语言不可 使用汇编语言编程,是单片机程序设计的基本功之一;4.1.2 单片机源程序的汇编 把源程序 “翻译”成机器代码的过程称为“汇编”。 汇编可分为手工汇编和机器汇编两类: 1.人工汇编 人工查表翻译指令。 2.机器汇编 用汇编软件把源程序翻译成机器代码。;4.1.3 伪指令 也称为汇编程序控制命令。向汇编程序发出的指示信息,告诉它如何完成汇编工作。 伪指令没有相应的机器代码产生。 常用的伪指令: 1.ORG(ORiGin)汇编起始地址命令 地址必须由小到大排列 地址不能交叉、重叠。; ORG 2500H ┇ ORG 3000H ┇ 2. END(END of assembly)汇编终止命令 标示编译结束,终止源程序的汇编工作。 在整个源程序中只能有一条END命令,且位于程序的最后。 3.DB(Define Byte)定义字节命令 从指定的地址开始,在程序存储器的连续单元中定义字节数据。 ; ORG 2000H DB 30H,40H,24,“C”,“B” 汇编后: (2000H)= 30H (2001H)= 40H (2002H)= 18H(10进制数24) (2003H)= 43H(字符“C”的ASCII码) (2004H)= 42H(字符“B”的ASCII码) DB功能是从指定单元开始定义(存储)若干个字节,10进制数自然转换成16进制数,字母按ASCII码存储。 ;4.DW(Define Word)定义数据字命令 从指定的地址开始,在程序存储器的连续单元中定义16位的数据字。例如: ORG 2000H DW 1246H,7BH,10 汇编后: (2000H)= 12H ;第1个字 (2001H)= 46H (2002H)= 00H ;第2个字 (2003H)= 7BH (2004H)= 00H ;第3个字(2005H)=0AH (2005H)= 0AH ;5.EQU(EQUate)赋值命令 用于给字符串定义一个名字。赋值以后,其标号值在整个程序有效。例如: TEST EQU 2000H ;定义字符串TEST=2000H N EQU 10H ;定义常数N=10H 表示TEST=2000H,在汇编时,凡是遇到标号TEST时,均以2000H来代替。 6.BIT 位地址赋值命令 给可寻址的位单元起一个名字。 例如:JK1 BIT P1.0;7.DATA:把一个数或片内RAM单元赋值给“字符名称” 例如:SEN DATA 30H 同一个地址可以有多个名字 8.XDATA:把一个数或片外RAM单元赋值给“字符名称” 例如:ADIN XDATA 1FF0H 名字应该是字母开头的字母数字串;4.1.4 汇编程序分段格式 汇编语言的四分段格式如下: 标号字段 操作码字段 操作数字段 注释字段 START: MOV A,#00H ;0→A MOV R1,#10 ;10→R1 MOV R2, ;3→R2 LOOP: ADD A,R2 ;(A)+(R2)→A DJNZ R1,

文档评论(0)

liangyuehong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档