《单片机原理与应用》课程教学资源(PPT课件讲稿)第四章 MCS-51程序设计

第4章McS-51程序设计 41汇编语言的格式伪指令 42伪指令 43查表程序设计 44循环程序设计 45分支程序设计 46散转程序设计 47数制转换程序设计
第4章 MCS-51程序设计 4.1 汇编语言的格式伪指令 4.2 伪指令 4.3 查表程序设计 4.4 循环程序设计 4.5 分支程序设计 4.6 散转程序设计 4.7 数制转换程序设计

4.1汇编语言的格式 ORG 00OOH 整个程序起始地址 AMP MAIN ;跳向主程序 ORG 0030H 主程序起始地址 MAIN: CLR C ;MAIN为程序标号 LOOP: MOV A, aRO ADDC A, @RI INC RO DJⅠNZR1,LOOP;相对转移 SJMP NEXT MOV RI.#03H NEXT: DEC RO SJMP S ;相当于LOOP: SJMP LOOP1 END 结束标记
4.1 汇编语言的格式 ORG 0000H ; 整个程序起始地址 AJMP MAIN ; 跳向主程序 ORG 0030H ; 主程序起始地址 MAIN: CLR C ; MAIN为程序标号 LOOP: MOV A , @R0 ADDC A, @R1 INC R0 DJNZ R1, LOOP ;相对转移 SJMP NEXT MOV R1, #03H NEXT: DEC R0 SJMP $ ;相当于 LOOP1: SJMP LOOP1 END ; 结束标记

汇编语言格式: 地址机器码 源程序 注释 ORG 000OH 整个程序起始地址 0000200030 LJMP MAIN 跳向主程序 ORG 0030H 主程序起始地址 0030C3 MAIN: CLR C MAIN为程序标号 0031E6 LOOP: MOV A,RO 003237 ADDC A, @RI 003308 INC RO 0034 DA FB DNZ R1,LOOP;相对转移 00368003 SJMP NEXT 00387803 MOV RO. #03H 003A18 NEXT: DEC RO 003B80FE SJMP S HERE: SJMP HERE END ;结束标记
汇编语言格式: 地址 机器码 源程序 注释 ORG 0000H ; 整个程序起始地址 0000 20 00 30 LJMP MAIN ; 跳向主程序 ORG 0030H ; 主程序起始地址 0030 C3 MAIN: CLR C ; MAIN为程序标号 0031 E6 LOOP: MOV A , @R0 0032 37 ADDC A, @R1 0033 08 INC R0 0034 DA FB DJNZ R1, LOOP ;相对转移 0036 80 03 SJMP NEXT 0038 78 03 MOV R0, #03H 003A 18 NEXT: DEC R0 003B 80FE SJMP $ ;HERE: SJMP HERE END ; 结束标记

4.2伪操作指令 1.ORG( Origin)定义程序的起始地址 2.END程序结束标志 3.DB( Define byte)定义字节 4DW( Define word)定义字 5.EQU( Equate)表达式赋值
4.2 伪操作指令 1. ORG(Origin) 定义程序的起始地址 2. END 程序结束标志 3. DB (Define Byte) 定义字节 4. DW (Define Word)定义字 5. EQU(Equate) 表达式赋值

伪操作指令例子 MATH EQU 03H ORG OOOOH MAIN: CLR C LOOP: MOV A,@RO MOV RI. #MATH 相当于MOVR1,#03H NEXT: SJMP S ORG 1100H DB 01H, 04H, 09H, 05H; ROM END 地址数据 110001 110104 110209 110305
伪操作指令例子 MATH EQU 03H ORG 0000H MAIN: CLR C LOOP: MOV A , @R0 MOV R1, #MATH ;相当于MOV R1, #03H NEXT: SJMP $ ORG 1100H DB 01H , 04H, 09H , 05H ; END ROM中 地址 数据 1100 01 1101 04 1102 09 1103 05

汇编语言程序设计步骤 1.确定方案和计算方法 2.了解应用系统的硬件配置、性能指标。 3.建立系统数学模型,确定控制算法和操作步骤。 4画程序流程图,确定程序的流向 开始 5.编制源程序 1)合理分配存储器单元和了解I/0接口地址 2)按功能设计程序,明确各程序之间的相互关系 3)用注释行说明程序,便于阅读和修改调试和修改
汇编语言程序设计步骤 1.确定方案和计算方法 2.了解应用系统的硬件配置、性能指标。 3.建立系统数学模型,确定控制算法和操作步骤。 4.画程序流程图, 确定程序的流向 5. 编制源程序 1)合理分配存储器单元和了解I/O接口地址。 2)按功能设计程序,明确各程序之间的相互关系。 3)用注释行说明程序,便于阅读和修改调试和修改。 开始 1 Y N ?

43查表程序设计 1.用DPTR查表(查0~9平方表) 1000 C083 TA: PUSH DPH 1002C082 PUSH DPL 1004902000 MOV DPTR. #TAB 100793 MOVC A,@A+DPTR 1008D082 POP DPL 100AD083 POP DPH 100C22 RET ORG 2000H TAB: DB OOH. 01H. 04H. 09H 200000 200101 200204 200309
4.3 查表程序设计 1. 用DPTR查表(查0~9平方表) 1000 C083 TA: PUSH DPH 1002 C082 PUSH DPL 1004 902000 MOV DPTR, #TAB 1007 93 MOVC A, @A+DPTR 1008 D082 POP DPL 100A D083 POP DPH 100C 22 RET ORG 2000H TAB: DB 00H, 01H, 04H, 09H 2000 00 2001 01 2002 04 2003 09

2.用Pc查表(查0~9平方表) ORG 1000H 1000C083TA:ADDA,#0H;#01H为偏移量 100283 MOVC A,A+PC 100322 RET 100400 DB00H.01H.04H.09H 100501 END 100604 100709 偏移量=表首地址一(査表指令下一条指令地址) 1004H-1003H =01H
2. 用PC查表(查0~9平方表) ORG 1000H 1000 C083 TA: ADD A, #01H ; # 01H 为偏移量 1002 83 MOVC A, @A+PC 1003 22 RET 1004 00 DB 00H, 01H, 04H, 09H 1005 01 END 1006 04 1007 09 偏移量=表首地址-(查表指令下一条指令地址) =1004H - 1003H =01H

4.4循环程序设计 1.延时50ms程序 DEL:MoVR7。#200 DELI: MOV R6.#125 DEL2: DNz R6. DEL2 125*2=250us DJNZ R7. DELI: 0. 25ms*200=50ms RET 使用12MHz晶振时,一个机器周期为1us, 执行DJNZ指令为2us,加其他指令的时间 (250+1+2)*200+1=50301ms 精确计算见P327
4.4 循环程序设计 1. 延时50ms程序 DEL: MOV R7, #200 DEL1: MOV R6, #125 DEL2: DJNZ R6, DEL2 ;125*2=250us DJNZ R7, DEL1 ; 0.25ms*200=50ms RET 使用12MHz晶振时,一个机器周期为1us, 执行DJNZ指令为2us,加其他指令的时间 (250+1+2)*200+1=50.301ms 精确计算见P327

2.计算几个数据的和 例题:对内部RAM50h开始的10个无符号数求 和。 y=∑ 循环程序的设计要点: (1)循环体:重复执行的程序部分 ry+x (2)循环结束条件: i*1+ 1 ①计数器 DJNZ R7,rel 1=n ②比较 CUNE A,#aa,rel END 3)循环初值
= = n i i y x 1 2. 计算几个数据的和 例题:对内部RAM 50h开始的10个无符号数求 和
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第三章 指令系统.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第二章 MCS-51结构.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第一章 MCS-51 基础知识.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第十章 功率接口.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第九章(上)LED显示器(Light-Emitting Diode).ppt
- 《用Maple和MATLAB解决科学计算问题》教学资源(MATLAB方法电子书籍,共二十七章).pdf
- 《信息系统安全原理》课程教学资源(PPT课件)第九章 信息系统安全体系结构与评估标准.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第八章 安全协议.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第七章 认证 Authentication.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第六章 数据加密与数据隐藏修改.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第五章 信息系统安全事件响应.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第四章 信息系统安全监控.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第三章 信息系统隔离技术.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第二章 黑客.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第一章 病毒及其防治.ppt
- 《信息系统安全原理》课程教学资源(PPT课件)第十章 信息系统安全等级与.ppt
- 21世纪高等院校规划教材:《网页设计与制作实用技术》课程配套电子教案(PPT教学课件)第九章 利用图层技术制作网页.ppt
- 21世纪高等院校规划教材:《网页设计与制作实用技术》课程配套电子教案(PPT教学课件)第八章 利用框架技术制作网页.ppt
- 21世纪高等院校规划教材:《网页设计与制作实用技术》课程配套电子教案(PPT教学课件)第七章 网页表单的处理.ppt
- 21世纪高等院校规划教材:《网页设计与制作实用技术》课程配套电子教案(PPT教学课件)第六章 在网页中使用超链接.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第五章 MCS-51 中断系统.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第六章 MCS-51的定时器、计数器.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第七章 MCS-51 存储器的扩展.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第八章 MCS-51的串口.ppt
- 《单片机原理与应用》课程教学资源(PPT课件讲稿)第九章 接口技术.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第十章 文字注释.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第十一章 块、参照和设计中心.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第十二章 打印输出.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第一章 计算机辅助设计概述.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第二章 操作基础.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第三章 绘图初步.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第四章 绘制基本对象.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第五章 编辑、查看图形对象.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第六章 对象修改.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第七章 图案填充.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第八章 面域造型.ppt
- 《AutoCAD 2004实用教程》教学资源(PPT课件)第九章 标注尺寸.ppt
- 川北医学院:《计算机Visual FoxPro 6.0》课程电子教案(PPT教学课件,共十三章,主讲教师:卫贵武).ppt
- 《labview学习教程》参考资料(电子版,共八章).pdf
- 《绘图工具》课程PPT教学课件(讲稿)第三章 数据分析绘图工具 Origin6.0.pps