C汇编语言程序相关设计_第1页
C汇编语言程序相关设计_第2页
C汇编语言程序相关设计_第3页
C汇编语言程序相关设计_第4页
C汇编语言程序相关设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C汇编语言程序相关设计本章的主要内容程序设计语言和伪指令;MCS-51单片机汇编语言程序设计的步骤延时程序的使用方法查表程序设计数制转换的原理4.1.1程序设计语言机器语言汇编语言C8051语言4.1.2伪指令ORG操作数;符号名称EQU操作数;字符名称DATA操作数;【标号:】DB数据表;【标号:】DW数据表;字符名称bit位地址;

P10bitP1.0

虽然单片机的每—条指令能使计算机完成一种特定的操作。但要完成某一特定的任务还需要将这些指令按工作要求有序组合为一段完整的程序。程序实际上是一系列计算机指令的有序集合。我们把利用计算机的指令系统来合理地编写出解决某个问题的程序的过程,称之为程序设计。4.1.3简单汇编语言程序设计(67)编制程序的步骤1.任务分析(硬件、软件系统分析)2.确定算法和工作步骤;3.程序总体设计和流程图绘制关于流程图符号:开始、结束----圆角矩形工作任务----矩形判断分支----菱形程序流向----程序连接----开始结束4.分配内存,确定程序与数据区存放地址;5.编写源程序;6.调试、修改,最终确定程序。方法技巧

模块化设计(显示、打印、输入、发送)2.尽量采用循环及子程序结构(节省内存)汇编语言的规范汇编语言源程序由以下两种指令构成汇编语句(指令语句)伪指令(指示性语句)汇编语句的格式:标号: 操作码 操作数 ;注释3.数据表示形式:二进制(B)、十六进制(H)、十进制(D或省略)、ASCII码(以单引号标识)4.2.1三种程序的结构

(1)分支结构或者选择结构(2)循环结构(3)查表程序4.2.2三个应用举例(1)延时程序(2)十六进制—ASCII的转换(3)两字节的乘法

(1)延时程序

题目:单片机采用12M晶振,试编写0.1s延时程序

ORG 0100H MOV R2,#200 LOOP:MOV R3,#250 DJNZ R3,$(2周期)

DJNZ R2,LOOP RET

请思考:机器周期是多少?请思考:如何计算总的延时时间?例2:50ms延时子程序。设晶振频率为12MHz,则机器周期为1us。DEL:MOVR7,#200;1MCDEL1:MOVR6,#123;1MCNOP;1MCDJNZR6,$;2MCDJNZR7,DEL1;2MCRET;2MC延时时间:t=1+200[(1+1+2*123)+2]+2≈50000us=50ms

(2)代码转换类程序设计十六进制数与ASCII的转换十六进制整数转换成单字节BCD码整数*单字节十六进制数转换成双字节ASCII码

表4-1十六进制数与ASCII码之间的关系十六进制数十六进制数十六进制数十六进制数030H434H838HC43H131H535H939HD44H232H636HA41HE45H333H737HB42HF46H例1:待转换的单字节十六进制数在寄存器R2中。高四位的

ASCII码存在A中,低四位的ASCII码存在B中。

ORG0100HMOV A,R2MOV B,A ;暂存待转换的单字节十六进制数

LCALLMS1XCH A,B ;存放低四位的ASCII码

SWAPA ;准备转换高四位

LCALLMS1SJMP $MS1:ANL A,#0FHCJNEA,#0AH,N1SJMPDAYUN1:JNCDAYUADDA,#30HSJMPDIWEIDAYU:ADDA,#37H ;将累加器低四位转换成ASCIIDIWEIDIWEI:RET例2:查找无符号数据块中最大值(P104)

ORG1000HMOVR2,#0AH;共计十个数

CLRALP:SUBBA,@R1JNCNEXTMOVA,@R1;第二个数大

SJMPNEXT1NEXT:ADDA,@R1;原数最大,恢复NEXT1:INCR1DJNZR2,LPEND请思考:用另外一种方法?ORG 0100HMOV A,R0 ANL A,#0FH;屏蔽高4位ADD A,#03H MOVC A,@A+PC;查表MOV R0,A;存结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论