ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:21.23KB ,
资源ID:5710846      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5710846.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片微机原理及应用徐春辉第5章习题答案.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片微机原理及应用徐春辉第5章习题答案.docx

1、单片微机原理及应用徐春辉第5章习题答案单片微机原理及应用-徐春辉第5章-习题答案练习与思考题51. 用于程序设计的语言分为哪几种?它们各有什么特点?答:51系列单片机的编程语言可以分为汇编语言和高级语言(如C语言)两种,各自的特点如下:名称特点缺点优点适用场合汇编语言用符号书写指令(用助记符表示操作码,特殊符号表示操作数)机器不能直接识别;程序员必须了解机器的结构和指令系统,不易推广和普及;不能移植,不具备通用性较易为人们识别、记忆和读写实时控制系统高级语言用以英语为基础的语句编程机器不能直接识别;执行时间长易于推广和交流;不依赖于机器,具有通用性科学运算和数据处理2. 说明伪指令的作用。“伪

2、”的含义是什么?常用的伪指令有哪些?其功能是什么?答:伪指令是在“机器汇编”过程中,用来对汇编过程进行某种控制或者对符号和标号进行赋值。“伪”的含义是指这些指令不属于指令系统中的指令,汇编时也不产生机器代码。常用伪指令有ORG、EQU、DATA、DB、DW、DS、BIT 、END。功能:ORG -指出后面程序块或数据块在程序存储器中存放的起始地址。EQU -赋值命令DATA-对数据地址或代码地址赋予规定的字符名称DB -定义字节数据DW -定义字数据DS-从指定的地址单元开始,保留若干单元备用。BIT-定义位地址符号命令END-汇编结束命令3. 设常量和数据标号的定义为: ORG 2000H

3、DAT1: DB 1, 2, 3, 4, 5 DAT2: DB ABCD DAT3: DW 1200H,-2 TAB: DW DAT1, DAT3 (1)画出上述数据或地址的存储形式。 (2)写出各标号的地址。答:(1)地址内容(H)2000H01020304052005H414243442009H1200FFFE200DH20002009 (2)DAT1=2000H; DAT2=2005H; DAT3=2009H; TAB =200DH4. 编写双字节加法程序。要求:被加数放在内部RAM的30H(高字节)、31H(低字节)单元中,加数存放在内部RAM的32H(高字节)和33H(低字节)中,运

4、算结果放存放在30H,31H中,进位存放在位寻址区的00H位。答: ORG 0000H MOV A, 31H ADD A, 33H MOV 31H, A MOV A, 30H ADDC A, 32H MOV 30H, A MOV 00H, C SJMP $ END5. 试编写程序,找出片内RAM 30H5FH单元中无符号数的最大数,并将结果存入60H单元。答: ORG 0000H MOV R0, #30H MOV R7, #2FH MOV A, R0AGAIN: INC R0 MOV B, A CLR C SUBB A, R0 JNC L1 MOV A, R0 AJMP L2L1: MOV A

5、, BL2: DJNZ R7, AGAIN MOV 60H, A SJMP $ END6试编写程序,统计片内RAM的20H5FH单元中出现55H的次数,并将统计结果送60H单元。答: TAB EQU 20H ORG 0000H START: MOV 60H, #0 MOV R0, #TAB LOOP2: MOV A, #55H CLR C SUBB A, R0 JNZ NEXT INC 60H NEXT: INC R0 CJNE R0, #60H, LOOP2 SJMP $ END7编写程序,将片外数据存储区中3000H30FFH单元全部清零。答: ORG 0000H START: MOV A

6、, #0 MOV R7, #0 MOV DPTR, #3000H LOOP: MOVX DPTR, A INC DPTR DJNZ R7, LOOP SJMP $ END8. 将外部RAM 8000H开始的20个字节数据传送到外部RAM 8100H开始的地址单元中去。答: DATA1 EQU 8000HDATA2 EQU 00H ORG 0000H START: MOV DPTR, #DATA1 MOV R0, #DATA2 MOV R7, #20 LOOP: MOVX A, DPTR MOV P2, #81H MOVX R0, A INC R0 INC DPTR DJNZ R7, LOOP

7、SJMP $ END9. 编程统计累加器A中“1”的个数。答:以下程序将A中“1”的个数放在30H单元。DAT EQU 37H ORG 0000H START: PUSH ACC MOV A, #DAT MOV 30H, #0 NEXT: JZ EXIT CLR C RLC A JNC L1 INC 30H L1: AJMP NEXT POP ACC EXIT: SJMP $ END10. 编写程序,将30H34H单元中压缩的BCD码数(每个字节存放两个BCD码数)转换为ASCII码数,并将结果存放在片内RAM 60H69H单元。答: ORG 0000H START: MOV R0, #30H

8、 MOV R1, #60H MOV R7, #2 AGAIN: MOV A, R0 ANL A, #0F0H SWAP A ADD A, #30H MOV R1, A MOV A, R0 ANL A, #0FH ADD A, #30H INC R1 MOV R1, A INC R0 INC R1 DJNZ R7, AGAIN SJMP $ END11将内部RAM 30H单元的内容转换成三位BCD码(百位、十位、个位),并将结果存入外部RAM 1000H开始的单元。答: ORG 0000H START: MOV A, 30H MOV DPTR, #1000H MOV B, #100 DIV AB

9、 MOVX DPTR, A INC DPTR MOV A, B MOV B, #10 DIV AB MOVX DPTR, A MOV A, B INC DPTR MOVX DPTR, A SJMP $ END12. 请使用位操作指令,编程实现,其中,20H、2FH、2AH都是位地址。答: ORG 0000H MOV C, 20H ANL C, 2FH CPL C ORL C, 2AH MOV P1.0, C SJMP $ END 13.简述利用Keil Vision调试汇编语言程序的主要步骤。答:利用Keil Vision调试软件的主要步骤包括:建立工程(project)编写汇编语言源程序并保

10、存在工程中添加源文件设置工程编译并连接,创建目标文件调试程序。14.如何产生.hex文件?答:编译并连接时,在 “Project Workspace”窗口中,右键Target 1,选择Options For TargetTarget1选项,弹出“option for Target”对话窗,选Output选项卡,选中Create HEX File。15.在Keil Vision环境中,如何查看寄存器和数据存储单元内容?答:点击“Regs”,可查看寄存器的内容。在Keil的菜单栏中,选择ViewMemory Window选项,打开Memory对话窗,在Address栏中输入地址 “D: 0030H”,查看片内RAM中0030H的内容。(X:外部数据存储器,C:程序存储器)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1