单片机及应用第四章80C51单片机汇编语言程序设计.ppt

单片机及应用第四章80C51单片机汇编语言程序设计.ppt

ID:56466547

大小:386.50 KB

页数:74页

时间:2020-06-19

单片机及应用第四章80C51单片机汇编语言程序设计.ppt_第1页
单片机及应用第四章80C51单片机汇编语言程序设计.ppt_第2页
单片机及应用第四章80C51单片机汇编语言程序设计.ppt_第3页
单片机及应用第四章80C51单片机汇编语言程序设计.ppt_第4页
单片机及应用第四章80C51单片机汇编语言程序设计.ppt_第5页
资源描述:

《单片机及应用第四章80C51单片机汇编语言程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章80C51单片机汇编语言程序设计主要内容:4.1单片机程序设计语言概述4.2汇编语言程序的基本结构形式4.380C51单片机汇编语言程序设计举例4.4单片机汇编语言源程序的编辑和汇编4.580C51单片机汇编语言伪指令4.1单片机程序设计语言概述4.1.1机器语言和汇编语言1、机器语言:直接用二进制代码指令表达的计算机语言。计算机可以直接识别,不需要进行任何翻译。每台机器的指令,其格式和代码所代表的含义都是硬性规定的。机器语言是其它各种程序设计语言的基础,但难记、难用、已出错。4.1.1机器语言和汇编语言2、汇编语言:用助记符和专门的语言规则表示指令的功能

2、和特征的面向机器的程序设计语言。汇编语言是对机器语言的改进,比机器语言高级。汇编语言的最大优点是助记符与机器指令一一对应。用汇编语言编写的程序占用存储空间小,运行速度快,程序效率高。此外,汇编语言能直接管理和控制硬件资源。缺点:比高级语言难记忆和使用,程序设计的技巧性较高,编程难度较大。要求使用者必须精通单片机的硬件系统和指令系统。缺乏通用性,程序不易移植。4.1.2单片机使用的高级语言对于8051单片机,现有4种语言支持,即汇编、PL/M、C和BASIC。C语言应用广泛移植性好;开发效率高。keilc51高级语言的不足:生成的目标代码较长;程序运行速度较慢。4

3、.1.380C51单片机汇编语言的语句格式80C51汇编语言的语句格式如下:[<标号>:]<操作码>[<操作数>];[<注释>]1.标号是语句地址的标志符号,标号的几点规定:1~8个ASCII字符组成,第一个字符必须是字母。不能使用本汇编语言已经定义的符号作为标号。标号后面必须跟以冒号“:”。同一标号在一个程序中只能定义一次。标号可有可无。4.1.380C51单片机汇编语言的语句格式2.操作码用于规定语句执行的操作内容,用指令助记符表示。不能空缺。3.操作数操作数用于为指令操作提供数据。可能有0~3个操作数,各操作数之间以逗号分隔。4.注释不属于语句的功能部分,

4、只是对语句的解释说明,以“;”开头。4.1.380C51单片机汇编语言的语句格式5.分界符(分隔符)用于把语句中的各部分隔开,以便于区分。分界符包括空格、冒号、分号或逗号等符号。4.2汇编语言程序的基本结构形式四种基本结构形式:顺序程序结构、分支程序结构、循环程序结构、子程序。4.2.1顺序程序结构顺序结构程序是最简单的程序结构。程序既无分支、循环,也不调用子程序,程序执行时一条接一条地按顺序执行指令。例13字节无符号数的加法运算。其中被加数在内部RAM的50H、51H和52H单元中;加数在内部RAM的53H、54H和55H单元中;要求把相加之和存放在50H、5

5、1H和52H单元中,进位存放在位寻址区的20H位中。4.2.1顺序程序结构我们一起来编写程序。MOVR0,#52H;被加数的低字节地址MOVR1,#55H;加数的低字节地址MOVA,@R0ADDA,@R1;低字节相加MOV@R0,A;存低字节相加结果DECR0DECR1MOVA,@R0ADDCA,@R1;中间字节带进位相加MOV@R0,A;存中间字节相加结果DECR0DECR1MOVA,@R0ADDCA,@R1;高字节带进位相加MOV@R0,A;存高字节相加结果MOV20H,C;存放进位的单元地址4.2.1顺序程序结构分支结构也称为选择结构。要分支,就要用条件或

6、变址寻址转移指令,就要有地址标号。分支结构又可分为单分支结构和多分支结构。4.2.2分支程序结构1.单分支程序结构单分支程序结构即二中选一,通过条件判断实现,条件成立一支,条件不成立一支。例2假定在外部RAM中有ST1、ST2和ST3三个连续单元,其中ST1和ST2单元中存放着两个无符号二进制数,试找出其中的大数并存入ST3单元中。1.单分支程序结构4.2.2分支程序结构MOVDPTR,#ST1;设置数据指针MOVXA,@DPTR;取第1个数MOVR2,A;第1个数存于R2INCDPTR;数据指针加1MOVXA,@DPTR;取第2个数CLRC;进位位清0CJNE

7、A,R2,NEXT;两数比较JNCBIGER;若第2个数不小,则转向BIGERXCHA,R2;若第1个数大,则整字节交换BIGER:INCDPTRMOVX@DPTR,A;存大数1.单分支程序结构例3假定采集的温度值Ta放在累加器A中。此外,在内部RAM54H单元存放温度下限值T54,在55H单元存放温度上限值T55。若Ta>T55,程序转向JW(降温处理程序);若Ta<T54,则程序转向SW(升温处理程序);若T55≥Ta≥T54,则程序转向FH(返回主程序)。4.2.2分支程序结构1.单分支程序结构TC:CJNEA,55H,LOOP1;若Ta≠T55,则转向L

8、OOP1AJMPFH;若

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

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

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