- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片微型计算机与接口技术(第4版) 第3章 51单片机汇编语言程序设计 3.1概述 单片机编程语言:汇编语言,高级语言 汇编语言:面向机器(学习对象) 高级语言/汇编语言,都要转换成目标程序(机器语言)? 汇编语言程序设计步骤 1.分析任务确定方案 2.划分模块,确定关系 3.画程序流程图 4.编制源程序 伪指令举例 MATH EQU 03H ORG 0030H MAIN: CLR C LOOP: MOV A , @R0 MOV R1, #MATH ;相当于 MOV R1,#03H ……………………….. ORG 1100H DB 01H , 04H, 09H , 05H END 分析: 将PR0—PRn入口地址列在表格中,每一项占两个单元,PRn在表中的偏移量为2n,因此将R3的内容乘2即得PRn在表中的偏移地址,从偏移地址2n和2n+1两个单元分别取出PRn的高八位地址和低八位地址送DPTR寄存器,用JMP @A+DPTR指令(A先清零)即转移到PRn入口执行。 3.8 小 结 1、程序设计的关键在于指令熟悉和算法(思路)正确、清晰,对复杂的程序应先画出流程图。只有多做练习多上机调试,熟能生巧,才能编出高质量的程序。 2、伪指令是非执行指令,提供汇编程序以汇编信息,应正确使用。 3、本章应掌握顺序程序、分支程序、循环程序、子程序等各类程序的设计方法,并能熟练应用查表技术简化程序的设计。 作业 3.1? 3.3? 3.5? 3.11? 3.13 * 第 3 章 单片机汇编语言程序设计 学习内容 伪指令 顺序程序设计 分支程序设计 循环程序设计 位操作程序设计 子程序 5.汇编,连接,生成目标文件 6.仿真调试修改 7.烧录至单片机 开始 END Y N ? 3.2 伪指令 (指示性语句) 伪指令:无对应的机器码,帮助进行机器汇编的 指示性指令 (非指令性语句) 几种常用的伪指令: 1.?起始指令 ORG nn (16位地址或标号) 作用:指示程序或数据块以nn为起始地址连续存放在ROM中 例如 ORG 1000H 2.字节定义 〔标号:〕 DB (字节常数,或字符或表达式) 作用:指示以标号为起始地址的ROM中存放的数为字节数据 例如 LN:DB 32, ‘C’, 32H ;LN开始的单元依次存放 20H,43H,32H 3.字定义 〔标号:〕 DW (字常数或表达式) 作用:指示以标号为起始地址的ROM中存放的数为字数据 例如 MN:DW 1234H,08H ;MN开始的单元中顺序存放 12H,34H,00H,08H 4.保留字节 标号: DS (数值表达式) 作用:指示在ROM中保留以标号为起始地址的若干字节单元 例 L1:DS 32 5.等值指令 标号 EQU (数值表达式) 作用:表示EQU两边的量等值 例 ABC EQU 38H ;程序中凡出现ABC的地方汇编将38H代之 6.位定义 标号 BIT(位地址) 作用:同EQU指令,不过定义的是位操作地址 例 AIC BIT P1.1 7.汇编结束 〔标号〕 END 作用:指示源程序段结束 (不再汇编) 注:其他伪指令见表3-1(P48) ROM中 地址 数据 1100 01 1101 04 1102 09 1103 05 汇编语言格式: 地址 机器码 源程序 注释 ORG 0000
文档评论(0)