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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

《单片机原理及接口技术》第二版余锡存著课后习题答案.docx

1、单片机原理及接口技术第二版余锡存著课后习题答案第二章1.89C51、87C51、80C51和80C31单片机的主要区别在那里?答:相同之处是:制造工艺都为CHMOS,都有128字节片内RAM、两个定时/计数器、4个8位I/O并行口,一个串行口和5个中断源。主要区别: 89C51片内4K字节FLASHROM; 87C51片内4K字节EPROM; 80C51片内4K字节 掩膜ROM; 80C31片内无程序存储器。2.MCS-51单片机引脚有多少I/O线?它们和单片机对外的地址总线和数据总线有何关系?答:4个8位I/O并行口,一个串行口;其中P0口为外接程存和数存的地址低8位和数据总线的时分复用接口

2、;其中P2口为外接程存和数存的地址高8位总线接口;其中P1口为真正的用户口线;其中P3口有第2功能;以上4个口线在没有专用功能时,也可以做通用I/O口线用。3.简述8031片内RAM区地址空间的分配特点。答:MCS-51 单片机片内RAM为 256 字节, 地址范围为00HFFH, 分为两大部分: 低 128 字节(00H7FH)为真正的RAM区; 高 128 字节(80HFFH)为特殊功能寄存器区SFR。 在低 128 字节RAM中, 00H1FH共 32 单元是 4 个通用工作寄存器区。每一个区有 8 个通用寄存器R0R7。4. MCS-51单片机由哪几个部分组成。答: 一个8位CPU;

3、4KB ROM or EPROM(8031无ROM); 128字节RAM数据存储器; 21个特殊功能寄存器SFR; 4个8位并行I/O口,其中P0、P2为地址/数据线,可寻址64KB 程序存储器和64KB 数据存储器; 一个可编程全双工串行口; 具有5个中断源,两个优先级,嵌套中断结构; 两个16位定时器/计数器; 一个片内振荡器及时钟电路。7. 8. 4. 5. 6. 5. MCS-51单片机的信号各自的功能是什么?答:都是控制总线:访问内部程序存储器的控制信号/编程电压输入端。时,CPU从片内读取指令,CPU从片外读取指令。:地址锁存允许/编程信号线。:外部程序存储器读选通信号。:复位输入

4、信号/掉电保护后备电源引脚。6.MCS-51单片机如何实现工作寄存器组的选择?RS1(PSW.4)、RS0(PSW.3) 为工作寄存器组的选择位; 取值为00时选择第0组工作寄存器,片内RAM地址是00H07H,名称为R0R7; 取值为01时选择第1组工作寄存器,片内RAM地址是08H0FH,名称为R0R7; 取值为10时选择第2组工作寄存器,片内RAM地址是10H17H,名称为R0R7; 取值为11时选择第3组工作寄存器,片内RAM地址是18H1FH,名称为R0R7。7. 什么是时钟周期、机器周期、指令周期?当单片机的时钟频率为12MHz时,一个机器周期是多少?ALE引脚的输出频率是多少?(

5、1) 振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的周期。 (2) 状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后得到的。 (3) 机器周期: 一个机器周期包含 6 个状态周期S1S6, 也就是 12 个时钟周期。 在一个机器周期内, CPU可以完成一个独立的操作。(4) 指令周期: 它是指CPU完成一条操作所需的全部时间。 每条指令执行时间都是有一个或几个机器周期组成。MCS - 51 系统中, 有单周期指令、双周期指令和四周期指令。 当单片机的时钟频率为12MHz时,一个机器周期是多少1s(微秒);ALE引脚的输出频率是多少2s(微秒)。第三章1.

6、 MCS-51指令系统按功能分为几类?具有几种寻址方式?他们的寻址范围如何? 答: 按功能分为5类,分别是: 数据传送类、算术操作类、逻辑操作类、控制转移类和位操作类; 具有7种寻址方式; 立即寻址,寻址范围是程序存储器; 直接寻址,寻址范围是内部RAM低128字节和高128字节;寄存器寻址,寻址范围是四组工作寄存器R0R7;寄存器间接寻址,寻址范围是内部RAM的低128和外部RAM低64K可寻址空间;基址寄存器加变址寄存器间接寻址,寻址范围是程序存储器; 相对寻址,寻址范围是以下一条指令为相对地址的-128+127字节范围内; 位寻址,寻址范围是可位寻址空间,包括内部RAM的可寻址位,特殊功

7、能寄存器中的可寻址位。2.设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0,和内部RAM中50H、51H单元的内容为和值?答:MOV A,59H ; (A)=(59H)=50HMOV R0,A ; (R0)=50HMOV A,#00 ; (A)=00MOV R0,A ; (R0)=(50H)=00MOV A,#25H ; (A)=25HMOV 51H,A ; (51H)=25HMOV 52H,#70H ; (52H)=70H执行下列程序段后:(A)=25H,(R0)=50H, (50H)=00、(51H)=25H3.PSW中Cy与OV有何不同?下列程序段执行后(Cy

8、)=?(OV)=?。MOV A,#56HADD A,#74H 答:Cy进位、借位标志位;OV溢出标志位。MOV A,#56H ;(A)=56H=0101 0110 BADD A,#74H ;(A)=56H+74H=0CAH=1100 1010B , 程序执行后:(Cy)=0(OV)=14.MOVC A,A+DPTR与MOVX A,DPTR指令有何不同?答: MOVC A,A+DPTR ;寻找的操作数在程序存储器中,地址是:(A)+(DPTR); MOVX A,DPTR ;寻找的操作数在外部数据存储器中,地址是:(DPTR)。5. AJMP、LJMP、SJMP指令功能上有何不同?答:相同之处,都

9、是无条件转移指令。 AJMP addr11 ;下调指令为基准的2KB范围内的跳转指令。 LJMP addr16 ;转移的目标地址可以在64KB程序存储器的任何地方。 SJMP rel ;下调指令为基准的-128B+127B范围内的短跳转指令。6.设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化?PUSH 30HPUSH 31HPOP DPLPOP DPHMOV 30H,#00HMOV 31H,#0FFH答:PUSH 30H ;(61H)= (30H) = 24HPUSH

10、31H ; (62H) = (31H) = 10HPOP DPL ; (DPL) = (62H) = 10HPOP DPH ; (DPH) =(61H)= 24HMOV 30H,#00H ; (30H) = 00HMOV 31H,#0FFH ; (31H) = 0FFH程序执行后:(61H)= 24H, (62H) = 10H, (30H) = 00H, (31H) = 0FFH,(DPTR) = 2410H7.试分析下列程序段,当程序执行后,位地址00H和01H中的内容将为何值?P1口的8条I/O线为何状态?CLR CMOV A,#66HJC LOOP1CPL CSETB 01HLOOP1:

11、 ORL C,ACC.0JB ACC.2,LOOP2LOOP2: MOV P1,A答: CLR C ; (Cy)=0MOV A,#66H ; (A) = 66H = 0110 0110 BJC LOOP1 ; 因 此时(Cy)=0 ,所以不跳转CPL C ; (Cy) = 1SETB 01H ; (01H)= 1LOOP1: ORL C,ACC.0 ; (Cy) =(Cy)(ACC.0) = 1JB ACC.2,LOOP2 ; 因(ACC.2) = 1LOOP2: MOV P1,A ; (P1)= 0110 0110 B8.要完成以下的数据传送,应如何用MCS-51指令实现? R1的内容传送到

12、R0; 片外RAM 20H单元的内容送R0; 片外RAM 20H单元的内容送片内RAM 20H单元; 片外RAM 1000H单元的内容送片内RAM 20H单元; ROM 2000H 单元的内容送R0; ROM 2000H 单元的内容送片内RAM 20H单元; ROM 2000H 单元的内容送片外RAM 20H单元。答: R1的内容传送到R0;MOV A,R1MOV R0,A 片外RAM 20H单元的内容送R0;MOV R1,#20HMOVX A,R1MOV R0,A 片外RAM 20H单元的内容送片内RAM 20H单元;MOV R1,#20HMOVX A,R1MOV 20H,A 片外RAM 1

13、000H单元的内容送片内RAM 20H单元;MOV DPTR,#20HMOVX A,DPTRMOV 20H,A ROM 2000H 单元的内容送R0;MOV DPTR,#2000HCLR AMOVC A,A+DPTRMOV R0,A ROM 2000H 单元的内容送片内RAM 20H单元;MOV DPTR,#2000HCLR AMOVC A,A+DPTRMOV 20H,A ROM 2000H 单元的内容送片外RAM 20H单元。MOV DPTR,#2000HCLR AMOVC A,A+DPTRMOV R0,#20HMOVX R0,A9.分析以下程序每条指令执行的结果:MOV A, #25H ;

14、 (A) = 25HMOV R1,#33H ; (R1) = 33HMOV 40H,#1AH ; (40H) = 1AHMOV R0,40H ; (R0) = 1AHADD A,R1 ; (A) = 25H + 33H = 58HADDC A,R0 ; (A) = 58H + (1AH) + (Cy) = 58H ADDC A,40H ; (A) = 58H + 1AH + (Cy) = 72H10.设A=83H,R0=17H,(17H)=34H,执行下列程序后,(A) = ?ANL A,#17H ; (A) = 1000 0011B0001 0111B = 0000 0011BORL 17H

15、,A ; (17H) = 0011 0100B0000 0011B = 0011 0111BXRL A,R0 ; (A) = 0000 0011B0011 0111 = 0011 0100BCPL A ; (A) = 1100 1011B11.两个4位BCD码数相加,被加数和加数分别存于30H、31H和40H、41H单元中(次序为千位、百位在低地址中,十位、个位在高地址中),和数放在50H、51H、52H中(52H用于存放最高位的进位),试编写加法程序。解: ORG 00HMOV 30H, #12H ; MOV 31H, #34H ; MOV 40H, #56H ; MOV 41H, #78H

16、 ; MOV A, 31H ; 取被加数十个位ADD A, 41H ; 相加,(A) = (31H) + (41H) DA A ; 十进制调整MOV 51H,A ; 存十位个位运算结果MOV A, 30H ; 取被加数千百位ADDC A, 40H ; 相加,(A) = (30H) + (40H)DA A ; 十进制调整MOV 50H,A ; 存千位百位运算结果CLR A ; 清AADDC A,#0 ; 将进位加到A中MOV 52H, A ; 存进位SJMP $12.试编写一程序,查找内部RAM单元的20H50H中是否有0AAH这一数据,若有,则将51H单元置为01H,若没有,则使51H单元置0

17、。解: ORG 00HMOV 30H, #0AAH ;MOV R1, #31H ; MOV R0, #20H ; BIJIAO: MOV A, R0CJNE A, #0AAH , LOOP; MOV 51H,#01HSJMP JIESHULOOP: INC R0DJNZ R1,BIJIAOMOV 51H,#00HJIESHU :SJMP $第四章1、若有两个符号数X,Y分别存放在内部存储器50H、51H单元中,试编写一个程序实现X*10+Y,结果存入52H、53H中。1 ORG 00H0000 7850 2 MOV R0,#50H0002 E6 3 MOV A,R00003 75F00A 4

18、MOV B,#0AH0006 A4 5 MUL AB0007 08 6 INC R00008 26 7 ADD A,R00009 08 8 INC R0000A A6F0 9 MOV R0,B000C 08 10 INC R0000D F6 11 MOV R0,A12 END2、在以3000H为首地址的外部RAM中,存放了14个以ASCII码表示的09的数,试编写程序将它们转换成BCD码,并以压缩BCD形式存放在以2000H为首地址的外部RAM中。1 ORG 00H0000 903000 2 MOV DPTR,#3000H ; 原始数据首地址0003 7807 3 MOV R0,#07 ; 循

19、环次数0005 7930 4 MOV R1,#30H ; 转换结果暂存区指针0007 E0 5 CH1: MOVX A,DPTR0008 550F 6 ANL A, #00001111B000A C4 7 SWAP A000B F5F0 8 MOV B,A000D A3 9 INC DPTR000E E0 10 MOVX A,DPTR000F 550F 11 ANL A, #00001111B0011 45F0 12 ORL A,B0013 F7 13 MOV R1,A0014 09 14 INC R10015 A3 15 INC DPTR0016 D8EF 16 DJNZ R0,CH1001

20、8 902000 17 MOV DPTR,#2000H ; 转换结果存储区001B 7A07 18 MOV R2,#07H ; 结果个数001D 7930 19 MOV R1,#30H001F E7 20 CH2: MOV A,R1 ;3、采样的5个值分别存放在R0、R1、R2、R3、R4中,求出它们的中间值,并存放在R2中。1 ORG 00H 0000 7805 2 MOV R0,#50002 7906 3 MOV R1,#60004 7A07 4 MOV R2,#70006 7B08 5 MOV R3,#80008 7C09 6 MOV R4,#9000A E4 7 CLR A ;000B

21、 C3 8 CLR C ;000C E8 9 MOV A,R0 ;000D 29 10 ADD A,R1 ;000E 2A 11 ADD A,R2 ;000F 2B 12 ADD A,R30010 2C 13 ADD A,R40011 75F005 14 MOV B,#50014 84 15 DIV AB0015 FA 16 MOV R2,A0016 17 END 18 END4、以BUF1为起始地址的外部数据存储区中存放着16个单字节的无符号数,求其平均值并送入R2中。1 ORG 00H2 BUF1 EQU #1000H0000 901000 3 MOV DPTR BUF10003 AA00

22、 4 MOV R2,00005 7816 5 MOV R0,#16H0007 E0 6 SUM: MOVX A,DPTR 0008 2A 7 ADD A,R20009 FA 8 MOV R2,A 000A A3 9 INC DPTR000B D8FA 10 DJNZ R0,SUM000D 75F010 11 MOV B,#10H0010 84 12 DIV AB0011 FA 13 MOV R2,A14 END5、试编写程序,将内部RAM单元中DATA1开始的20个单字节数依次与DATA2单元为起始地址的20个单字节数据进行交换。 1 DATA1 EQU #30H2 DATA2 EQU #50

23、H3 LEN EQU #164 ORG 0H0000 7830 5 MOV R0,DATA10002 7950 6 MOV R1,DATA20004 7A10 7 MOV R2,LEN0006 E6 8 EXC: MOV A,R00007 C7 9 XCH A,R10008 F6 10 MOV R0,A0009 08 11 INC R0000A 09 12 INC R1000B DAF9 13 DJNZ R2,EXC14 END6、某场歌手赛,共有10个评委,试编写一程序,输入10个评分,去掉最高分和最低分,求平均分(均为BCD码)。ORG 0HN EQU #5BLOCK EQU #30HISELSORT: MOV R7,NDEC R7MOV R1,BLOCKISST1: MOV R0,BLOCKMOV A,R7MOV R6,AMOV A,R0MOV B,AISST2: INC R1MOV A,R1CLR CSUBB A,BJC ISST3MOV A,R1MOV R2,AMOV B,R1ISST3: DJNZ R6,ISST2MOV A,BXCH A,R1MOV B,R2MOV R1,BMOV R1,ADJNZ R7,ISS

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2