第3章 51单片机编程语言ppt课件.ppt

第3章 51单片机编程语言ppt课件.ppt

ID:58702773

大小:1009.50 KB

页数:161页

时间:2020-10-04

第3章 51单片机编程语言ppt课件.ppt_第1页
第3章 51单片机编程语言ppt课件.ppt_第2页
第3章 51单片机编程语言ppt课件.ppt_第3页
第3章 51单片机编程语言ppt课件.ppt_第4页
第3章 51单片机编程语言ppt课件.ppt_第5页
资源描述:

《第3章 51单片机编程语言ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章51单片机编程语言3.1单片机编程语言概述3.2汇编语言3.3C51语言3.4C8051F系列单片机开发环境3.1单片机编程语言概述51单片机的编程语言可以是汇编语言,也可以是高级语言,如由C语言演变而成的C51语言等。汇编语言产生的目标代码短,占用的存储空间小,执行速度快,能充分发挥单片机的硬件功能。但对于复杂的应用来讲使用汇编语言编程复杂,程序的可读性和可移植性不强。高级语言产生的目标代码长,占用的存储空间大,执行速度慢。但这是相对于汇编语言来讲的,其实C语言在大多数情况下的机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,编程效率也大大高于汇编语言。3.

2、1单片机编程语言概述如果应用系统的存储空间比较小,且对实时性的要求很高,则应选用汇编语言。如果系统的存储空间比较大,且对实时性的要求不是很高,则应选用C51语言。如果系统中有部分模块对实时性的要求很高,而其它模块对实时性的要求不是很高,则可以将两种语言结合,程序的主体部分使用C51编程,对实时性要求高的模块用汇编语言编程,然后将汇编语言程序模块嵌入到C51语言程序当中。无论是高级语言还是汇编语言写的源程序都必须转换成目标程序,单片机才能执行。目前很多公司都将编辑器、汇编器、编译器、连接/定位器、符号转换程序做成了软件包,称为集成开发环境,如KeiluVision、SiliconLabo

3、ratoriesIDE等。3.2汇编语言3.2.1汇编指令[伪指令]用汇编语言写的源程序必须翻译成机器语言程序,计算机才能执行。这个翻译过程称为汇编。汇编有手工汇编和机器汇编两种方式。当使用机器汇编时,必须为汇编程序提供一些信息,如哪些是指令,哪些是数据;数据是字节还是字;程序的起始点和结束点在哪里等等。这些控制汇编的指令称为伪指令,伪指令不是控制计算机执行操作的指令,仅仅是在机器汇编时为汇编程序提供必要的信息。因此,汇编时伪指令并不产生供机器直接执行的机器码。3.2.1汇编伪指令(1)定位伪指令:ORGmm一般为十进制或十六进制数表示的16位地址,用来指定该伪指令后指令或数据的起始存

4、放地址。允许使用多条定位伪指令,但其值不应和前面生成的机器代码或数据的存放地址重叠。在实际应用中,一般仅设置中断服务子程序和主程序的起始存放地址,其他程序或常数依次存放即可。例3.10000H复位入口0003H/INT0中断入口000BHT0中断入口…………MAIN:…………SJMPMAINORG0000HSTART:AJMPMAINORG0030HMAIN:MOVSP,#30HEND3.2.1汇编伪指令(2)汇编结束伪指令:END必须放在源程序末尾。一个源程序只能有一个END。定义字节伪指令:DB标号:DBx1,x2,…,xn将其右边的数据依次存放到标号为起始地址的存储单元中,xi为

5、字节数据,为二、十、十六进制和ASCII码等多种表示形式。通常用于定义一个常数表。例3.2ORG7F00HTAB:DB01110010B,16H,45,‘8’,‘MCS-51’汇编后存贮单元内容为:(7F00H)=72H、(7F01H)=16H、(7F02H)=2DH(7F03H)=38H、…、(7F0AH)=31H3.2.1汇编伪指令(3)定义字伪指令:DW标号:DWY1,Y2,…,Yn功能与DB类似,但DW定义的是一个字(2个字节),主要用于定义16位地址表(高8位在前,低8位在后)。例3.3ORG6000HTAB:DW1254H,32H,161DW‘AB’,TAB汇编后存贮单元内

6、容为:(6000H)=12H(6001H)=54H(6002H)=00H(6003H)=32H(6004H)=00H(6005H)=0A1H(6006H)=41H(6007H)=42H(6008H)=60H(6009H)=00H注意:和80X86的存放格式不同!3.2.1汇编伪指令(4)定义预留存储空间伪指令DS标号:DS数值表达式从指定的地址开始,保留若干字节的内存空间作为备用。汇编后,将根据表达式的值决定从指定地址开始留出多少个字节空间,表达式也可以是一个指定的数值。例3.4ORG0F00HDS10HDB20H,40H汇编后,从0F00H开始,保留16个字节的内存单元,然后从0F1

7、0H开始,按照下一条DB伪指令给内存单元赋值,即(0F10H)=20H,(0F11H)=40H。3.2.1汇编伪指令(5)等值伪指令EQU字符名称EQU数据或汇编符“字符名称”被赋值后,在程序中就可以作为一个8位或16位的数据或地址或汇编符来使用。通常等值伪指令放在源程序的开头。先定义后使用。例3.5ORG8500HAAEQUR1A10EQU10HDELAYEQU87E6HMOVR0,A10;R0←(10H)MOVA,AA;A←(R1)LCAL

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

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

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