网站大量收购闲置独家精品文档,联系QQ:2885784924

增强型8051单片机的程序设计.ppt

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

增强型8051单片机的程序设计 目 录 1 汇编语言程序设计 2 C51程序设计 1 汇编语言程序设计 1.1 汇编语言程序设计基础 1.2 基本程序结构与程序设计举例 1.1 汇编语言程序设计基础 1. 程序编制的步骤 (1)系统任务的分析 (2)提出算法与算法的优化 (3)程序总体设计及绘制程序流程图 1.1 汇编语言程序设计基础 2. 程序的模块化设计 (1)采用模块化程序设计方法 单片机应用系统的程序一般由包含多个模块的主程序和各种子程序组成。每一程序模块都要完成一个明确的任务,实现某个具体的功能,如发送、接收、延时、打印、显示等。采用模块化的程序设计方法,就是将这些不同的具体功能程序进行独立的设计和分别调试,最后将这些模块程序装配成整体程序并进行联调。 (2)尽量采用循环结构和子程序 采用循环结构和子程序可以使程序的长度减少,程序简单化,占用内存空间减少。对于多重循环,要注意各重循环的初值、循环结束条件与需循环位置,避免出现程序无休止循环的“死循环”现象。对于通用的子程序,除了用于存放子程序入口参数的寄存器外,子程序中用到的其它寄存器的内容应压入堆栈进行现场保护,并要特别注意堆栈操作的压入和弹出的顺序。对于中断处理子程序除了要保护程序中用到的寄存器外,还应保护标志寄存器。 1.1 汇编语言程序设计基础 3. 伪指令 (1)设置起始地址指令ORG 指令格式为: ORG 16位地址 该指令的作用是指明后面的程序或数据块的起始地址,它总是出现在每段源程序或数据块的开始。一个汇编语言源程序中可以有多条ORG伪指令,但后一条ORG伪指令指定的地址应大于前面机器码已占用的存储地址。 (2)汇编语言源程序结束指令END 指令格式为: [标号:] END [mm] 其中mm 是程序起始地址。标号和mm不是必需的。 指令功能是表示源程序到此结束,END指令以后的指令汇编程序将不予处理。一个源程序中只能在末尾有一个END指令。 1.1 汇编语言程序设计基础 (3) 赋值伪指令EQU 指令格式: 字符名称 EQU 数值或汇编符号 EQU伪指令的功能是使指令中的“字符名称”等价于给定的“数值或汇编符号”。赋值后的字符名称可在整个源程序中使用。字符名称必须先赋值后使用,通常将赋值放在源程序的开头。 (4)数据地址赋值指令DATA 指令格式: 字符名称 DATA 表达式 DATA伪指令的功能是将表达式指定的数据地址赋予规定的字符名称。 DATA伪指令定义的字符名称可先使用后定义,放于程序开头、结尾均可;而EQU伪指令定义的字符名称只能是先定义,后使用; EQU伪指令既可以将一个汇编符号赋值给字符名称,而DATA伪指令只能将数据地址赋值给字符名称。 1.1 汇编语言程序设计基础 (5)定义字节伪指令DB 指令格式为: [标号:] DB 字节常数表 DB伪指令的功能是从指定的地址单元开始,定义若干个8位内存单元的内容。字节常数可以采用二进制、十进制、十六进制和ASCII码等多种表示形式。 (6)定义字伪指令DW 指令格式为: [标号:] DW 字常数表 DW伪指令功能是从指定地址开始,定义若干个16位数据,高八位存入低地址,低八位存入高地址。 (7)定义存储区指令DS 指令格式为: [标号:] DS 表达式 指令功能为从指定的单元地址开始,保留一定数量的存储单元,以备使用。汇编时,对这些单元不赋值。 1.1 汇编语言程序设计基础 (8)位定义伪指令BIT 指令格式: 字符名称 BIT 位地址 指令功能为将位地址赋值给指定的符号名称,通常用于位符号地址的定义。 (9)文件包含命令INCLUDE 指令格式: $INCLUDE (文件名) INCLUDE用于将寄存器定义文件或其它程序文件包含于当前程序中,寄存器定义文件的后缀名一般为“.INC”,也可直接包含汇编程序文件。 1.2 基本程序结构与程序设计举例 1.顺序结构程序 顺序程序是指无分支、无循环结构的程序,其执行流程是依指令在程序存储器中的存放顺序进行的。顺序程序比较简单,一般不需绘制程序流程图,直接编程既可。 例4.4 试将8位二进制数据转换为十进制(BCD码)数据。 解:8位二进制数据对应的最大十进制数是255,说明一个8位二进制数据需要3位BCD码来表示,既百位

文档评论(0)

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

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

1亿VIP精品文档

相关文档