第4章 单片机语言程序设计解说.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 单片机汇编语言程序设计 4.1 汇编语言程序设计的基础知识 4.2 汇编程序设计方法 4.3 综合编程举例 4.1 汇编语言程序设计的基础知识 4.1.1 汇编语言的语句格式 MCS-51单片机汇编语言的语句格式表示如下: [标号:] <操作码> [操作数] [;注释] 标号实际上代表的是地址,后边必须跟以冒号。由1~8个ASCII字符组成,必须以字母开头。不能使用汇编语言已经定义了的符号作为标号。如指令助记符、伪指令助记符以及寄存器名等。 以下标号错误:“1TAB:”(以数字开头),“START”(无冒号),“TAB+5:”(“+”号不能出现在标号中),“MOV:”(指令助记符) 4.1.2 伪指令 计算机只认识机器指令(二进制编码),因此应用系统中必须把汇编语言源程序翻译成机器语言程序,计算机才能执行,这个翻译过程称为汇编。 伪指令属于指令系统之外,是程序员发给汇编程序的命令。 汇编程序在这些命令的指导下将汇编语言程序进行汇编,生成机器码。 而伪指令并不被译成机器码,它对程序本身的算法和流程控制没有作用,只是用来对汇编过程进行某种控制或提供某些汇编信息。 4.1.2 伪指令 1.设置起始地址伪指令 ORG 格式: [标号:] ORG nn 该指令总是出现在每段源程序或数据块的开始。 汇编时,nn确定了后面第一条指令或数据的地址,此后的源程序或数据块就依次连续存放在以后的地址内,直到遇到另一个ORG指令为止。如: 4.1.2 伪指令 ORG 100H START: MOV A, #30H MOV B, #50H 该伪指令规定第一条指令从地址100H单元开始存放,即标号START的值为100H。 若省略ORG,则表示该程序段从地址为0000H单元开始存放。 2.定义字节伪指令 DB 格式:[标号:] DB X1, X2,…,Xn 功能:从标号指定的地址单元开始,将8位二进制数据按顺序依次存入形成数据表。数据表可以是一个或多个字节数据、字符串或表达式,各项数据用“,”分隔,一个数据项占一个字节单元。 ORG 1000H TAB:DB -2,-4,100,30H,‘A’, ‘C’ 用单引号括起来的字符存其ASCII码,负数存其补码。 3.字定义伪指令 DW 格式;[标号:] DW Y1, Y2,…,Yn 功能:与DB相似。从指定地址开始存放的是指令中的16位数据 存储时高8位先存,低8位后存。 ORG 1400H DATA:DW 324AH,3CH 4.赋值伪指令 EQU 格式:符号名 EQU 表达式 功能:使指令中的符号名等价于表达式。 由EQU伪指令定义过的符号名可以在本程序段的任意位置上引用。 例如:DBUF EQU 30H 使用上述伪指令后,则符号DBUF就等价于30H。在程序中对DBUF进行赋值,实际上就是对内部RAM的30H赋一个值。 4.赋值伪指令 EQU 使用赋值伪指令可给程序的编制、调试、修改带来方便。如果在程序中要多次使用到某一地址,可以用EQU伪指令将地址赋予一个字符名称,一旦需要对操作地址进行变动,只要改变EQU命令后面的数字即可,而不需要对程序中涉及到该地址的所有指令逐句进行修改。 另外,如果地址有特定的用途,用有意义的符号名代替也可以增加程序的可读性。 在同一个源程序中,同一个符号只能赋值一次。 5.位定义伪指令 bit 格式:符号名 BIT 位地址表达式 功能:与EQU相似,对位地址进行值赋。 HIGH bit 20H 使用上述伪指令后,则HIGH等价于位地址20H,在其后的编程中可以用HIGH代替20H使用。 6.汇编结束伪指令 END 格式:[标号:] END 功能:结束汇编。汇编程序遇到END后就停止汇编,对END以后的语句不予处理,故END应放在程序的结束处。 4.2 汇编程序设计方法 4.2.1 程序设计步骤 用汇编语言编写一个程序的过程可分为以下五个步骤: (1)分析问题,确定算法 解决问题之前,首先要明确所要解决的问题和要达到的目的、技术指标等;然后根据实际问题的要求、给出的条件及特点,找出规律性,最后确定所采用的计算公式和计算方法,这就是一般所说的算法。算法是进行程序设计的思想,它决定了程序的正确性和程序的指令。 (2)根据算法制定程序流程图。 流程图可以直观、清晰的体现程序的设计思路,特别的对于复杂的问题,更需要程序流程的指引来完成。绘制流程图所用的工具如图4-1所示。 (3)确定数据格式,分配系统资源。也就是确定程序与数据的存放地址。 (4)

文档评论(0)

yy556911 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档