第四章语言程序设计课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第四章语言程序设计课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 语言程序设计 课件
- 资源描述:
-
1、第四章 汇编语言程序设计程序设计概述汇编语言源程序的编辑和汇编汇编语言程序设计2022年年5月月31日日1、程序设计语言简介2、汇编语言程序设计初步2022年年5月月31日日1、常用的编程语言是常用的编程语言是汇编语言汇编语言和和高级语言高级语言。1 1汇编语言汇编语言用英文字符来代替机器语言,这些英文字符被称为用英文字符来代替机器语言,这些英文字符被称为助记符汇助记符汇编语言:编语言:用助记符表示的指令。用助记符表示的指令。汇编语言源程序:汇编语言源程序:用汇编语言编写的程序。用汇编语言编写的程序。优点:优点:用汇编语言编写程序效率高,占用存储空间小,运行用汇编语言编写程序效率高,占用存储空
2、间小,运行速度快,能编写出最优化的程序。速度快,能编写出最优化的程序。缺点:缺点:可读性差,离不开具体的硬件,是面向可读性差,离不开具体的硬件,是面向“硬件硬件”的语的语言通用性差。言通用性差。2022年年5月月31日日1、程序设计语言简介2 2高级语言高级语言不受具体不受具体“硬件硬件”的限制,的限制,优点:优点:通用性强,直观、易通用性强,直观、易懂、易学,可读性好。懂、易学,可读性好。目前多数的目前多数的51单片机用户单片机用户使用使用C语言(语言(C51)来进行程来进行程序设计,已公认为高级语言中高效简洁而又贴近序设计,已公认为高级语言中高效简洁而又贴近51单片机单片机硬件的编程语言。
3、硬件的编程语言。将将C语言向单片机上移植,始于语言向单片机上移植,始于20世纪世纪80年代的中后年代的中后期。期。汇编语言设计步骤(1)分析题意,明确要求(2)确定算法(3)画程序流程图(4)分配内存工作单元(5)编写源程序(6)程序优化(7)上机调试、修改和最后确定源程序4.2 汇编语言源程序的编辑和汇编伪指令源程序的编辑和汇编1、伪指令(1 1)指令语句)指令语句已在第已在第3 3章介绍。每一指令语句在汇编时都产生一个指令代码(机器代码章介绍。每一指令语句在汇编时都产生一个指令代码(机器代码),执行该指令代码对应着机器的一种操作。),执行该指令代码对应着机器的一种操作。(2 2)伪指令语句
4、)伪指令语句是控制汇编(翻译)过程的一些是控制汇编(翻译)过程的一些控制命令控制命令。在汇编时。在汇编时没有机器代码没有机器代码与之对与之对应。应。下面介绍伪指令语句。下面介绍伪指令语句。1、伪指令1ORG(ORiGin)汇编起始地址命令)汇编起始地址命令源程序的开始,用一条源程序的开始,用一条ORG伪指令规定伪指令规定程序的起始地程序的起始地址址。如果不用如果不用ORG,则汇编得到的目标程序,则汇编得到的目标程序将从将从0000H地址开始。例如:地址开始。例如:ORG2000HSTART:MOVA,#00H 即规定标号即规定标号START代表地址为代表地址为2000H开始。开始。在一源程序中
5、,可多次用在一源程序中,可多次用ORG指令,规定不同的程序段的指令,规定不同的程序段的起始地址。但是,起始地址。但是,地址必须由小到大排列,且不能交叉、地址必须由小到大排列,且不能交叉、重叠。重叠。例如:例如:ORG2000HORG2500HORG3000H这种顺序是正确的。若按下面顺序的排列则是错误的,因为地址出现了交叉。ORG2500HORG2000HORG3000H1、伪指令2. 2. END(END of Assembly)END(END of Assembly)汇编终止命令汇编终止命令源程序源程序结束标志结束标志,终止源程序的汇编工作。终止源程序的汇编工作。整个源程序整个源程序中只能
6、有一条中只能有一条ENDEND命令,且命令,且位于程序的最后位于程序的最后。如果。如果ENDEND出现出现在程序中间,其后的源程序,将不进行汇编处理。在程序中间,其后的源程序,将不进行汇编处理。1、伪指令3DB(Define Byte)定义数据字节命令)定义数据字节命令格式:格式:标号:标号: DB 8位字节数据表位字节数据表用于从(标号)指定的地址开始,在程序存储器连续单用于从(标号)指定的地址开始,在程序存储器连续单元中定义字节数据。例如:元中定义字节数据。例如:ORG 1000HDB-2,-4,100,30H,C,A1、伪指令4、DW(Define Word)定义字数据命令)定义字数据命
7、令该命令用于从指定的地址开始,在程序存储器的连该命令用于从指定的地址开始,在程序存储器的连续单元中定义续单元中定义16位的字数据。例如:位的字数据。例如:ORG 2000HDATA:DW 1246H,7BH,10汇编后(2000H)=12H(2001H)=46H;第1个字(2002H)=00H(2003H)=7BH;第2个字(2004H)=00H(2005H)=0AH;第3个字5DS(Define Storage)定义存储区命令)定义存储区命令从指定地址开始,保留指定数目的字节单元作为存储区从指定地址开始,保留指定数目的字节单元作为存储区,供程序运行使用。,供程序运行使用。例如:例如:TABE
8、L:DS10表示从表示从TABEL代表的地址开始,保留代表的地址开始,保留10个连续的地址个连续的地址单元。单元。又例如又例如:ORG2000HDS10 H表示从表示从2000H地址开始,保留地址开始,保留16个连续地址单元。个连续地址单元。2022年年5月月31日日6 6EQUEQU(EQUateEQUate)标号赋值命令)标号赋值命令用于用于给标号赋值给标号赋值。赋值后,标号值在整个程序有效。赋值后,标号值在整个程序有效。例如:例如:TESTTEST: EQU 2000HEQU 2000H表示表示TEST=2000HTEST=2000H,汇编时,凡是遇到,汇编时,凡是遇到TESTTEST时
9、,均以时,均以2000H2000H来代替。来代替。2022年年5月月31日日1、源程序的编辑2、源程序的汇编2022年年5月月31日日顺序结构分支结构循环结构子程序结构2022年年5月月31日日例:两个无符号双字节数相加。 设被加数存放于内部RAM的40H(高位字节), 41H(低位字节), 加数存放于50H(高位字节), 51H(低位字节), 和数存入 40H和41H单元中。 2022年年5月月31日日程序如下: START: CLR C ; 将Cy清零w MOV R0, 41H ; 将被加数地址送数据指针R0w MOV R1, 51H ; 将加数地址送数据指针R1 AD1: MOV A,
10、R0 ; 被加数低字节的内容送入AwADD A,R1 ; 两个低字节相加wMOV R0, A ; 低字节的和存入被加数低字节中w DEC R0 ; 指向被加数高位字节w DEC R1 ; 指向加数高位字节w MOV A, R0 ; 被加数高位字节送入AwADDC A, R1 ; 两个高位字节带Cy相加w MOV R0, A ; 高位字节的和送被加数高位字节2022年年5月月31日日2022年年5月月31日日(a) 单分支流程单分支流程; (b) 多分支流程多分支流程 例 设变量X存放在内部RAM 30H单元,函数值Y存入内部RAM 31单元。试编程,按照下式的要求给赋值。2022年年5月月31
展开阅读全文