第4章 汇编程序的设计与调试【单片机课件】.pptVIP

第4章 汇编程序的设计与调试【单片机课件】.ppt

  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文档。上传文档
查看更多
程序设计语言 1. 机器语言(Machine Language) 这是一种用二进制代码“0”和“1”表示指令和数据的程序设计语言。计算机只能识别二进制代码,这种语言是能被计算机直接识别和执行的机器级语言。 特点:机器语言能够被计算机立即识别并加以执行,具有执行速度快、占用内存少等优点。但对于使用者来说,用机器语言编写程序具有编写难、识别难、记忆难、查错难、交流难等缺点。 2. 汇编语言(Assembly Language) 汇编语言是一种用助记符来表示的面向机器的程序设计语言。不同的机器所使用的汇编语言一般是不同的。但计算机的CPU不能直接识别汇编语言,所以计算机不能立即执行汇编语言程序。用汇编语言编写的源程序,在由计算机执行之前,必须将它翻译成机器语言程序。 特点:这种语言弥补了机器语言的不足,用汇编语言编写程序比用机器语言方便、直观、易懂、易用、易记。可以编写出结构紧凑、运行时间精确的程序。所以,这种语言非常适合于实时控制的需要。 3. 高级语言(High-Level Language) 高级语言是面向过程并能独立于计算机硬件结构的通用程序设计语言,是一种接近人类语言和数学表达式的计算机语言。比如:BASIC、FORTRAN、COBOL、PASCAL、C语言等。高级语言不能被计算机直接识别和执行,需要用编译程序或解释程序将高级语言编写的源程序翻译为机器语言。 特点:它比汇编语言易学、易懂,具有通用性强、易于移植等优点。高级语言的语句功能强,它的一条语句往往相当于许多条指令,因而用于翻译的程序要占用较多的存储空间,而且执行时间长,且不易精确掌握,故在高速实时控制中一般是不适用的。 基本概念 在目前单片机的开发应用中,经常采用C51语言和汇编语言共同编写程序。要想很好地掌握和应用单片机首先要掌握汇编语言。 汇编语言是面向机器的程序设计语言,对于CPU不同的单片机,其汇编语言一般是不同的。用汇编语言编写的程序称为汇编语言源程序 。 汇编语言源程序是由汇编语言语句构成的。汇编语言语句可分为两大类:指令性语句和指示性语句。 指令性语句是由指令组成的由CPU执行的语句, 指示性语句是由伪指令组成的,它不被CPU执行,用来告诉汇编程序如何对程序进行汇编的指令;由于它不能生成机器语言,故又被称为伪指令语句。 1.指令性语句格式 [标号:] 操作码助记符 [目的操作数] [,源操作数] [;注释] 每条汇编语句一般由若干部分组成,每一部分称为一个字段。 每个字段之间应该严格地用分界符加以分隔。 分界符包括冒号、空格符、逗号、分号等。标号段与操作码之间要加冒号“:”;操作码与操作数之间要用空格相隔;各操作数之间要用逗号“,”相隔;操作数与注释段之间要加分号“;”相隔。 2.伪指令的指示性语句格式 [标号:] 伪操作 操作数[,操作数,......] [;注释] 伪指令不是真正的指令,是在汇编时供汇编程序识别的指令,又称为汇编指令。 它不属于指令系统,也无对应的机器码,只是用来对汇编过程进行某种控制。利用伪指令告诉汇编程序如何进行汇编,为编程提供方便。 常用伪指令 定位伪指令ORG 定义字节数据伪指令DB 定义字数据伪指令DW 定义空间伪指令DS 符号定义伪指令EQU或= 定义标号伪指令DL 数据赋值伪指令DATA 数据地址赋值伪指令XDATA 汇编结束伪指令END ①ORG(Origin)汇编起始指令 ORG是程序汇编起始地址定位伪指令, 功能:是规定对汇编语言源程序进行汇编时,目的程序在程序存储器中存放的起始地址。 格式:[标号:] ORG 16位地址或标号 注意:在一个源程序中,可多次使用ORG指令,以规定不同程序段的起始位置,地址应从小到大顺序排列,不允许重叠。 例如: ORG 0000H START:SJMP MAIN … ORG 0030H MAIN: MOV SP,# 30H … ②END(End)汇编结束指令 END是汇编语言程序结束伪指令。 功能:是表示程序已结束,汇编程序对END后面的指令不再汇编。 格式:[标号:] END 注意:在一个源程序中,只能有一条END指令,而且必须放在整个程序的末尾。 ③EQU(Equate)赋值指令 EQU是赋值(也称等值)伪指令 。 功能:把操作数段中的数据或地址赋值给标号字段中的字符名称 。 格式:字符名称 EQU 数值或汇编符号 注意:字符名称必须先赋值后使用,故EQU指令通常放在源程序 的开头。 EQU可定义8位或16位的数据或地址, 例如: ORG 8500H

文档评论(0)

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

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

1亿VIP精品文档

相关文档