网站大量收购独家精品文档,联系QQ:2885784924

单片机原理与应用-4B.pptVIP

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

单片机原理与应用 第四章 汇编语言程序设计知识 汇编语言源程序的编辑和汇编 源程序编辑 在微型计算机上,借助文本编辑软件,编写或修改汇编语言源程序 如Windows 记事本、UltraEDIT 32、EditPlus等等无格式文本编辑软件 源程序的汇编 将汇编语言源程序转换为机器码表示的目标程序的过程 手工汇编 机器汇编 反汇编 手工汇编 通过手工方式查指令编码表,逐个把助记符指令“翻译”成机器码,然后把得到的机器码程序键入单片机,进行调试和运行 手工汇编的缺点: 偏移量的计算容易出错 程序的修改会引起后面指令地址的变化,转移指令的偏移量也要重新计算 第一次汇编 确定地址,翻译成各条机器码,字符标号原样写出 第二次汇编 标号代真,将字符标号用所计算出的具体地址值或偏移量代换 手工汇编示例 机器汇编 机器汇编是在计算机上使用交叉汇编程序进行源程序的汇编 汇编工作由机器自动完成,最后得到以机器码表示的目标程序 机器汇编的两次扫描过程 第一次扫描 检查语法错误,确定符号名字 建立使用的全部符号名字表 每一符号名字后跟一对应值(地址或数) 第二次扫描 是在第一次扫描基础上,将符号地址转换成地址(代真) 利用操作码表将助记符转换成相应的目标码 反汇编 将二进制机器语言程序翻译成汇编语言程序的过程称反汇编 汇编和反汇编的过程如图所示 伪指令 伪指令不是真正的指令 无对应的机器码,在汇编时不产生目标程序 用来对汇编过程进行某种控制,伪指令是告诉汇编程序,如何汇编源程序的指令 ORG 汇编起始命令 格式 ORG 16位地址 功能 规定该伪指令后面程序的汇编地址,即汇编后生成目标程序存放的起始地址。例如: ORG 2000H START:MOV A,#64H ┇ 规定了START的地址是2000H,又规定了汇编后的第一条指令码从2000H开始存放 END 汇编结束指令 格式 END 功能 通知汇编程序结束汇编 在END之后所有的汇编指令均不予以处理 EQU 赋值命令 格式 字符名称 EQU 项(数或汇编符号) 功能 把“项”赋给“字符名称” 注意 字符名称不等于标号(其后没有冒号) 其中的项,可以是数,也可以是汇编符号 EQU赋值过的符号名可以用作数据、代码地址、位地址或一个立即数 可以是8位的,也可以是16位 EQU 赋值命令示例 例1 AA EQU R1 MOV A,AA ;AA代表工作寄存器R1 例2 A10 EQU 10 DELY EQU 07EBH MOV A,A10 ;A10作为片内的一个直接地址 LCALL DELY ;DELY作为一个16位子程序 ; 的入口地址 DATA 数据地址赋值命令 格式 字符名称 DATA 表达式 功能 与EQU类似,但有以下差别 1、EQU定义的字符名必须先定义后使用,而DATA定义的字符名可以后定义先使用 2、用EQU伪指令可以把一个汇编符号赋给一个名字,而DATA只能把数据赋给字符名 3、DATA语句可以把一个表达式的值赋给字符名称,其中的表达式应是可求值的。DATA伪指令在程序中用来定义数据地址 DB 定义字节命令 格式 DB 项或项表 功能 通知汇编程序从当前ROM地址开始,保留一个字或字节串的存储单元,并存入DB后的数据 注意 项或项表可以是一个字节,用逗号隔开的字节串或括在单引号中的ASCII字符串 DB 定义字节命令示例 ORG 2000H DB 0A3H LIST: DB 26H,03H STR: DB ‘ABC’ ┇ 经汇编后 (2000H)=A3H, (2001H)=26H, (2002H)=03H, (2003H)=41H, (2004H)=42H, (2005H)=43H,(41H,42H,43H分别为A,B,C的ASCII码) DW 定义字命令 格式 DW 16位数据项或项表 功能 把DW后的16位数据项或项表从当前地址连续存放。每项数值为16位二进制数,高8位先放,低8位后存放。DW用于定义一个地址表 例如 ORG 1500H TABLE:DW 7234H,8AH,10H ┇ 经汇编后(1500H)=72H,

文档评论(0)

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

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

1亿VIP精品文档

相关文档