版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第伍章
汇编程序设计本章内容5.1概述(了解)5.2伪指令(重点)5.3汇编语言程序设计步骤(掌握)5.4顺序程序设计(掌握)
5.5分支程序设计(掌握)5.6循环程序设计(掌握)5.7位操作程序设计(掌握)5.1概述(1)从编程的角度,汇编程序设计你可能不会,但一定要能看懂别人编写的汇编程序;(2)从考试的角度,学生必须能编写基本的顺序、分支、循环、位操作等程序;(3)本章列举大量例题,考虑到课时限制,老师可以在一种形式的汇编设计中挑选一个有代表性的例题进行讲解,其他可由学生根据自己实际情况自学;(4)在讲解例题时,建议老师用粉笔在黑板上一步一步讲解。5.1概述课题:嵌入式打标机的程序调试过程5.2伪指令(1)伪指令的概念:首先,伪指令是指令,所以伪指令出现在源代码文件中;其次,伪指令有个“伪”字,所以它不产生机器码,也即伪指令在编译后不占用ROM,CPU无法执行。伪指令的作用是,用于告诉汇编器,源代码文件中哪些是指令、哪些是数据及数据的字长、程序的起始地址和结束地址等,以及告诉汇编器该源代码编译后的机器码存放在ROM中什么位置,等等。伪指令只是起指示作用,告诉汇编器如何对待该源代码文件。伪指令与汇编器有关,也即,MASM6.0能识别的伪指令,在MASM2.0中不一定能识别。但是只要是为单片机汇编语言设计的汇编器,所有真正的单片机指令都能识别。5.2伪指令(2)伪指令的一个例题:
OGR100HTAB3:DW5678H,10
第一行,伪指令告诉汇编器,下面的东西将存在ROM中的100H处。第二行的结果是:(100H)=56H,(101H)=78H,(102H)=00H,(103H)=0AH。
这里充分体现了单片机的大端格式特点。56H是高8位、78H是低8位。其他伪指令,请参见教材5.2小节。
5.4顺序程序【例5-2】若R4R5为双字节负数,编写其求补程序。解:程序如下:ORG0000H MOV A,R5 ;取低字节
CPL A ADD A,#1 ;低字节变补
MOV R5,A MOV A,R4 ;取高字节
CPL A ADDC A,#0 ;加低8位的进位
ORLA,#80H ;恢复负号
MOV R4,A END5.5分支程序【例5-4】求8位有符号数的绝对值。解:利用JNB指令来判断符号位,以确定正负数,如是正数则不变,如是负数则变补。程序如下:ORG0000HMOVA,R2 JNBACC.7,N;为正数?
CPLA ;负数变补
INCA MOVR2,AL1:SJMP$ ;结束5.6循环程序【例5-8】设计将片外RAM的2000H单元开始的50个存储单元清零的程序。解:程序如下:
ORG1000HCLEAR:CLRA;清AMOVR2,#32H;循环次数50MOVDPTR,#2000H;建立地址指针
LOOP:MOVX@DPTR,AINCDPTRDJNZR2,LOOP;R2-1≠0,转LOOPRET;R2-1=0循环结束5.7位操作程序【例5-12】编写程序实现逻辑表达式Q=XYZ+X解:设变量X、Y、Z、Q对应的口线为:X:P1.0Y:P1.1Z:P1.2Q:P1.7程序如下:ORG1000HMOVC,P1.0ANLC,P1.1ANLC,P1.2MOVF0,C;用户标志位F0用来暂存中间结果XYZMOVC,P1.0ANLC,/P1.2ORLC,F0MOVP1.7,CEND5.8子程序【例5-14】编程实现Y=X12+X22。解:;子程序名:SQR1;主程序:
ORG00HX1EQU30HX2EQU40HYEQU50HSTART:MOVA,X1ACALLSQR1 MOVR1,A;X12值暂存R1 MOVA,X2;X22取值
ACALLSQR1 ADDA,R1;求X12
+X22 MOVY,A;存入子程序ORG0100H0100SQR1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理评估中的疼痛管理
- 护理研究中的跨文化研究方法
- 护理基本护理伦理学
- 2005年7月国开电大行政管理本科《城市管理学》期末纸质考试试题及答案
- 护理教学比赛活动推广
- 护理教学研究:方法与成果
- 护理团队冲突管理与解决
- 护理服务品牌建设
- 快手平台内容审核部招聘与面经
- 快递公司业务部经理的招聘全解
- 2026年陕西航空职业技术学院单招职业适应性测试题库带答案详解(能力提升)
- 2026年自贡市市本级招用高校毕业生从事公共服务(58人)笔试参考题库及答案解析
- 【2026年中考复习】全国中考物理真卷综合能力题100道(上)
- 2026年雨季安全驾驶试题及答案
- 高中历史必背阶段特征-2026届高三统编版历史一轮复习(选必融合)
- 2026年安徽工商职业学院单招职业技能测试题库带答案详解ab卷
- 2026年安徽工贸职业技术学院单招职业技能测试题库带答案详解(基础题)
- 纳税人员财会制度
- 2026年西安科技大学辅导员招聘(15人)考试参考试题及答案解析
- 医保局联席会议制度
- 2026年南京铁道职业技术学院单招职业适应性测试题库及答案详解(名校卷)
评论
0/150
提交评论