- 1、本文档共76页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 汇编语言程序设计 4.1 汇编语言程序设计概述 4.2 伪指令 4.3 基本程序结构 4.4 子程序及参数传递 4.5 常用程序举例 4.1 汇编语言程序设计概述 4.1.1 程序设计语言简介 计算机程序设计语言分3类:机器语言、汇编语言和高级语言。 1.机器语言 机器语言是由二进制机器码组成的可直接被计算机识别和执行的语言。由机器语言编写的程序称为机器语言程序。如: 00110000 01000000 01010000 2.汇编语言 汇编语言就是将机器语言用便于记忆和理解的助记符表示的语言,即汇编语言是机器语言的符号表示。用汇编语言编写的程序称汇编语言程序。如上述机器语言程序对应的汇编语言程序为: MOV A,30H ADD A,50H MOV 50H,A 3.高级语言 高级语言是一种面向算法和过程的语言。如FORTAN、PASCAL、C语言等。高级语言采用更接近人的自然语言和习惯的数学表达式及直接命令方法,而不必深入了解计算机内部结构和工作原理,更容易被人们掌握。但用高级语言编写的程序占用资源多,运行速度慢,一般不太适于控制领域。 4.1.2 汇 编 将汇编语言源程序翻译成计算机所能识别的机器语言目标程序的过程称为汇编。汇编可分为手工汇编和机器汇编。 1.手工汇编 手工汇编就是根据指令表,将源程序由指令逐条翻译成指令代码,并把这些代码以字节为单元从起始地址依次排列成目标程序。 2.机器汇编 机器汇编是由计算机的汇编软件将汇编语言汇编源程序自动生成机器语言程序。汇编软件称汇编程序。注意不要混淆汇编程序与汇编语言程序。 机器汇编可由单片机开发系统(如仿真器)上的汇编软件实现,称驻留汇编;也可在其他计算机(如PC)上进行,称交叉汇编。因PC使用方便,我们往往在其上编辑汇编语言程序,然后汇编成目标程序,最后传输给单片机。 4.1.3 汇编语言程序设计一般步骤 1.题意分析确定算法 对需要解决的问题进行认真分析,明确题目要完成的任务,弄清现有的条件和目标要求,然后确定算法。 2.绘制程序流程图 简单的问题可由文字说明,当问题复杂时,将文字说明的步骤以图形符号表示,称流程图。 3.编写源程序 用汇编语言把流程图所表明的步骤描述出来,实现流程图中每一框内的要求,从而编制出一个有序的指令流,即汇编语言源程序。 5.汇编、调试 汇编语言是用指令助记符代替机器码的编程语言,所编写的程序是不能在计算机上直接执行的,因此利用它所编写的汇编语言程序必须转换为单片机能执行的机器码形式的目标程序才能运行,我们把这一过程称为汇编,进行汇编的程序称为汇编程序。 将汇编语言程序汇编成目标程序后,还要进行调试,排除程序中的错误。只有通过上机调试并得出正确结果的程序,才能认为是正确的程序。 4.2 伪指令 伪指令是在机器汇编中告诉汇编程序如何汇编、对汇编过程进行控制的命令。伪指令与汇编语言指令不同,只在源程序中出现,不产生任何机器代码,在程序的运行过程中不起作用,故称为“伪指令”。 5.空间定义伪指令DS 格式为: [标号:]DS 表达式 功能是从标号指定的地址单元开始, 在程序存储器中保留由表达式所指定的个数的存储单元作为备用的空间,并都填以零值。 例4-1:阅读下列程序,体会EQU伪指令的使用。 LEN EQU 10 SUM EQU 21H BLOCK EQU 22H CLR A MOV R7,#LEN MOV R0,#BLOCK LOOP:ADD A,@R0 INC R0 DJNZ R7,LOOP MOV SUM,A END 7.位地址符号定义BIT 格式为: 符号名 BIT 位地址表达式 功能是将位地址赋给指定的符号名。其中,位地址表达式可以是绝对地址,也可以是符号地址。 例如, ST BIT P1.0 将P1.0的位地址赋给符号名ST,在其后的编程中就可以用ST代替P1.0。 4.3 基本程序结构 4.3.1 顺序程序 顺序程序是指无分支、无循环结构的程序,程序的走向是惟一的,程序的执行顺序与书写顺序完全一致。 1.数据传送 例5-2 片内RAM的20H~23H单元中存储的数据。该编写程序所示的数据传送结果。 1.查表程序 例4-3 在片内RAM的20H单元有一位数字(其取值范围为0~9),要求编制一段程序求该数字的ASCII码,并存入片内RAM的21H单
文档评论(0)