将表中的十进制数按表中的要求转换后用十六进制填入表¸¸¸
第一章
习题:
1.1 将表中的十进制数按表中的要求转换后用十六进制填入表1-1中。
表1-1
十进制 十六进制 非压缩的BCD数 压缩的BCD数 ASCLL码
64
80
100
125
255 1.2 将下列十进制数的原码和补码,用2位,4位或8位 十六进制数填入表1-2中。
表1-2
十进制数 原码 补码 十进制数 原码 补码
18 8796
-18 -8796
347 65530
-347 -65530 1.3 写出+55,-65,-11,-20的原码、反码和补码。
1.4 简述计算机的基本结构及基本工作原理,
思考题:
1、什么是单片机,有何特点,
2、单片机主要有哪几部分组成,
3、真值与码值有何区别,原码、反码、补码三者之间如何换算,
4、上网查询单片机的应用信息(电子作业)。
第二章
习题:
2.1 MCS-51单片机的内部结构包括哪些部分,每一部分各有什么功能, 2.2 MCS-51单片机的存储空间有多大范围,存储空间是如何进行地址分配的, 2.3 MSC-51单片机的片内存储器与片外存储器是如何进行选择的, 2.4 MCS-51单片机的P0~P3口在使用时有何特点,
2.5 MCS-51单派内机的工作寄存器组如何进行选择,复位后各特殊功能寄存器状态如
何,
思考题:
1、MCS-51系列机种类
2、MCS-51内部结构有几部分,特点,
3、MCS-51单片机有多少引脚,ALE、PSEN、EA作用,
4、MCS—51存储结构分配是怎样的,
5、SFR中各寄存器的名称,
第三章 习题:
3.1 已知(A)=7AH,(R0)=30H,(30H)=0A5H,(PSW)=80H,请填写下列各条指令的
执行结果:
(1)SUBB A,30H
(2)SUBB A,#30H
(3)ADD A,R0
(4)ADD A,30H
(5)ADD A,#30H
(6)ADDC A,30H
(7)SWAP A,
(8)XCHD A,,R0
(9)XCH A,R0
(10)XCH A,30H
(11)XCH A,,R0
(12)MOV A,,R0
3.2 试分析下列程序段的执行结果。
MOV SP,#3AH
MOV A,#20H
MOV B,#30H
PUSH ACC
PUSB B
POP ACC
POP B
3.3 已知(A)=81H,(R0)=17H,(17H)=35H,指出执行完下列程序段后A的变化内容。
MOV A,,R0
MOV ,R0,
40HMOV 40H,
AMOV R0,#35H
3.4 把2000H开始的外部RAM单元中的数据送到3000H开始的外部RAM单元中,
数据个数已在内部RAM35H单元中。
3.5 设变量X的值存放在内部RAM的30H单元中,编程求解下列函数式,将求得的
函数值Y存人40H单元。
3.6 某温度控制系统,采集的温度值Ta放在累加器A中。此外,在内部RAM54H单
元存放控制温度下限值(T54),在55H单元存放控制温度上限值(T55)。若Ta>T55,
程序转向JW(降温处理程序);若Ta
答案:
第一章习题答案:
1.1 答:
表1-1
十进制 十六进制 非压缩的BCD数 压缩的BCD数
64 40H 00000110000000100 01100100
80 50H 0000100000000000 10000000
100 64H 000000010000000000000000 000100000000
125 7CH 000000010000001000000101 000100100101
255 FFH 000000100000010100000101 001001010101
1.2:答:
表1-2
十进制数 原码 补码 十进制数 原码 补码
18 12H 12H 8796 221CH 221CH
-18 92H EEH -8796 A21CH DDA4H
347 015BH 015BH 65530 FFFAH FFFAH
-347 815BH FEA5H -65530 8000FFFAH FFFF0006H 1.3:答:
?[+55]原=[+55]反=[+55]补=00110111B
?[-65]原=11000001B
[-65]反=10111110B
[-65]补=10111111B
?[-11]原=10001011B
[-11]反=11110100B
[-11]补=11110101B
?[-20]原=10010100B
[-20]反=11101011B
[-20]补=11101100B
第二章习题答案
2.1题: 答:MCS-51单片机的内部结构包括:中央处理器(CPU)、内部数据存储器、内部程序存储器、定时器,计数器、并行I/O口、串行口、中断控制系统、时钟电路及总线。各部分的功能:
1、中央处理器(CPU)
中央处理器简称CPU,是单片机的核心,完成运算和控制操作。按其功能,中央处
理器包括运算器和控制器两部分电路。
1)、运算器电路
功能:单片机的运算部件,用于实现算术和逻辑运算。
2)、控制器电路
功能:单片机的指挥控制部件,保证单片机各部分能自动而协调地工作。 2、内部数据存储器
组成:RAM(128×8)和RAM地址寄存器等。
功能:用于存放可读写的数据。
3、内部程序存储器
组成:ROM(4K×8))和程序地址寄存器等。
功能:用于存放程序和原始数据。
4、定时器,计数器
80C51共有两个16位的定时器,计数器。
功能:实现定时或计数功能,并以其定时或计数结果对单片机进行控制,以满足控
制应用的需要。
5、并行I/O口
MCS-51共有4个8位的I/O口(P0、P1、P2、P3)
功能:实现数据的并行输入输出。
6、串行口
MCS- 51单片机有一个全双工的串行口。
功能;以实现单片机和其它数据设备之间的串行数据传送。 7、中断控制系统
80C51共有5个中断源,即外中断2个,定时,计数中断2个,串行中断1个。全
部中断分为高级和低级共两个优先级别。
8、时钟电路
MCS- 51芯片的内部有时钟电路,但石英晶体和微调电容需外接。
功能:时钟电路为单片机产生时钟脉冲序列。
典型的晶振频率:6MHz、11.0592MHz、12MHz。
9、总线
总线:连接计算机各部件的一组公共信号线。
分类:地址总线、数据总线和控制总线。
作用:减少了单片机的连线和引脚,提高了集成度和可靠性。
2.2题:答:MCS-51单片机的存储空间范围及地址分配为:
程序存储器为64KB,地址范围为:0000H~FFFFH。其中片内ROM 4KB,片外ROM可按需要进行扩展,最大可扩展为64KB。片内ROM与片外ROM统一编址。当EA=1时访问由内而外。当EA=0时只访问片外ROM,片内。
数据存储器:片内RAM为256B,地址范围为:00H~FFH。其中00H~07H、08H~0FH、 10H~17H、18H~1FH分别为四区工作寄存器地址范围,20H~2FH为位寻址区。30H~7FH为通用RAM区。80H~0FFH为特殊功能寄存器区。此外,片外RAM可以扩展到64KB的空间,地址范围为:0000H~FFFFH。
2.3题:答:当EA=1时用MOVC指令访问片内ROM,接着再访问片外ROM,当EA=0时直接访问片外ROM,用MOVC指令和转移指令。片内RAM用MOV指令访问,片外RAM用MOVX访问。
2.4题:答:MCS-51单片机的P0~P3口的特点为:
MCS - 51单片机具有4个8位准双向并行端口(P0,P3),共32根1/O口线。每一根1/O口线都能独立地用作输入或输出。这4个端口是单片机与外部设备进行信息(数据、地址、控制信号)交换的输人或输出通道。
1、P0口:
2、功能:作为通用输入/输出口;地址线,数据线分时复用。
在扩展系统中,低8位地址线与数据线分时使用PO口。PO口先输出片外存储器的低8位地址并锁存到地址锁存器中,然后再输出或输入数据。
2、P1口:功能:作为通用输人/输出口使用。
3、P2口:功能:通用输人/输出口使用;作为高8位地址总线口使用。
在扩展系统中,其作为扩展系统的高8位地址总线,与P0口低8位地址线一起组成16位地址总线。
3、P3口:功能:作为通用输人/输出口使用;涉及串行口、外部中断、定时器的工
作(第二功能)。
当作为第二功能时P3.0:RXD,P4.07XD,P3.2,P3.3,P3.4FO,P3.5T1,INTOINTL
RDP3.6,P3.7 WR
2.5题:答:
(1)通过RS1和RS0这两位选择工作寄存器组。
RS1=0,RS0=0时,选择第0组工作寄存器;RS1=0,RS0=0时,选择第0组工作寄存器;RS1=0,RS0=1时,选择第1组工作寄存器;RS1=1,RS0=0时,选择第2组工作寄存器;RS1=1,RS0=1时,选择第3组工作寄存器。
(2)复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
除PC之外,复位操作还对其它一些专用寄存器有影响,它们的复位状态如表所示:
PC 0000H TCON 00H
ACC 00H TL0 00H
PSW 00H TH0 00H
SP 07H TL1 00H
DPTR 0000H TH1 00H
P0,P3 0FFH SCON 00H
IP XX000000B SBUF 不定
IE 0X000000B PCON 0XXX0000B
TMOD 00H
第三章习题答案:
3(1题: 答:
(1) (A)=0D4H ,(CY)=1,(AC)=0,(OV)=1,(P)=0
(2) (A)=49H ,(CY)=0, (AC)=0,(OV)=0,(P)=1
(3) (A)=0AAH ,(CY)=0,(AC)=0,(OV)=1,(P)=0
(4) (A)=1FH ,(CY)=1,(AC)=0,(OV)=0,(P)=1
(5) (A)=0AAH ,(CY)=0,(AC)=0,(OV)=1,(P)=0
(6) (A)=20H ,(CY)=1,(AC)=1,(OV)=0,(P)=1
(7) (A)=0A7H ,(P)=1
(8) (A)=75H ,((R0))=(30H)=0AAH
(9) (A)=30H ,(R0)=7AH
(10) (A)=0A5H ,((30H)=7AH
(11) (A)=0A5H ,((R0))=(30H)=7AH
(12) (A)=0A5H
3(2题: 答 : (A)=30H ,(B)=20H,(SP)=3AH 3(3题: 答: (A)=0CBH
3(4 题:答:
MOV DPTR,,2000H;源数据区首址
PUSH DPL;源首址暂存堆栈
PUSH DPH
MOV DPTR,#3000H;目的数据区首址
MOV R,DPL;目的首址暂存寄存器 2
MOV R,DPH 3
LOOP: POP DPH;取回源地址
POP DPL
MOVX A,,DPTR;取出数据
INC DPTR;源地址增量
PUSH DPL;源地址暂存堆找
PUSH DPH
MOV DPL,R;取回目的地址 2
MOV DPH,R 3
MOVX ,DPTR,A;数据送目的区
INC DPTR;目的地址增量
MOV R,DPL;目的地址暂存寄存器 2
MOV R,DPH 3
DJNZ 35H,LOOP;没完,继续循环
RET;返回主程序
3(5题:答:自变量X的值在三个不同的区间所得到的函数值Y不同,编程时要注意
区间的划分。程序流程图如图4一4所示。程序如下:
MOV A,30H;取自变量X值
CJNE A,#10,LOOP;与10比较,A中值不改变
LOOP:JC LOOP2;若X< 10,转LOOP2
CJNE A,,100,LOOP1;与100比较
LOOP1:JNC LOOP3;若X>100,转LOOP3
MOV 40H,,00H;因10?X<100,故Y=0
SJMP EXIT
LOOP2:DEC A;因X<10,故Y=X一1
MOV 40H,A
SJMP EXIT
LOOP3:INC A;若X>100,故Y=X,1
MOV 40H, A
EXET:RET
3(6 题:答:有关程序段如下:
CJNE A,55H,I.OOP1;Ta?55,转向LOOP1
AJMP FH;Ta=T55,返回
I.OOPl:JNC JW;(CY)=0,表明Ta,T55,转降温处理程序
CJNE A,54H,LOOP2;Ta?T54,转向LOOP2
AJMP FH;Ta=T54,返回
LOOP2:JC SW;(CY),1,表明Ta