MCS51单片机原理及应用课后习题答案 天津大学出版社.docx
《MCS51单片机原理及应用课后习题答案 天津大学出版社.docx》由会员分享,可在线阅读,更多相关《MCS51单片机原理及应用课后习题答案 天津大学出版社.docx(48页珍藏版)》请在冰豆网上搜索。
MCS51单片机原理及应用课后习题答案天津大学出版社
第一章 思考题及习题
1-1请写出下列各十进制数在八位微型机中的原码、反码和补码形式:
(1)X=十48
(2)X=+123 (3)X=-34 (4)X=-115
真值X
原码
反码
补码
+48
30H
30H
30H
+123
7BH
7BH
7BH
-34
B=0A2H
0DDH
0DEH
-115
B=0F3H
8CH
8DH
1-2将下列数看作八位微型机中带符号数的原码、反码和补码时,写出相应的真值:
(1)B
(2)B (3)B (4)B
原码
B
B
B
B
真值X
-36H=-54
+45H=+69
-72H=-114
-2DH=-45
反码
B
B
B
B
真值X
-49H=-73
+45H=+69
-0DH=-13
-52H=-82
补码
B
B
B
B
真值X
-4AH=-74
+45H=+69
-0EH=-14
-53H=-83
1-3 写出下列各数的BCD码:
(1)47 ---47H 01000111B
(2)78--78H 01111000B
(3)1996--1996H 0001100110010110B (4)115 --115H 000100010101B
1-4 用十六进制形式写出下列字符的ASCll码:
字符串
无校验ASCll码
奇校验ASCll码
偶校验ASCll码
(1)ESC
1BH
9BH
1BH
(2)STUDENT
53H54H55H44H45H4EH54H
0D3H54H0D5H0C4H
45H 0CEH54H
53H0D4H55H44H0C5H4EH0D4H
(3)X1AB96
58H31H41H42H39H36H
58H31H0C1H0C2H0B9H 0B6H
0D8H0B1H41H42H39H36H
(4)COMPUTER
43H4FH4DH50H55H54H45H52H
43H4FH0CDH0D0H0D5H54H45H52H
0C3H0CFH4DH50H55H0D4H0C5H0D2H
1-5将下列数据进行加法和减法运算,写在前面的数为被加数或被减数(写出竖式)。
(1)97H和OFH
(2)0A6H和33H(3)0F3H和0F4H (4)0B6H和0EDH
一、加法
(1)97H和OFH
被加数 1 0 0 1 0 1 1 1 B =97H
加数 0 0 0 0 1 1 1 1 B =0FH
+
和 1 0 1 0 0 1 1 0 B =A6H
C8=0 ,C7=0 0V =0 ,CY =0
分析:
无符号数:
CY=0,97H+0FH=0A6H=166 ∵151+15=166
带符号数:
OV=0,97H+0FH=0A6H 真值=-5AH=-90 ∵-69H+15=-105+15=-90
(2)0A6H和33H
被加数 1 0 1 0 0 1 1 0 B =A6H
加数 0 0 1 1 0 0 1 1 B =33H
+
和 1 1 0 1 1 0 0 1 B =F9H
C8=0 ,C7=0 0V =0 ,CY =0
分析:
无符号数:
CY=0,A6H+33H=0D9H=217∵166+51=217
带符号数:
OV=0,A6H+33H=0D9H 真值=-27H=-39 ∵-5AH+51=-90+51=-39
(3)0F3H和0F4H
被加数 1 1 1 1 0 0 1 1 B =F3H
加数 1 1 1 1 0 1 0 0 B =F4H
+
和 1 1 1 1 0 0 1 1 1 B =E7H
C8=1 ,C7=1 0V =0 ,CY =1
分析:
无符号数:
CY=1,F3H+F4H=100H+0E7H=1E7H=487 ∵243+244=487
带符号数:
OV=0,F3H+F4H=0E7H 真值=-19H=-25 ∵-13+(-12)=-25
(4)0B6H和0EDH
被加数 1 0 1 1 0 1 1 0 B =B6H
加数 1 1 1 0 1 1 0 1 B =EDH
+
和 1 1 0 1 0 0 0 1 1 B =A3H
C8=1,C7=1 0V =0 ,CY =1
分析:
无符号数:
CY=1,B6H+EDH=100H+0A3H=1A3H∵182+237=419
带符号数:
OV=0,B6H+EDH=0A3H 真值=-5DH=-93 ∵-4AH-13H=-74-19=-93
二、减法:
(1)97H和OFH
被减数 B
-减数 B
求补
B 取反
+ 1 加1
+ B
进 位
差 B
分析:
无:
CY=/C8=/1=0,∵97H-0FH=88H,151-15=136
带:
C8=1,C7=1OV=0,∵97H-0FH=88H, 真值=-78H=-120 ∴-105-15=-120
(2)0A6H和33H
被减数 B
-减数 B
求补
B 取反
+ 1 加1
+ B
差 B
分析:
无:
CY=/C8=/1=0,∵0A6H-33H=73H,166-51=115
带:
C8=1,C7=0,OV=1,∵0A6H-33H=63H, OVER ∴-90-51=-141<-128
(3)0F3H和0F4H
被减数 B
-减数 B
求补
B 取反
+ 1 加1
+ B
差 B
分析:
无:
CY=/C8=/0=1,∵0F3H-0F4H=-100H+0FFH=-1
带:
C8=0,C7=0,OV=0,∵0F3H-0F4H=0FFH,真值=-(00H-0FFH)=-1
(4)0B6H和0EDH
被减数 B
-减数 B
求补
B 取反
+ 1 加1
+ B
差 B
分析:
无:
CY=/C8=/0=1,∵0B6H-0EDH=-100H+0C9H=-37H=-55
带:
C8=0,C7=0,OV=0,∵0B6H-0EDH=0C9H,真值=-(00H-0C9H)=-37H=-55
1-6 完成下列数据的乘除运算,写在前面的数为被乘数或被除数(写出竖式)。
(1)1100B和1101B
被乘数
1
1
0
0
B
乘数
×
1
1
0
1
B
1
1
0
0
0
0
0
0
1
1
0
0
+
1
1
0
0
乘积
1
0
0
1
1
1
0
0
B
(2)ll0ll0llB和B
被乘数
1
1
0
1
1
0
1
1
B
乘数
×
1
0
0
1
0
1
0
1
B
1
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
1
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
1
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
+
1
1
0
1
1
0
1
1
乘积
1
1
1
1
1
1
1
0
1
1
1
0
1
1
1
B
(1)1100B和1101B
0
.1
0
1
1101
1
1
0
0
1
1
0
1
0
1
1
0
0
1
1
0
0
0
(2)ll0ll0llB和B
1
.0
1
1
1
1
1
1
0
1
1
0
1
1
1
0
0
1
0
1
0
1
1
0
0
0
1
1
0
0
0
1
0
0
1
0
1
0
1
1
0
0
0
0
0
1
1
0
1
0
0
1
0
1
0
1
1
1
1
0
0
0
1
0
1
0
0
1
0
1
0
1
1
0
0
1
1
0
1
0
1
0
0
1
0
1
0
1
0
0
1
0
1
1-7将下列数据分别进行逻辑乘、逻辑加和逻辑异或运算(写出竖式)。
(1)33H和0BBH
0 0 1 1 0 0 1 1 B =33H
1 0 1 1 1 0 1 1 B =BBH
∧
0 0 1 1 0 0 1 1 B =33H
0 0 1 1 0 0 1 1 B =33H
1 0 1 1 1 0 1 1 B =BBH
∨
1 0 1 1 1 0 1 1 B =BBH
0 0 1 1 0 0 1 1 B =33H
1 0 1 1 1 0 1 1 B =BBH
∨
1 0 0 0 1 0 0 0 B =88H
(2)0ABH和7FH
1 0 1 0 1 0 1 1 B =ABH
0 1 1 1 1 1 1 1 B =7FH
∧
0 0 1 0 1 0 1 1 B =2BH
1 0 1 0 1 0 1 1 B =ABH
0 1 1 1 1 1 1 1 B =7FH
∨
1 1 1 1 1 1 1 1 B =FFH
1 0 1 0 1 0 1 1 B =ABH
0 1 1 1 1 1 1 1 B =7FH
∨
1 1 0 1 0 1 0 0 B =D4H
(3)0CDH和80H
1 1 0 0 1 1 0 1 B =CDH
1 0 0 0 0 00 0 B =80H
∧
1 0 0 0 0 0 0 0 B =80H
1 1 0 0 1 1 0 1 B =CDH
1 0 0 0 0 00 0 B =80H
∨
1 1 0 0 1 1 0 1 B =CDH
11 0 0 1 1 0 1 B =CDH
∨1 0 0 0 0 00 0 B =80H 0 1 0 0 1 1 0 1 B =4DH
(4)78H和OFH
0 1 1 1 1 0 0 0 B =78H
0 0 0 0 1 1 1 1 B =0FH
∧
0 0 0 0 1 0 0 0 B =08H
0 1 1 1 1 0 0 0 B =78H
0 0 0 0 1 1 1 1 B =0FH
∨
0 1 1 1 1 1 1 1 B =7FH
0 1 1 1 1 0 0 0 B =78H
0 0 0 0 1 1 1 1 B =0FH
∨
0 1 1 1 0 1 1 1 B =77H
1-8把下列各数按补码运算规则求出X+Y的补码及其真值:
(1)X=十48 Y=十38
被加数 0 0 1 1 0 0 0 0 B [X]补=30H
加数 0 0 1 0 0 1 1 0 B [Y]补=26H
+
和 0 1 0 1 0 1 1 0 B =56H
C8=0,C7=0 0V =0
∵[X]补+[Y]补=[X+Y]补=56H 真值=+56H=+86
(2)X=+123 Y=—49
被加数 0 1 1 1 1 0 1 1 B [X]补=7DH
加数 1 1 0 0 1 1 1 1B [Y]补=CFH
+
和 1 0 1 0 0 1 0 1 0 B =4AH
C8=1,C7=1,0V=0
∵[X]补+[Y]补=[X+Y]补=4AH 真值=+4AH=+74
(3)X=-34 Y=+87
被加数 1 1 0 1 1 1 1 0 B [X]补=DEH
加数 0 1 0 1 0 1 1 1 B [Y]补=57H
+
和 1 0 0 1 1 0 1 0 1 B =35H
C8=1,C7=1 0V =0
∵[X]补+[Y]补=[X+Y]补=35H 真值=+35H=+53
(4)X=-115Y=-15
被加数 1 0 0 0 1 1 0 1 B [X]补=8DH
加数 1 1 1 1 0 0 0 1 B [Y]补=F1H
+
和 1 0 1 1 1 1 1 1 0 B =7EH
C8=1,C7=0 0V =1
∵[X]补+[Y]补=7EH≠[X+Y]补 负溢出
第二章习题答案
2-28051单片机内部包含哪些主要逻辑部件?
各自的功能是什么?
答:
8051单片机内部包含:
1、 中央处理器CPU:
它是单片机内部的核心部件,决定了单片机的主要功能特性,由运算器和控制器两大部分组成。
2、 存储器:
8051单片机在系统结构上采用了哈佛型,将程序和数据分别存放在两个存储器内,一个称为程序存储器,另一个为数据存储器。
在物理结构上分程序存储器和数据存储器,有四个物理上相互独立的存储空间,即片内ROM和片外ROM,片内RAM和片外RAM。
3、 定时器/计数器(T/C):
8051单片机内有两个16位的定时器/计数器,每个T/C既可以设置成计数方式,也可以设置成定时方式,并以其定时计数结果对计算机进行控制。
4、 并行I/O口:
8051有四个8位并行I/O接口(P0~P3),以实现数据的并行输入输出。
5、 串行口:
8051单片机有一个全双工的串行口,可实现单片机和单片机或其他设备间的串行通信。
6、 中断控制系统:
8051共有5个中断源,非为高级和低级两个级别。
它可以接收外部中断申请、定时器/计数器申请和串行口申请,常用于实时控制、故障自动处理、计算机与外设间传送数据及人机对话等。
2-38051单片机的存储器分哪几个空间?
通过什么信号来区别不同空间的寻址?
答:
有四个物理上相互独立的存储空间:
片内ROM地址为0000H-0FFFH此时/EA=1;片外ROM地址为0000H-0FFFFH此时/EA=0。
片内数据存储器地址为00H-0FFH;片外数据存储器地址为0000H-0FFFFH;区分片内片外数据存储器通过指令MOV与MOVX。
2-6内部RAM低128单元划分为哪三个主要部分?
各部分主要功能是什么?
答:
分为三部分:
工作寄存器去,位寻址区,用户RAM区(堆栈、数据缓冲)。
工作寄存器区(00H-1FH):
32个RAM单元共分四组,每组8个寄存单元(R0-R7)。
寄存器常用于存放操作数及中间结果等。
位寻址区(20H-2FH):
此部分16个单元的每一位都有一个8位表示的位地址,位寻址取得每一个单元既可作为一般RAM单元使用,进行字节操作,也可以对单元中的每一位进行位操作。
用户RAM区:
也是数据缓冲区,一般用于存放用户数据及作堆栈区使用。
第三章习题答案
3-1MCS-51的寻址方式及