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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

新编单片机原理与应用课后答案.docx

1、新编单片机原理与应用课后答案习题一参考答案1-1 假设某CPU含有16根地址线,8根数据线,那么该CPU的最大寻址能力为多少KB? 答:CPU的最大寻址能力为:1-2 在计算机里,一般具有哪三类总线?请说出各自的特征(包括传输的信息类型、单向传输还是双向传输)。 答:1、数据总线,双向,输入输出数据信息; 2、地址总线,单向,输出地址信息; 3、控制总线,具体到某一根控制线为单向,输入或者输出控制信息;1-3 MCS-51系列单片机时钟周期、机器周期与指令周期这三者关系如何?CISC指令系统CPU所有指令周期是否均相同?答:时钟周期即为振荡周期,由外接晶振频率或外部输入的时钟频率决定,机器周期

2、由12个时钟周期(或6个)构成,指令周期由14个机器周期构成;指令周期因具体指令不同而不同;1-4 计算机字长的含义是什么?MCS-51单片机的字长是多少?答:计算机字长是指CPU一次能够处理的信息位长度;MCS-51单片机的字长是8位。1-5 ALU单元的作用是什么?一般能完成哪些运算操作?答:ALU单元的作用是进行算术逻辑运算;算术运算主要是加、减、乘、除,逻辑运算主要是与、或、非、异或等。1-6 CPU内部结构包含了哪几部分?单片机(MCU)芯片与通用微机CPU有什么异同?答:CPU主要包括算术逻辑单元ALU、控制单元CU和内部寄存器;单片机(MCU)芯片是在通用CPU的基础上增加存储器

3、、定时器/计数器、通信接口以及各种接口电路等构成。1-7 在单片机系统中常使用哪些存储器?答:包括程序存储器ROM和数据存储器RAM。1-8 指令由哪几部分组成? 答:一般由操作码和操作数组成,部分指令只有操作码而无操作数。1-9、什么是汇编语言指令?为什么说汇编语言指令比机器语言指令更容易理解和记忆?通过什么方式可将汇编语言程序转化为机器语言程序?答:【1】用助记符表示的指令【2】因为在汇编语言指令中每条操作码、操作数都是用特定符号表示;而机器语言中的操作码和操作数均用二进制表示,没有明显特征【3】可通过专门的软件或手工查表方式1-10、汇编语言程序和汇编程序这两个术语的含义是否相同?答:两

4、者含义不同;1.汇编语言程序指由汇编语言指令构成的程序; 2.汇编程序指将完成汇编语言指令转换为机器语言指令的程序1-11、什么是寻址方式?对于双操作数指令来说,为什么不需要指定操作结果存放位置?答:【1】确定指令中操作数所在存储单元地址的方式 【2】在现代计算机系统中,对于双操作数指令,一般将指令执行后的结果放在第一个操作数(即目标操作数),这样可以减少指令码的长度1-12、指出下列指令中每一操作数的寻址方式?答:【1】目标操作数为寄存器寻址,源操作数为立即数寻址【2】目标操作数为直接寻址,源操作数为寄存器寻址【3】目标操作数为直接寻址,源操作数为直接寻址【4】目标操作数为直接寻址,源操作数

5、为寄存器间接寻址【5】寄存器寻址注:在单片机中,问到指令的寻址方式,既要答目标操作数的寻址方式,也要答源操作数的寻址方式,这与微机不同,请切记!1-13、单片机的主要用途是什么?新一代8位单片机芯片具有哪些主要技术特征?列举目前应用较为广泛的8位、32位单片机品种。答:【1】数值计算,能实时监测系统的输入量,控制系统的输出量,从而实现自动控制功能,主要面向工业控制等【2】可参考23页【3】可参考2122页习题二参考答案2-1 80C54、80C32、87C54、89C54 CPU有什么不同?在由80C32芯片组成的应用系统中引脚是如何连接的?为什么要这样连接?答:略2-2 8XC5X,如89C

6、52单片机内部含有哪几类存储器?各自的容量分别是多少?答:包括程序存储器8K和数据存储器256B。2-3 8XC5X 系列CPU 共有多少根I/O引脚?在什么情况下,不能将P0口作为通常意义上的输入/输出引脚使用?答:共有I/O引脚32根;在P0作为地址数据总线端口使用时就不能作为普通I/O口使用。2-4 简述P1口的内部结构。为什么将P1口引脚作为输入引脚使用前,一定要向P1口锁存器相应位写入“1”?答:主要由两个三态门、一个D型锁存器、一个MOS管和一个上拉电阻构成;P1作为输入引脚使用时一定要先写入“1”,其目的是使内部MOS管处于截止状态,避免MOS管对输入信号构成影响。2-5 根据8

7、XC5X 系列CPU P1P3口结构,如果用P1.x引脚驱动NPN三极管,则最大集电极电流ICMAX为多少?(假设取100)。答:假设内部上拉电阻的阻值为,三极管发射结正向导通电压为,则:基极电流:集电极电流:2-6 地址/数据分时复用的含义是什么?8XC5X P0口与存储器,如62256相连时,两者之间需要接什么功能的芯片,才能锁存低8位地址信息?试画出8XC5X与SRAM 62256芯片(作数据存储器使用)之间的连接图。答:地址/数据分时复用是指总线既可作为数据线,也可作为地址线,但是具体到某一时刻只能作为数据线或者地址线;与62256相连时,在存储芯片和单片机芯片之间必须加锁存芯片,如7

8、4LS373等,用来锁存低8位地址信息;连接电路图(见课本,略)2-7 8XC5X单片机CPU复位后,使用了哪一工作寄存器区?其中R1对应的物理存储单元地址是什么?答:8XC5X单片机CPU复位后,使用了工作寄存器区0;此时R1对应的物理存储单元的地址为01H。2-8 如果希望工作寄存器组中R0对应的物理存储单元为10H,请写出系统复位后,实现这一要求的指令。答: SETB CS1 CLR CS02-9 说出访问下列寄存器或存储空间可以使用的寻址方式,并举例:(1) 8XC5X系列内部RAM前128字节。答:直接和寄存器间接寻址。(2) 8XC52/54/58系列内部RAM后128字节。答:寄

9、存器间接寻址(3) 特殊功能寄存器。答:直接寻址。(4) 外部数据存储器。答:寄存器间接寻址2-10 8XC5X CPU的机器周期与时钟周期是什么关系?如果晶振频率为12MHz,则一个机器周期是多少微秒?答:1)、12个时钟周期构成1个机器周期。 2)、1uS2-11 8XC5XX2 CPU的机器周期与时钟周期是什么关系?为什么说当CKCON寄存器为01H时,时钟频率为6MHz的8XC5XX2系统运行速度与时钟频率为12MHz的8XC5X系统的运行速度相同?答:可以选择“机器周期/12时钟”或“机器周期/6时钟”。当CKCON寄存器为01H时,时钟频率为6MHz的的8XC5XX2机器周期为:。

10、而时钟频率为12MHz的8XC5X系统的机器周期为:。2-12 在晶振输出端X2引脚应观察到什么样的波形?当晶振频率较低时,如何使X2引脚输出为理想状态下的波形?答:方波。2-13 分析MCS-51写外部数据存储器写时序,说明为什么可使用74LS573或74LS373芯片扩展MCS-51的输入口,而不能扩展输出口。请画出使用两片74LS373芯片扩展MCS-51的输入口、使用两片74LS237扩展输出口的电路图(假设系统中无需扩展外部存储器)。答:使用边沿触发器作为输出锁存器时可以可靠的锁存输出数据。2-14 8XC5X CPU复位后内部RAM各单元的内容是否改变?程序计数器PC的值是什么?答

11、:否。此时PC=0000H.2-15 MCS-51单片机通过什么指令读/写外部数据存储器?通过什么引脚选通外部数据存储器?答:使用MOVX读写外部数据存储器。通过或者.2-16 画出由一片80C32 CPU、一片27128EPROM和一片6264 SRAM组成的单片机应用系统,要求给出有关信号的连接以及各自存储空间的地址范围。答:略2-17 在图2-7所示的电路中,假设驱动引脚为P1.0,则执行了如下程序段后,累加器Acc的内容为什么?这又说明了什么?SETB P1.0JB P1.0,NEXT1MOV A,#0AAHSJMP EXITNEXT1: MOV A,#55HEXIT: NOP 答:A

12、cc的内容为AAH。因为JB P1.0, NEXT1是根据P1.0的电平进行判断转移,如果P1.0引脚的电平为高则转移。因为三极管导通时P1.0引脚被钳位到低电平。习题三参考答案3-1 MCS-51内部RAM低128字节支持哪些寻址方式?请写出用不同寻址方式将内部RAM 30H单元信息传送到累加器A的指令或程序片段;内部RAM高128字节支持哪些寻址方式?请写出将内部RAM 80H单元内容传送到累加器A的指令或程序片段。答:略:3-2 简述“RET”与“RETI”指令的区别。答:1)RET是子程序返回指令,RETI是中断服务程序返回指令; 2)RETI在返回时会清除有关中断标志位,而RET不具

13、有此功能。3-3 指出下列指令中每一操作数的寻址方式。 (1) MOV 40H,A(2) MOV A,R0(3) MOVX DPTR,A(4) MOVC A,ADPTR(5) ADD A,#23H(6) PUSH Acc(7) MOV P1,32H(8) MOV C,P1.0(9) INC P0(10) DEC R2(11) SJMP EXIT 答:略3-4 执行“CJNE A,#60,NEXT”指令后,寄存器A中的内容是否被改变?请验证。 答:否。3-5 写出实现下列要求的指令或程序片段,并在仿真机上验证。(1) 将内部RAM 20H单元内容与累加器A相加,结果存放在20H单元中。答: AD

14、D A, 20H MOV 20H, A(2) 将内部RAM 80H单元内容与内部RAM 31H单元内容相加,结果存放到内部RAM 的31H单元中。 答: MOV R0, #80H MOV A, R0 ADD A, 31H MOV 31H, A(3) 将内部RAM 20H单元内容传送到外部RAM 20H单元中。 答: MOV A, 20H MOV DPTR, #0020H MOVX DPTR, A (4) 将程序状态字寄存器PSW内容传送到外部RAM的0D0H单元中。 答: MOV A, PSW MOV DPTR, #00D0H MOVX DPTR, A(5) 将内部RAM 08H7FH单元,共

15、120字节传送到以8000H为首地址的外部RAM中。 答: MOV DPTR, #8000H MOV R0, #08H MOV R2, #120LOOP: MOV A, R0 MOVX DPTR, A INC R0 INC DPTR DJNZ R2, LOOP END (6) 将外部RAM 8000H0803FH单元,共64字节传送到以40H为首地址的内部RAM中。答: MOV DPTR, #8000H MOV R0, #40H MOV R2, #64LOOP: MOVX A, DPTR MOV R0, A INC DPTR INC R0 DJNZ R2, LOOP END(7) 将外部RAM

16、 8000H0807FH单元,共128字节传送到以0000H为首地址的外部RAM中。答: AURX1 EQU 0A2H ;注意要自己定义 MOV DPTR, #8000H INC AUXR1 MOV DPTR, #0000H INC AUXR1 MOV R0, #128LOOP: MOVX A, DPTR INC DPTR INC AUXR1 MOVX DPTR, A INC DPTR INC AUXR1 DJNZ R0, LOOP END (8) 将存放在内部RAM 的40H、41H和外部RAM的 8000H、8001H的16位二进制数相加,结果存放在内部RAM 的40H和41H单元中(假设

17、低位字节存放在低地址中)。答: MOV DPTR, #8000H MOVX A, DPTR ;注意使用MOVX指令,下同 ADD A, 40H MOV 40H, A INC DPTR MOVX A, DPTR ADDC A, 41H MOV 41H, A END (9) 如果09七段数码显示器对应的字模码3FH,06H,5BH,4FH,66H,6DH,7DH, 07H,7FH,6FH存放在1000H为首地址的程序存储器中,写出将数字4对应的字模码输出到外部RAM 3003H单元(即扩展I/O端口地址)的程序段。答: MOV DPTR, #1000H MOV A, #4 MOVC A, A+DP

18、TR ;注意使用MOVC指令 MOV DPTR, #3003H MOVX DPTR, A ;注意使用MOVX指令 ORG 1000H DB 03FH,06H,5BH,4FH,55H,66H,6DH,6DH,07H,7FH,6FH END(10) 将内部RAM 01H0FFH单元内容清零。 答: MOV R0, #01HLOOP: MOV R0, #0 INC R0 CJNE R0, #0FFH, LOOP END(11) 我国FSK来电显示采用单数据消息格式,其中第0字节为消息类型(固定为04,即单数据消息格式标志),随后的一个字节为消息体长度,消息体内的消息字包括了来电日期(月、日)与时间(

19、时、分)(8个字节)及主叫号码,最后一个字节为校验信息(校验算法可概括为:从消息类型字节到主叫号码最后一个字节按256模式累加和,再求补码)。试写出相应的校验程序片段(假设来电信息从内部RAM 30H单元开始存放)。答:(12) 使内部RAM 20H单元的b7、b3位清零,b6、b2位置1,b4、b0位取反,其他位不变。答: SETB 20H.6 ;如果给定的地址不在20H2FH之间,则不能用位寻址 SETB 20H.2 CLR 20H.7 CLR 20H.3 CPL 20H.4 CPL 20H.0(13) 将IPH寄存器的b7、b5位清零,b2、b0位置1,其他位不变。答: IPH EQU

20、0B7H MOV A, IPH ANL A, #01011111B ORL A, #00000101B MOV IPH, A END(14) 将内部RAM 30H单元乘4(假设30H单元内容不超过63)。答: MOV 30H, #4 MOV A, 30H RL A RL A MOV 30H, A END(15) 将存放在内部RAM 40H、41H和外部RAM 8000H、8001H的四位BCD码相加,结果存放在内部RAM 40H、41H、42H单元中(假设低位字节存放在低地址中,高位字节存放在高地址中)。答: MOV DPTR, #8000H MOVX A, DPTR CLR C ADD A,

21、 40H DA A MOV 40H, A INC DPTR MOVX A, DPTR ADDC A, 41H DA A MOV 41H, A MOV 42H, C END(16) 将立即数32H传送到内部RAM 30H单元中。答: MOV 30H, #32H (17) 将立即数32H传送到内部RAM 88H单元中。答: MOV R0, #88H MOV R0, 32H END(18) 将Acc.3位送Acc.0位。答: MOV C, ACC.3 MOV ACC.0, C END(19) 用MCS-51位指令,实现的逻辑运算。答: MOV C, P1.3 ANL C, /P1.2 MOV 20H

22、.0, C ;暂存 MOV C, P1.1 ORL C, P1.0 CPL C ORL C, 20H.0 END 3-6 假设4位BCD码压缩存放在R3、R2中,试编写BCD减1的程序段,并在仿真机上验证。 答: ;相当于WXYZ+10000-1=WXYZ+9999 CLR C; MOV A, R2 ADD A, #99 DA A MOV R2, A MOV A, R3 ADDC A, #99 DA A MOV R3, A END 3-7 利用双DPTR功能,将存放在程序存储区内的数表(共计16字节,首地址为DATATAB)传送到以4000H为首地址的外部RAM中。 答: AUXR1 EQU

23、0A2H MOV DPTR, #DATATAB INC AUXR1 MOV DPTR, #4000H MOV R7, #16 ;16 个字节 MOV A, #0 ;最开始的位置LOOP: MOV R6, A ;暂存A的值 MOVC A, A+DPTR ;注意用MOVC,同时职能用A做变址寄存器 INC DPTR MOVX DPTR, A ;注意使用MOVX指令 MOV A, R6INC DPTR I INC A ;A的值增1,指向下一个字节 DJNZ R7, LOOP DATATAB: DB 01H,02H, 03H,04H, 01H,02H,03H,04H END 3-8 将存放在R3、R2

24、中的三位压缩BCD码转换为二进制形式。 答: 三位BCD码999 MAIN: MOV A, R2 ANL A, #0F0H SWAP A MOV B, #10 MUL AB MOV B, A /存放十位 MOV A, R2 ANL A, #0FH ADD A, B /加个位 MOV R2, A /暂存 / MOV A, R3 ANL A, #0FH MOV B, #100 MUL AB / ADD A, R2 / MOV R2, A / MOV A, B / ADDC A, #0 MOV R3, A 3-9 将存放在R2中不超过十进制99的二进制数转换为压缩BCD码,结果存放在R2中。答: M

25、OV A, R2MOV B, #10DIV ABSWAP AORL A,BMOV R2,A3-10 在32位除16位的多位除法运算中,如果已知除数在8000HFFFFH之间,为缩短运算时间,是否需要扩展被除数?请写出相应的程序段。答:不需要,因为32位二进制(FFFFFFFFH)表示的最大十进制数为4294967295,除以80000HFFFFH之间的数,其结果=1FFFFH(注:“1”存放在进位位),所以用32位已经足够存放商和余数。程序如下: ORG 0000H LJMP MAIN ORG 0030HMAIN: MOV 42H, #0FFH MOV 43H, #0FFH MOV 44H,

26、#0FFH MOV 45H, #0FFH ; MOV 46H, #80H MOV 47H, #00H / /MOV 40H, #0 /MOV 41H, #0 MOV R7, #16LOOP1: ;整体左移1位 CLR C MOV R1, #4 ;移动4个字节 MOV R0, #45H ;从最低位开始移LOOP2: MOV A, R0 RLC A MOV R0, A DEC R0 DJNZ R1, LOOP2 MOV F0, C ;暂存移出的最高位 / CLR C MOV A, 43H SUBB A, 47H MOV R3, A / MOV A, 42H SUBB A, 46H MOV R2,

27、A / ANL C, /F0 ;进位标志cy为0及F0为1均属于没有借位的情况 ;没有借位,商置1,用差替换 JC NEXT MOV 43H, R3 MOV 42H, R2 ORL 45H, #01HNEXT: ;有借位,在保留被减数,商的最后一位清零(移位时已将0移入商的最后一位) DJNZ R7, LOOP1 NOP/ END 3-11 假设程序头中含有如下变量定义伪指令TXDBUF DATA #40H (注意:原题错误,应该去掉“#”号,下同)BDATA DATA #28H(1) 请指出“MOV R0,#TXDBUF”指令和“MOV R0,TXDBUF”指令源操作数的寻址方式。答:“MO

28、V R0,#TXDBUF”指令(立即寻址);“MOV R0,TXDBUF”指令(直接寻址) (2) 执行如下程序段后,内部RAM 40H4FH单元的内容是什么?28H单元的内容又是什么? MOV BDATA,#10H MOV R0,#TXDBUF CLR ALOOP: MOV R0,A INC A INC R0 DJNZ BDATA,LOOP END答:内部RAM 40H4FH单元的内容是:0F,28H单元的内容是03-12 指出复位后工作寄存器组R7R0的物理地址。如果希望快速保护工作寄存器组,请写出将2区作为当前工作寄存器区的程序段。答:(1) 07H00H. (2) SETB RS1 CLR RS03-13 简述顺序程序结构与分时操作程序结构的异同,以及这两种程序设计的注意事项。 答:略习题四参考答案4-1 增强型MCS-51有几个中断优先级?试通过修改IP、IPH寄存器内容,使串行口的中断优先级最高,定时器T1的中断优先级最低。答:(1)4 ; (2)MOV IPH ,#00010000B, MOV IP ,#00010000B4-2 MCS-51外中断有几种触发方式?一般情况下,采用哪种触发方式较

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

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