单片机基础教程33

单片机基础教程33

ID:44361199

大小:283.50 KB

页数:18页

时间:2019-10-21

单片机基础教程33_第1页
单片机基础教程33_第2页
单片机基础教程33_第3页
单片机基础教程33_第4页
单片机基础教程33_第5页
资源描述:

《单片机基础教程33》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章3-----1wyx用汇编语言编写程序,一般可分为以下几个步骤:1)分析题意,确定算法;2)设计程序流程图;3)确定数据结构:合理地选择和分配内存单元以及工作寄存器;4)编写源程序:5)上机调试程序。第三节程序设计方法MCS-51单片机汇编语言,包含两类不同性质的指令。(1)基本指令:即指令系统中的指令。它们都是机器能够执行的指令,每一条指令都有对应的机器码。(2)伪指令:汇编时用于控制汇编的指令。它们都是机器不执行的指令,无机器码汇编语言的语句格式汇编语言一般由四部分组成。标号:操作码操作数;注释ST

2、ART:MOVA,30H;A←(30H)第三章2------2wyx(1)标号段——标号是用户根据需要设定的符号地址。通常是在一段程序的入口或程序的转向点设置一个标号。使用标号便于程序的阅读、修改及转移指令的书写。标号由英文字母开头的1~8个字母数字串组成。标号以“:”结束,且同一个标号名在一个程序中只能使用一次,不能重复定义。(2)操作码段——即指令系统中的助记符。它规定了语句执行的操作属性,是不可缺少的。(3)操作数段——操作数用于给指令的操作提供具体数据和地址。操作数可以是一项或用逗号分开的两项、

3、三项,也可以是空白(例如DAA指令)。(4)注释段——注释用于对语句或一段程序进行解释和说明,有利于交流和阅读。注释的长度不限,但应尽量简明扼要。注释与操作数之间用“;”分开。第三章2------3wyx一、伪指令简介1.ORG——汇编起始地址伪指令指令格式:ORGmm为十六进制数或十进制。它规定了它下面的程序或数表应从ROM的m地址处开始存放。一个汇编语言源程序中,可以多次使用ORG命令,地址一般应从小到大,且不能使各程序段出现重叠现象。第三章3------4wyx2.END——汇编结束伪指令指令格式:E

4、NDEND指令用于终止源程序的汇编工作。一般一个源程序只能有一个END。3.EQU——赋值伪指令指令格式:标号名称EQU汇编符号或数EQU是将一个数或汇编符号赋予规定的标号名称,汇编程序会自动将EQU右边的数或汇编符号(地址或常数)赋给左边的标号名称。所以应先定义后使用。第三章3-----6wyx4.DB——定义字节伪指令指令格式:标号:DB字节常数或数表。表明从该标号地址单元开始定义一个或若干个字节的数。例如:ORG1000HTAB:DB12H,34H,56H;从1000H单元开始存放数DB78H,9AH,

5、00H;换行,仍要先写DB5.DW——定义字伪指令指令格式:标号:DW字常数或字数表类似DB,但DW指从该标号地址单元开始,存放一个或若干个字的数。例如:ORG1500HTAB1:DW1234H,9AH,10伪指令DW则定义1500H~1505H单元的内容依次为12H、34H、00H、9AH、00H、0AH。第三章3------7wyx6.DS——预留空间伪指令指令格式:标号:DS表达式DS指定从标号地址单元开始,保留若干字节单元备用。例如:TAB2:DS100;通知汇编程序从TAB2开始保留100个字节

6、单元,以备源程序另用。7.BIT——位地址符号伪指令指令格式:标号名称BIT位地址一般用来将位地址赋给标号名称,以用户编程和程序阅读。例如:M0BIT20H.0MOVC,M0二、顺序程序设计第三章3------9wyx练习:将30H单元内的两位BCD码拆开并转换成ASCII码,存入RAM31H、32H两个单元中。ORG1000HMOVA,30H;取值ANLA,#0FH;取低4位ADDA,#30H;转换成ASCII码MOV32H,A;保存结果MOVA,30H;取值SWAPA;高4位与低4位互换ANLA,#0FH

7、;取低4位(原来的高4位)ADDA,#30H;转换成ASCII码MOV31H,A;保存结果SJMP$结束取数据低4位转换成ASCII码存ASCII码取数据高4位转换成ASCII码存ASCII码开始条件满足?AYN(a)条件满足?ABNY(b)(c)A0A1AnK=0K=1…K=nK=?……第三章3-----11wyx三、分支程序与循环程序设计1.分支程序第三章3-----11wyx三、分支程序与循环程序设计例3-13:设X,Y均为带符号数,存放在地址为M和N单元中,编程计算Y=f(x)1当x>0Y=0当x=0

8、-1当x<0思路:进行两次判断,第一次利用指令JZ,第二次利用指令JZB判断此符号位。第三章3----12wyxMEQU40H;定义数据地址NEQU41HORG0100HMOVA,M;取出XJZNEXT2;当X=0,则跳转到NEXT2JNBACC.7,NEXT1;当X>0,则跳转到NEXT1MOVA,#0FFH;当X<0,把-1的补码送ASJMPNEXT2NEXT1:MOVA,#01H;当X>0,0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。