收藏 分享(赏)

部分单片机原理补充习题答案.doc

上传人:精品资料 文档编号:7702392 上传时间:2019-05-24 格式:DOC 页数:11 大小:127KB
下载 相关 举报
部分单片机原理补充习题答案.doc_第1页
第1页 / 共11页
部分单片机原理补充习题答案.doc_第2页
第2页 / 共11页
部分单片机原理补充习题答案.doc_第3页
第3页 / 共11页
部分单片机原理补充习题答案.doc_第4页
第4页 / 共11页
部分单片机原理补充习题答案.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、部分单片机原理及应用补充习题答案第一章补充习题6、已知下列整数的补码,求其真值:(3)Z 补=11100000B,则真值 Z= 0100000B= 32 D(4)S补=00110001B ,则真值 S= +0110001B= +49 D(5)X补=10101101B,则真值 X= 1010011 B= 83 D7、已知X补和 Y补的值,用补码加减法计算 X+Y补和XY补,并指出结果是否溢出。(4) X补=1.10011 Y补=0.11001解: Y 补=1.00111 加法 X补 +Y补X 补 1.10011+ Y补 0.110010. 0 1 1 0 0 Cin=1 Cout=1 无溢出 减

2、法 X补 +-Y补X 补 1.10011+ Y补 1. 0 0 1 1 10. 1 1 0 1 0 Cin=0 Cout=1 溢出 (下溢出)8、给出 x 和 y 的二进制值,用补码加减法计算 X+Y 和 XY ,并指出结果是否溢出(3) X=+1110110 Y=1001101解: X补=01110110 Y补=10110011 Y 补=01001101加法X补+Y补X 补 01110110+ Y补 101100110 0 1 0 1 0 0 1Cin=1 Cout=1 无溢出 , X+ Y补=00101001 ,X+Y=+0101001B= 41D减法X补+-Y补X 补 01110110+

3、 Y补 010011011 1 0 0 0 0 1 1Cin=1 Cout=0 溢出 (上溢出) ,运算结果不表示XY补 ,不能从结果直接求取真值XY。12、概念题:(1)ASC码,47H。(2)17H,1、0、0。(3) -128-+127, 0 255。13、(109.125) 10 =1101011.001) 2 = ( 6B.2 ) 16 = 000100001001.000100100101 ) BCD14、X 补 = 10101010。15、真值 X = (0010110 ) 2=( 22 ) 10真值 Y = (+1110010) 2=( +114 ) 1016、X= ( 109

4、 ) 10= (6D ) 16= ( 000100001001 ) BCD17、已知 X=1010101 ,Y=1101110,采用补码进行加法、减法,判断结果是否有溢出,并根据运算结果求取真值 X+Y 和 X-Y 的二进制数和十进制数。解:X、Y 和-Y 的补码为:X补 =0 1010101 , Y补 =1 0010010,-Y 补 =0 1101110(1) 加法X 补 + Y补X补 0 1 0 1 0 1 0 1+ Y补 1 0 0 1 0 0 1 0X+Y补 1 1 1 0 0 1 1 1CSCP=00,表明两数之和无溢出,其和为负数。 根据X+Y 补 = 1 1100111 ,真值

5、X+Y= -0011001B=25D(2)减法 X 补 Y补 = X补 + -Y补X补 0 1 0 1 0 1 0 1 +-Y补 0 1 1 0 1 1 1 0X-Y补 1 10 0 0 0 11CSCP=0 1,表明两数之差正溢出, 结果不表示两数差的补码X-Y 补 ,不能直接从结果求取真值 X-Y。第二章补充习题1、若 A=5AH,B=6BH,PSW=81H,执行 A 和 B 加法指令后 PSW 的值位多少?执行 A 减 B 减法指令后 PSW 的值?0 1 0 1 1 0 1 0+ 0 1 1 0 1 0 1 11 1 0 0 0 1 0 1CY=0 AC=1 OV=1 P=0 因此执行

6、 A 和 B 加法指令后 PSW=44H同样运算可以知道 ,执行 A 减去 B 指令后 PSW=C1H2、概念题:(1)将微机的各基本部件集成于一块芯片上的微机。(2)运算器、控制器。(3)运算器主要包括 ALU、 A、位处理器、B 、PSW 等,控制器主要包括 PC、IR、ID、定时控制逻辑电路等。(4)片机引脚 EA 应接高电平。 EA 必须接低电平。(5)PC 为 16 位寄存器,用来存放下一条指令地址 , 64K 。(6)时钟周期是计算机的基本事件单位,为外接时钟的周期;机器周期是 CPU 完成一个基本操作所需时间;指令周期是执行一条指令所需要的时间 。关系是一个机器周期包括 12 个

7、时钟周期。(7)有效复位信号是 高电平 ,从 0000H 开始执行指令。(8)存储器结构是由程序存储器、片外数据存储器和片内数据存储器三个独立的存储空间组成。(9)操作码助记符为 MOVX,存放实时数据、运算结果 。(10)位于片内 RAM ,基本原则为 先进后出,SP 指示的是栈顶单元地址。(11)2 个机器周期的高电平,PC 的内容和 SP 的内容为 0000H ,07H,最大允许范围是 120 个单元。(12) 128B 可分为工作寄存器区、位寻址区、通用 RAM 区三部分。(13)位地址是指可进行位运算的位所分配的特定地址,地址范围为 00H7FH。(14)存放 程序和表格常数,操作码

8、助记符为 MOVC 指令。(15)设在_片内 RAM_,存放在_程序存储器_存储区,设在_外部数据存储器_,存放在程序存储器存储区。(16)时序是指在执行指令过程中控制器发出的一系列特定控制信号和时间的关系。4 个时序定时单位分别为时钟周期、 状态周期、机器周期、指令周期。(17)片内 RAM 容量 128B ,分布在 80H-FFH 区间。(18)占用内部 RAM 18H-1FH 单元。(19)复位有上电复位和按键复位两种。(20)一个机器周期由 12 个脉冲组成,包括 6 个状态,一个机器周期为 2 s 。3、简述 MCS51 单片机的存储器组织结构。答:MCS-51 单片机的存储器结构的

9、特点是在逻辑上有 3 个独立的存储器空间。一是程序存储器,包括片内和片外的程序存储器(有些类型的单片机片内没有程序存储器) ,总容量为 64KB,地址范围为 0000HFFFFH,主要存放执行的程序和固定不变的数据,通过 MOVC 指令可访问程序存储器单元;二是片外数据存储器,最大容量为 64KB,地址范围为 0000HFFFFH,主要存放操作数、运算结果和实时数据等,外部扩展的 I/O 口的地址包含在片外数据存储器的地址空间中;三是片内数据存储器,最大容量为 256B ,地址范围为 00HFFH,包括片内数据 RAM 和特殊功能寄存器SFR,片内 RAM 一般容量为 128B,分为 3 个区

10、:工作寄存器区、位寻址区和通用 RAM 区,特殊功能寄存器 SFR 是 21(或 26)个特殊用途的寄存器。4、简述 MCS-51 单片机的程序状态字寄存器 PSW 的几个标志位及其含义。答:MCS-51 单片机的程序状态字寄存器 PSW 包含了 7 个有效的标志位,其中 4 个标志是在指令执行过程中自动形成,这 4 个标志是:进位标志位 Cy,表示加减法运算中最高位有无进位或借位,有进位或借位,则 Cy=1,无进位或借位,则 Cy=0; 辅助进位标志 AC,表示加减法运算中低 4位有无进位或借位,有进位或借位,则 AC=1,无进位或借位,则 AC=0;溢出标志位 OV,表示运算过程中结果是否

11、产生溢出,有溢出则 OV=1,无溢出则 OV=0;奇偶标志位 P,表示累加器 A 中 1 的个数奇偶性, 1 个数为奇数则 P=1,1 个数为偶数则 P=0。3 个标志是由用户根据需要采用指令设置的,寄存器选择位 RS1、RS2,设置 RS1、RS2 不同值可选取不同的寄存器区,RS1、RS2 为 00、01、10、11 分别对应 0 区、1 区、2 区、3 区的 8 个寄存器组;用户标志位F0,由用户定义。第三、四章补充习题3、写出能完成下列操作的指令或指令序列:(1)使 20H 单元中数的高 2 位变为 0,其余位不变;ANL 20H, #3FH(2)使 20H 单元中数的高 2 位变反,

12、其余位不变;XRL 20H, #C0H4、设片内 RAM 中(59H)=50H,执行下列程序段.MOV A,59HMOV R0,AMOV A,#0MOV R0,AMOV A,#25HMOV 51H,AMOV 52H,#70H执行后 A= 25H,(50H)=00H,(51H)=25H,(52H)=70H。5、设(R0)=7EH,DPTR=10FEH,片内 RAM7EH 和 7FH 两单元的内容分别是 FFH 和 38H,请写出下列程序段的每条指令的执行结果.INC R0 ;(7EH)=00HINC R0 ; (R0)=7FHINC R0 ;(7FH)=39HINC DPTR ;(DPTR)=1

13、0FFHINC DPTR ;(DPTR)=1100HINC DPTR ;(DPTR)=1101H 6、程序存储器空间表格如下:已知:片内 RAM 的 20H 中为 01H,执行下列程序后(30H)为多少?MOV A,20HINC A ; (A)=02HMOV DPTR, #2000HMOVC A,A+DPTR ; (A)=(2002H)CPL A ; (A)= 5B H = A4HMOV 30H , AEND: SJMP END因此执行程序后(30H)为 A4H7、(R0)=4BH,(A)=84H, 片内 RAM(4BH)=7FH,(40H)=20HMOV A,R0; 7FHA MOV R0,

14、#20H;20H4BHMOV 40H,A ; 7FH40HMOV R0, #35H ; (R0)=35H执行程序后, (R0)=35H ; (A)=7FH ; (4B)=20H8、执行下列程序段后(A)=25H ;(R0)=50H ; (50H)=00H ; (51H)= 25H 9、执行完下列程序段后(A)=C8H10、下列程序执行后, (20H)=20H,(21H)=00H,(22H)=17H,(23H)=01H,CY=1,A= 17H,R0=23H,R1=28H.11、(1)程序实现的功能是求 BUFFER 区域中 8 个正数的最大值存放于 MAX 单元。(2)程序执行后, 程序存储单元

15、:(0201H)= 09H, (0203H )= A4H,(0206H)= 9DH, (0207H)= DCH寄存器: (DPTR) = 0208H , (R7) = 0,(A) = DCH, (SP)= 70H,内部数据存储单元:(20H) = DCH。12、程序设计(1)编写将外部 RAM 以 BLOCK 为首址的 100 个单元置 1 的程序。程序段:MOV DPTR, #BLOCKMOV A, #01HMOV R7, #100LOOP: MOVX DPTR, AINC DPTRDJNZ R7, LOOPSJMP $(2)片内 RAM50H 单元存放了一个带符号数,请编写程序段实现:若该

16、数为零则置 31H 单元为“Z”,若该数为正数则置 31H 单元为”P”,若该数为负数则置 31H 单元为”N”。MOV A, 50HJNZ NEXTMOV 31H, # ZSJMP EXITNEXT: JNB ACC.7, POSMOV 31H, # NSJMP EXITPOS: MOV 31H, # PEXIT: SJMP $(3)片内 RAM 的从 BLOCK 单元开始有一个区域,存放了 16 个数据。试编一个程序统计其中正数、负数的个数存放于片内 M1、M2 单元,并分别将正数和负数分别存于片内以 BUF1 和 BUF2 为起始地址的存储单元内。MOV R0, #BLOCKMOV R7

17、, #16MOV BUF3, #BUF1MOV BUF4, #BUF2MOV M1, #00HMOV M2, #00HAGAIN: MOV A, R0JNB ACC.7POSINC M2MOV R1, BUF4MOV R1, AINC BUF4SJMP NEXTEVEN: INC M1MOV R1, BUF3MOV R1, AINC BUF3NEXT: INC R0DJNZ R7, AGAINSJMP $(4)片内 RAM 的从 BLOCK 单元开始存放了 20 个字符。试编一个程序统计其中字符“0”和“D”的个数并将其存放于片内 BUF1、BUF2 单元。MOV R0, #BLOCKMOV

18、R7, #20MOV BUF1, #00HMOV BUF2, #00HAGAIN: MOV A, R0CJNE A, #30H, NEXT1INC BUF1SJMP NEXT2NEXT1: INC R0DJNZ R7, LOOPSJMP $ NEXT2: CJNE A, #44H, NEXT2INC BUF2NEXT2: INC R0DJNZ R7, AGAINSJMP $第五章补充习题1、8031 系统中采用 P1 口作开关、指示灯接口的电路图如下所示,(1)判断 K1、K2 闭合的程序段:LOOP: MOV P1 , #0FFHMOV A, P1JB ACC.0,NEXT SJMP K1P

19、ROCNEXT: JB ACC.1,LOOPSJMP K2PROCK1PROC: K2PROC: (2)若 K1 闭合则 LED1-LED4 全亮;K2 闭合则 LED2 和 LED3 亮,请编写程序。程序段: K1PROC: MOV A, #OFHMOV P1, ASJMP SJMP EXITK2PROC: MOV A, #9FHMOV P1, AEXIT: SJMP LOOP2、8031 系统中采用 P1 口作键盘接口的电路图如下所示,(1)叙述行扫描法判断闭合键的过程。(2)写出扫描 L0 行读列值,判键 K1、K2 、K3、K4 闭合的程序 。(1) 过程如下:P1.0-P1.3 输出

20、全为 0,读 P1.4-P1.7, 若读入的信息全为 1,则表明无键闭合。若P1.4P1.7 输入至少有一个为 0,则表明有键闭合,进行行扫描,置 P1.0(L0 行)为 0,再读 P1.4P1.7,如有一位 P1.i 为 0, 表明 L0 行 P1.i 列对应的键闭合,转判读键值的程序段;如果读入全为 1,则 L0 行上无键闭合;则扫描下一行 L1 行,置 P1.1(L1 行)为 0,和以上方法一样进行判别。(2) 指令程序:MOV P1,#11111110BMOV A,P1JNB ACC.7,K4;转 K4 闭合JNB ACC.6,K3;转 K3 闭合JNB ACC.5,K2;转 K2 闭

21、合JNB ACC.4,K1;转 K1 闭合第六章补充习题1、概念题:(1)2s,FFH 和 FFH;131.072ms ,00H 和 00H,16.384 ms(2 由 内部和外部两类中断、两级优先级共 5 个中断源,处理过程是关中断,保护现场,开中断,中断服务,关中断,恢复现场,开中断,中断返回。(3)撤除方法:硬件自动撤除 和 软件撤除 。中断请求应由硬件和软件共同撤除,T1 的中断请求由 硬件自动撤除 撤除。(4)提供了 5 个, 响应中断的过程是 执行长调用指令, 断点保护,中断源入口地址装入 PC,转向中断服务程序入口地址 。 (5)中断系统是指 单片机中实现中断处理功能的部件 ,通

22、过 软件设置 IE 控制(6)有电平触发方式和_边沿转到_0003H_单元开始执行程序。(7)时钟周期为 1/12s ,周期为 1s 。 (8)定时为 62.344ms 。(9 的条件是有中断源发出中断请求、CPU 开放中断且该中断源开放中断、无高级或同级中断正被服务、执行现行指令结束 ,自动完成保护断点地址且获得中断服务程序入口地址2、解:T0 采用方式 0 时,计数初值 X=213 T12/fosc =21310000 /2=8192-5000=3192D=C78H=1100011 11000B , 因此存放于 TL0 的初值为 18H,,存放于 TL0 的初值为 63H 。T1 工作于计

23、数方式的方式 1,最大的计数值为 216=65536D,计数脉冲周期 TCLK =0.1m,因此最长可计的时间为 T=655360.1ms=6553.6ms=6.5536s3、简述 MCS51 中断系统。答:MCS51 单片机有 5 个中断源: 外部中断 0 、外部中断 1 、定时/计数器 T0 中断、定时/计数器 T1 中断和 串行口中断。当单片机 INT0 或 INT1 引脚上出现低电平或下降沿会产生中断请求;单片机的定时器 T0、T1 中断是 T0、T1 计数溢出而产生的;串行口中断是单片机发送或接受一帧数据后产生的。MCS51 单片机中有 4 个 SFR:TCON、IE、IP、SCON

24、 用来控制中断标志、中断触发方式、中断开放/禁止及中断优先权等,整个中断系统有两个优先权。当中断源处在同一优先级时,内部有优先级查询顺序:外部中断 0T0 中断外部中断 1 T1 中断串行口中断。MCS51 单片机采用的是固定的中断矢量方式,每个中断源有固定不变的中断服务入口地址。第七章补充习题1、概念题:(1)分为 ROM (只读存储器)和 RAM(随机存取存储器)两大类。(2 特点是能读能写入,掉电后内容丢失,可用作 外部数据存储器扩展 ;特点是 只能读取,掉电内容不丢失,可用作 程序存储器扩展。(3)有 4 个 8 位,有 4 个 A 口有 3 种工作方式,B 口有 2 种工作方式。(4

25、)提供了 4 个 8 位并行口,是 P0 口,是 P2 口。(5)方式有 全译码、部分译码和_线译码_,目的是为芯片提供_片选_信号。(6)接口是连接主机和输入输出设备的硬件电路,采用的是和外部数据存储器统一编址的 编址方式。 2、若 MCS-51 单片机应用系统要配置 16KB 的片外程序存储器和 16KB 外部数据存储器,如采用2732(4K8 )和 6116(2K8)存储器芯片,请确定需要各类芯片多少片?若这两个地址空间都从0000H 开始,计算每片芯片的地址范围。2732 芯片容量为 4KB,配置 16KB 的片外程序存储器需要 2732 的芯片数为 16KB/4KB=4 片6116

26、芯片容量为 2KB, 配置 16KB 的外部数据存储器需要 6116 的芯片数为 16KB/2KB=8 片#1 芯片 2732 的地址范围为 0000H-0FFFH#2 芯片 2732 的地址范围为 1000H-1FFFH#3 芯片 2732 的地址范围为 2000H-2FFFH#4 芯片 2732 的地址范围为 3000H-3FFFH#1 芯片 6116 的地址范围为 0000H-07FFH#2 芯片 6116 的地址范围为 0800H-0FFFH#3 芯片 6116 的地址范围为 1000H-17FFH#4 芯片 6116 的地址范围为 1800H-1FFFH#5 芯片 6116 的地址范

27、围为 2000H-27FFH#6 芯片 6116 的地址范围为 2800H-2FFFH#7 芯片 6116 的地址范围为 3000H-37FFH#8 芯片 6116 的地址范围为 3800H-3FFFH4、试述 MCS-51 单片机扩展外部存储器或接口时可采用的几种地址编码方式及其特点。答:MCS-51 单片机扩展外部存储器或接口时可采用的地址编码方式有全地址译码法、部分地址译码法和片选法。全地址译码法是将单片机中的除去作存储器芯片的片内地址线外的所有剩余的高位地址线进行译码而产生的信号作为存储芯片的片选信号,采用该方式译码的存储器没有地址重叠现象,每个单元的地址是唯一的,但需要硬件译码电路较

28、多。部分地址译码法是将单片机中的除去作存储器芯片的片内地址线外的部分剩余的高位地址线进行译码而产生的信号作为存储芯片的片选信号,采用该方式译码的存储器有地址重叠现象,每个单元的地址不是唯一的,但需要的硬件译码电路和接线可较简单。片选法是将单片机中的除去作存储器芯片的片内地址线外的所有剩余的高位地址线中某一条作为存储芯片的片选信号,采用该方式译码的存储器有地址重叠现象,每个单元的地址不是唯一的,可能芯片之间的地址也不连续,但不需要硬件译码电路,硬件结构简单。5、8031 单片机系统扩展 8255 芯片作键盘和 LED 显示器接口的硬件原理图如下所示。(1)写出系统中 8255A 接口芯片的 4

29、个口地址。8255A 接口的 4 个口地址可为 8000H、8001H 、8002H 、 8003H(2)写出 8255A 的初始化设置程序。方式控制字 应为 1001*00*B,初始化设置程序为: MOV A, #90HMOV DPTR, #8003HMOVX DPTR, A(3)请介绍系统中设计的键盘采用结构形式和判别键闭合的方法。答:系统中设计的键盘采用的是独立结构的键盘,8255A 的 PA0PA7 对应 8 个键的状态。当要判别键是否闭合时,则读取 8255A 的 A 口,判别读入的 8 位数据是否为全 1,若为全 1,表明无键闭合;若不为全 1 ,某一位 Dj 位为 0 ,则表示该

30、位对应的键 Kj+1 闭合(4)若要 LED1、LED3 、LED5、LED7 亮,LED2、LED4、LED6、LED8 灭,请编写程序段。程序为: MOV DPTR, #8001HMOV A, #0AAHMOVX DPTR, A(5)以下是一段根据 K1 键、 K2 键和其它键闭合的状态点亮不同指示灯的程序段,请在划线处填入内容。MOV A, #90H;8255A 初始化设置MOV DPTR, #8003HMOVX DPTR, ALOOP: MOV DPTR, #8000H ;查询按键闭合状态MOVX A, DPTR JNB ACC.0,KIPROC;K1 键闭合转 K1PROCJNB A

31、CC.1,K2PROC ;K2 键闭合转 K2PROCMOV A, #00H;置 LED1-LED8 指示灯全亮MOV DPTR, #8001HMOVX DPTR, A SJMP LOOP K1PROC: MOV A, #0FH ;置 LED5-LED8 指示灯亮MOV DPTR, #8001HMOVX DPTR, ASJMP LOOPK2PROC: MOV A, #0F0H ;置 LED1-LED4 指示灯亮MOV DPTR, #8001HMOVX DPTR, ASJMP LOOP6、8031 单片机系统扩展 8255 芯片作输入设备和输出设备的硬件原理图如下所示。(1) 写出系统中 825

32、5A 接口芯片的 4 个口地址。FF7CH FF7FH(或 FF00H FF03H )(2) 请分析 8255A 的 3 个端口的作用。答:8255A 的 A 口作输入设备的数据输入的数据端口;B 口作输出设备的数据输出的数据端口;C 口上半口作向外设发控制信号的控制端口,C 口下半口作缓冲外设状态信号的状态端口(4)以下是从输入设备依次读取 30 个数据并存于以 BLOCK 为首址的外部数据存储器区域中的程序段,请在划线处填入内容。START: MOV DPTR, #0FF7FH(或 FF03H) ;8255A 初始化设置MOV A , 91HMOVX DPTR, A MOV R0, #00H;置数据单元首址指针MOV P2, #20HMOV R7 , #2EHLOOP: MOV DPTR, #0FF7FH;置 PC7 为低电平MOV A , #0EHMOVX DPTR , A NOPNOPMOV A , #0FH;置 PC7 为高电平MOVX DPTR , AAGAIN: MOV DPTR, #0FF7EH;查询输入设备状态MOVX A, DPTRJNB ACC.0, AGAINMOV DPTR , #0FF7CH;从输入设备读取数据MOVX A, DPTRMOVX R0, A;将数据存入外部数据内存单元INC R0DJNZ R7, LOOP;判断是否全部读取完毕RET

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报