第4章mcs-51汇编语言程昊序设计.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章mcs-51汇编语言程昊序设计

4.1 程序设计方法 4.2 汇编语言程序设计方法 4.3 单片机汇编程序结构 4.4 综合编程举例 4.1 程序设计方法 程序设计就是用计算机所能接受的语言把解决问题的步骤描述出来,也就是编制程序。 常用的MCS-51程序设计语言有MCS-51汇编语言和MBASIC51、C51、PLM51等高级语言。 本节介绍MCS-51汇编语言的程序设计方法。 4.1.1 程序设计步骤 用汇编语言编写一个程序的过程可分为以下几个步骤。 (1) 根据所要解决的问题进行分析,明确问题的要求。 (2) 确定算法。根据实际问题的要求和指令系统的特点,决定所采用的计算公式和计算方法,也就是一般所说的算法。 (3) 制定程序框图。根据所选的算法,制定出运算步骤和顺序,把运算过程画成程序框图。 (4) 确定数据格式,分配工作单元。 (5) 根据程序框图,编写程序。 (6) 程序测试。利用单片机仿真器结合单片机目标系统,对程序进行测试。 (7) 程序优化。程序优化以缩短程序量、减少运算时间和节省工作单元。 4.1.2 伪指令 一般的汇编语言程序中也包括一些伪指令,但它并不被译成机器码,只是影响到汇编过程。它是用来对汇编过程进行说明和指导的一组命令。每种汇编程序都定义若干条伪指令,不同版本的汇编程序伪指令的符号和含义可能有差异,但基本用法是相似的。 下面介绍一些常用的伪指令。 1. 定位伪指令 ORG m m为十进制或十六进制数。m指出在该伪指令后的指令的汇编地址,即生成的机器指令的起始存储器地址。在一个汇编语言源程序中允许使用多条定位伪指令,但其值应和前面生成的机器指令存放地址不重叠,如: ORG 100H START: MOV A, #30H MOV B, #50H 2. 定义字节伪指令 DB X1, X2,…,Xn Xi为单字节数据,它可以是十进制或十六进制数,也可以是一个表达式。Xi也可以是由两个单引号括起来的一个字符串,这时Xi定义的字节长度等于字符串的长度,每一个字符为一个ASCII码。 该伪指令把X1,X2,…,Xn存入目标程序存储器,通常用于定义一个常数表,如: BTAB:DB 00H, 01H, 02H, 03H, 04H 3. 字定义伪指令 DW Y1, Y2,…,Yn Yi为双字节数据,它可以是十进制或十六进制数,也可以是一个表达式。 该伪指令把Y1,Y2,…,Yn存入目标程序存储器,经常用于定义一个地址表,如: WTAB:DW 1000H, 2000H, 3000H, 7890H, 4567H 4. 字或字节赋值伪指令 标号 EQU m 该伪指令把值m赋给前面的标号,在程序中标号和m是等价的,如: DBUF EQU 30H 则符号DBUF等价于30H。在程序中可对DBUF进行赋值,实际上是对内部RAM的30H写一个值。 5. 位赋值伪指令 标号 bit n 该伪指令把值n赋给前面的标号,n一般指位地址,在程序中标号和n是等价的。如: HIGH bit 20H 则HIGH等价于位地址20H((22H).0),1→HIGH等价于1→20H等价于1→(22H).0。 6. 汇编结束伪指令 END 该伪指令指出结束汇编,即使后面还有指令,汇编程序也不作处理。 7. 标号和注释 汇编程序允许用户在源程序中使用标号和注释。标号加在指令之前,标号必须以字母开始,后跟1~8个字母或数字,并以冒号“:”结尾,用户定义的标号不能和汇编保留符号(包括指令操作码助记符以及寄存器名等)重复。标号的值是它后面的指令存储地址。注释是用户对某一条指令或某一段程序的功能说明,它必须以分号“;”开始,如果一行写不下,可以另起一行,但都必须以分号“;”开始。下面为含有标号和注释的程序行格式。 标号: 操作码(空格)[操作数1], [操作数2], [操作数3];注释 4.1.3 汇编语言源程序的编程和汇编 1. 编程 汇编语言编程时大多在PC中用文本编辑器(如EDIT)编写,目前几乎所有的单片机仿真器所配的软件均有文本编辑器。如南京伟福WAVE 6000 for Windows、Keil μ Vision2等软件。只要运行软件后进入程序编辑状态即可编写程序。 2. 汇编 汇编语言必须经过机器汇编或人工汇编才能得到相应的机器程序,即目标程序,以供单片机识别和执行。由于人工汇编工作量大,容易出错,现已不用。机器汇编一般是在PC上利用一些汇编软件进行。目前几乎所有的单片机仿真器配的开发软件都有汇编程序,在源程序编写完成后使用汇编功能菜单即可进行对源程序汇编。在汇编时若发现源程序有语法错误或跳转超出范围等情况,系统会将错误显示给用户。用户

文档评论(0)

186****0772 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档