- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机 第四章_mech_08
第 四 章 汇编语言程序设计简介 ● 教学目标 介绍单片机汇编程序设计方法 介绍单片机汇编程序常用结构及设计方法 ● 学习要求 熟悉单片机编程的步骤、方法和技巧 掌握单片机汇编程序的常用结构及设计方法 掌握典型汇编语言应用程序的编制 单片机系统设计由硬件设计和软件设计两部分组成: 后者就是设计程序、编制表格,以指挥单片机完成用户交付的任务。 本章介绍MCS-51单片机汇编语言程序设计的基本步骤、方法和技巧。 复 习 程序设计语言: 机器语言:能为计算机直接识别和执行的机器级语言。采用二进制形式。不易为人们识别读写。 汇编语言:是人们用助记符来替代机器语言进行程序设计的语言,其每条语句对应相应的机器指令。占用的内存小、执行速度快。汇编语言程序不具备高级语言的通用性。 高级语言:是面向过程和问题独立于机器的通用程序设计语言。 唯有高级语言是可以脱离硬件进行编程. 汇编语言的格式: [标号:] 操作码 [操作数] [;注释] 标号:用于存放语句的标号,以指明标号所在指令操作码字节在内存的地址。又称为符号地址,在汇编时,将该地址赋值给标号。 操作码:指明指令的功能。 操作数:说明参与操作的数据或数据所存放的地址。 注释:是对指令或程序段的简要说明。 学 习 内 容 4.1 伪 指 令 4.2 汇编语言程序设计 4.1伪指令 pseudo-instruction 用助记符编写的汇编语言程序必须用汇编程序或编译程序汇编成机器码. 汇编程序在汇编过程中,必须提供一些专门的指令,这些指令在汇编时并不产生目标代码。即:不会在汇编时产生可供机器直接执行的机器码,可以用来对机器的汇编过程进行某种控制,令其进行一些特殊操作。 汇编过程示意图 1. 汇编起始伪指令 ORG 该指令的作用是指明后面的程序或数据块的起始地址,它总是出现在每段源程序或数据块的开始。其指令格式为: ORG nn 式中,nn为16位地址,汇编时nn确定了此语句后面第一条指令或第一个数据的地址,此后的源程序或数据块就依次连续存放在以后的地址内,直到遇到另一个ORG指令为止。 例4a-1: ORG 2000H START: MOV SP, #60H MOV R0, #2FH ┇ END ORG伪指令规定了START为2000H,第一条指令及其后续指令汇编后的机器码便从2000H开始依次存放。 即 存储器地址 目标程序 2000H 75 81 60 2003H 78 2F 2. 结束汇编伪指令 END END伪指令常用于汇编语言源程序末尾,用来指示源程序到此全部结束。其格式为: [标号:] END 在上述格式中,标号段通常省略。在机器汇编时,当汇编程序检测到该语句时,它就确认汇编语言源程序已经结束,对END后面指令都不予汇编。因此一个源程序只能有一个END语句,而且必须放在整个程序末尾。 例如:上述程序4-1中的END语句。 3. 赋值伪指令 EQU EQU伪指令称为赋值(Equate)伪指令,用于给它左边的“字符名称”赋值。 EQU伪指令格式为: 字符名称 EQU 数据或汇编符 在机器汇编时,EQU伪指令为汇编程序识别后,汇编程序自动把EQU右边的“数据或汇编符”赋给左边的“字符名称”。这里,“字符名称”不是标号,故它和EQU之间不能用冒号“:”来做分界符。一旦“字符名称”被赋值,它就可以在程序中作为一个数据或地址使用。因此,“字符名称”所赋的值可以是一个8位二进制数或地址,也可以是一个16位二进制数或地址。 EQU伪指令中的“字符名称”必须先赋值后使用,故该语句通常放在源程序的开头。 例4a-2 :7FH、71H单元中存放着两个常数,编写程序使其相乘。 ABC1 EQU 7FH ABC2 EQU 71H MOV A, ABC1 MOV B, ABC2 MUL AB 4. 定义字节伪指令 DB DB (Define Byte)可用来为汇编语言源程序在内的某区域中定义一个或一串字节。其格式为: [标号:] DB 8位二进制项或项表 其中,标号段为任选项。DB伪指令能把它右边的“项或项表”中的数据依次存放到以左边标号为起始的存储单元中,“项或项表”中的数可以是一个8位二进制数或用逗号分开的一串8位二进制数,8伪二进制数也可以采用二进制、十进制、十六进制和ASCII码等多种表示形式。 例4a-3:
您可能关注的文档
最近下载
- 2025年新能源发电行业分析报告及未来五到十年行业发展趋势报告.docx
- 未成年人出游免责协议书5篇.docx VIP
- 八年级体育教育教学计划..doc VIP
- 劳动教育(微课版):认识劳动PPT教学课件.pptx VIP
- 特高压输电系统温室气体减排方法学.PDF VIP
- (高清版)DGJ 08-2173-2016 展览建筑及布展设计防火规程.pdf VIP
- 高中英语【拓展阅读】Before You Feel Pressure 双语课件.pptx VIP
- 2025年新人教版数学三年级上册全册教案.pdf
- 社会心理学:文化心理学完整版.pptx VIP
- 卫生部手术分级目录(2025年1月份修订).doc VIP
文档评论(0)