- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章MCS-51汇编语言程序设计;4.1 汇编语言概述;2.汇编语言;3.高级语言;4.1.2 单片机汇编语言源程序的编辑和汇编;图4-1 汇编过程;汇编语言源程序的汇编过程分为手工汇编和机器汇编。
所谓手工汇编,即采用人工查指令表的方法将汇编指令翻译成相应机器代码。通常源程序的人工汇编需要两次才能完成,第一次汇编查找每条指令的机器代码,第二次汇编完成地址偏移量的计算。由于手工汇编需要计算和查找,繁琐而且容易出错,而且程序修改时可能会引起指令的地址变化,转移指令的偏移量也随之改变,需要重新计算,所以手工汇编主要应用于设计短小程序或调试程序的场合。
所谓机器汇编,即采用汇编程序对源程序进行自动汇编,由于单片机软硬件资源的限制,该过程通常借助于PC系统机实现,象这种借助于一种计算机而为另一种计算机产生目标代码的汇编方式又称为交叉汇编。交叉汇编的原理类似于手工汇编,在汇编程序中通常存入了两张表,即MCS-51单片机的指令代码表和伪指令表。汇编程序通常通过两次扫描完成汇编,第一次扫描查找源程序中每条指令的机器代码,第二次扫描完成地址偏移量的计算,汇编后生成目标文件和列表文件。这是目前应用较广的汇编方法。;纵上,汇编的主要功能为:
(1)确定程序中每条汇编语言指令的指令机器码。
(2)确定每条指令在程序存储器中的存放地址。
(3)提供语法、编辑等方面的错误信息,但不能提供程序的逻辑错误。
(4)产生目标执行文件(*.OBJ/*.HEX)和列表文件(*.LST)。;4.1.3 MCS-51汇编语言的伪指令;2.DB(Define,Byte),——定义字节型常数指令
指令的功能为从指定的存储单元开始,定义或存储一个或多个字节数据。指令格式为:
[标号:]DB,字节常数表
例如,,,,,,,,ORG,1000H
TAB:,,,DB,,0A3H,18,‘AB’
汇编结果为:(1000H)=A3H,,,,(1001H)=12H,,,,(1003H)=41H,,,(1004H)=42H
3.DW(Define,Word)——定义字型常数指令
指令的功能为从指定的存储单元开始,定义或存储一个或多个字数据。通常用于在程序中定义地址表。指令格式为:
[标号:]DW,字常数表
一个字数据占用两个存储单元,存放时高字节存入低??地址,低字节存入高位地址。
例如, ,,ORG,1000H
TAB:DW,,1234H,18,00A3H
汇编结果:(1000H)=12H,,(1001H)=34H
,,,,,,,,,,,,,,,,,,(1002H)=00H,,(1003H)=12H
,, ,,,,,(1004H)=00H,,(1005H)=A3H;4.,EQU(Equate)——等值指令
指令功能是把操作数段中的地址或数据赋值给标号。赋值后的标号可在整个源程序中使用。指令格式如下:
标号,,,EQU,,,数据或汇编符号
注意,与程序中一般意义的标号不同的是,这里的标号后不能加“:”。
例如,, ADDR,, EQU,,1000H,;给ADDR赋值1000H
,DAT1,, EQU,,0AH,,,;给DAT1赋值0AH
,,,,,,, …
MAIN: MOV,,DPTR,#ADDR;DPTR←1000H
,,,,, MOV,,A,DAT1,,,,;A←(0AH)
上例中,ADDR被赋值以后,在程序中作为立即数使用,而DAT1赋值后被当作直接地址使用。需要说明的是,使用EQU指令时必须先赋值后使用。;5.DS(Define,Store)——定义存储区指令
指令功能为从指定的单元地址开始,保留一定数量的存储单元,以备使用。指令格式如下:
[标号:]DS,,表达式
其中,表达式指定保留的内存单元个数。
例如,ORG,1000H
,,,,,,,,,,,DS,,10
TAB:,DB,,10H
,,,,,,…
汇编结果:从1000H地址处开始,保留10个字节单元。(100AH)=10H。
6.BIT——位地址符号指令
指令功能为将位地址赋值给指定的符号名称,通常用于位符号地址的定义。指令功能如下:
字符名称 BIT ,位地址
例如,X1,BIT,P1.0
汇编结果为将位地址P1.0赋给变量X1,即在程序中便可使用X1代替位地址P1.0。;7.DATA——数据地址赋值指令
指令功能为将数据地址或指令代码地址赋值给所指定的标号。通常在程序中用于定义数据地址。指令格式如下:
标号:DATA,表达式
例如,AA:DATA,2000H
汇编结果为:AA=2000H。
注意,DATA与EQU的区别在于:EQU定义的标识符在汇编时不在符号表中登记,因此必须先定义后使用,而DATA定义的标识符汇编时在符号表中登记,所以可以先使用后定义。
8.,END,——汇编语言源程序结束指令
您可能关注的文档
- 环境影响评价报告公示:有机玻璃板塑胶板亚克力板塑胶制品生环评报告.doc
- 深入开展地方机构和人员编制核查 全面推行机构编制实名制管理.doc
- 思想品德:第十课第3课时未来道路我选择配套课件(人教版九年级).ppt
- 青州市秋收家庭农场建设项目可行性研究报告.doc
- 陕西精工钢结构有限责任公司钢结构.doc
- 杂文_小学教育_人教版二年级语文上册单元测试(题库)(82页).doc
- SMR bar手机成品检验判定标准.doc
- 钢筋混凝土简支梁的正截面受弯承载力试验报告.ppt
- 江西省上饶市上饶中学20142015学年高一下学期期中考试物理试题(零、奥赛、实验).doc
- 最新电大考试资料2015电大文秘管理与应用写作(课堂笔记精髓).doc
- 广东省东莞市2024-2025学年八年级上学期生物期中试题(解析版).pdf
- 非遗剪纸文创产品开发经理岗位招聘考试试卷及答案.doc
- 广东省东莞市2024-2025学年高二上学期期末教学质量检查数学试题.pdf
- 体育安全理论课件图片素材.ppt
- 3.1 公民基本权利 课件-2025-2026学年道德与法治八年级下册 统编版 .pptx
- 广东省潮州市湘桥区城南实验中学等校2024-2025学年八年级上学期期中地理试题(解析版).pdf
- 大数据运维工程师岗位招聘考试试卷及答案.doc
- 广东省深圳市福田区八校2026届数学八年级第一学期期末教学质量检测模拟试题含解析.doc
- 广东省潮州市湘桥区城基初级中学2024-2025学年八年级上学期11月期中考试数学试题(解析版).pdf
- 广东省潮州市湘桥区城西中学2024-2025学年八年级上学期期中地理试题(解析版).pdf
最近下载
- 人教版小学数学四年级上册期末测试卷及答案1套.docx VIP
- 高中地理必修一《第二章 地球上的大气》知识清单.docx VIP
- 建筑节能专项施工方案.doc VIP
- IG化学真题六试题.pdf VIP
- 培训教育-全面贯彻党的教育方针.docx VIP
- 2025《水下清淤机器人的结构方案设计》13000字(论文).docx
- 2026华电新能源集团股份有限公司面向系统内招聘10人模拟试卷(浓缩300题)附答案.docx VIP
- 统编版语文六年级上册易错专项特训修改病句-(含答案).pdf VIP
- 劳务承包合同范本简单.doc VIP
- 人教版小学数学四年级上册期末测试卷及答案1套.docx VIP
原创力文档


文档评论(0)