4. 什么是描述符?什么是描述符表?描述它们之间的关系?
5. 从80286以后的PC机,都采用描述符对存储器进行管理,有什么意义? 6. 80286有几种工作方式?如何实现方式转换的?
7. 80286执行程序时,需要将虚拟地址转换为物理地址,如何实现转换的? 8. 80386/80486有哪些新的特点?
9. 什么是地址重定位?有哪几种重定位方式?
10. 什么是段式、页式、段页式管理机制?请简述段页式结构的寻址过程? 11. 什么是多任务?什么是任务的特权组?如何实现任务之间的转换? 12. Pentium机有哪些新的特点?有哪几种工作模式?
13. 什么叫指令流水线?Pentium有几条指令流水线?流水线有什么意义? 14. 什么叫指令预测?
15. Pentium的寄存器组又有哪些发展?
16. Pentium的cache有何特色?为什么要设置cache?
17. Pentium的中断系统有哪两种工作方式?在保护方式下如何响应中断?
什么是64位微处理器?有什么新的特色?
第7章 练习与思考题
1. 8051单片机内部包含哪些主要部件,各有什么功能?
2. MCS-51系列单片机中,8051/8751/8031三种芯片的主要区别?
3. MCS-51系列单片机有哪两类存储器,各类存储器地址空间的配置及地址范围是什么? 4. MCS-51单片机内部数据存储器RAM中低128个单元划分为哪三个部分?各部分的功能
是什么?
5. MCS-51单片机的四个I/O端口有哪些功能和特点?其中哪些信号需要芯片管脚,以第
二功能方式提供? 6. MCS-51单片机的EA信号有何功能?在使用8031时EA信号引脚将如何处理? 7. 程序状态寄存器的作用是什么?共有哪几位?作用是什么?
8. 开机复位后,单片机CPU默认哪一组工作寄存器?如何改变当前的寄存器组? 9. SP表示什么?共有多少位?作用是什么?
10. 8051单片机的特殊功能寄存器SFR的地址范围是什么? 11. 8051单片机的时钟周期、机器周期和指令周期是如何定义的?当时钟频率为1MHZ时机
器周期是多少?
12. 8051单片机的所有指令中,共有多少种指令时序?分别是什么?
第8章 练习与思考题
1 MCS-51系列单片机有哪几种基本寻址方式,各有什么特点? 2 MCS-51单片机指令按功能分哪几类?各自的作用是什么?
3 变址寻址和相对寻址的地址偏移量有何异同?如何计算相对寻址的偏移量?
4指出下列每条指令的寻址方式和功能。 ①MOV A,#50H ②MOV A,50H ③MOV 50H,R3 ④MOVX A,@R0 ⑤MOV C,50H ⑥MOVX A,@DPTR
5 写出下列指令的机器码,并指出执行下列程序段后累加器A的内容是什么? ① MOV A,#20H ② MOV A,#F1H
MOV R0,#30H MOV 30H,#8AH MOV @R0,A MOV R0,30H MOV 40H,R0 ADD A,#20H XCH A,R0 ADDC A,@R0 ③ CLR C ④ MOV A,#78H
MOV 30H,#6BH MOV 30H,#89H MOV A,#83H ADD A,30H MOV R0,#30H DA A SUBB A,@R0 SWAP A 6 写出能完成下列数据传送的指令: ① R1中内容送到R0
②内部RAM40H单元中的内容送到50H单元中
③内部RAM40H单元中的内容送到外部RAM50H单元中 ④内部RAM40H单元中的内容送到外部RAM2500H单元中 ⑤外部RAM50H单元中的内容送到内部40H单元中
⑥外部RAM2500H单元中的内容送到内部RAM40H单元中 ⑦外部ROM4000H单元中的内容送到外部RAM50H单元中 ⑧外部ROM4000H单元中的内容送到内部RAM2500H单元中 7 试利用堆栈操作实现40H与50H单元中的数据交换。
8试编出把外部RAM2500H单元中的内容和2600H单元中的内容相交换的程序。 9试编程求92H+A4H,并分析对PSW相关标志位的影响。
10已知:A=7BH,R0=40H,(40H)=A5H,PSW=80H,试问如下指令执行后的结果是什么? ① ADDC A,40H ②SUBB A,40H
INC 40H INC A ③ SUBB A,#40H ④SUBB A,R0
DEC R0 DEC 40H
11 试编程求 4A75H+6459H,并把结果的高8位放在内部RAM的41H单元中,把结果的低8
位放在40H单元中。
12试编程求5E5DH-24A3H,并把结果存入内部RAM的50H和51H单元中,50H单元存放差的
低8位。
13 已知被乘数是16位无符号数,低8位在M1单元,高8位在M1+1单元,乘数为8位无符
号数存放在M2单元中,试编程将它们相乘,并把结果存入R2、R3、R4中,其中R2中为高8位,R4中为低8位。 14试写出完成如下操作的程序:
①使内部RAM30H单元中的低4位变“1”,其余位不变 ②使内部RAM30H单元中的高3位变反,其余位不变 ③使内部RAM30H单元中的低2位变“0”,其余位不变 ④使内部RAM30H单元中的所有位变反
⑤使外部2000H单元中的低4位变“1”,其余位不变
15 编程完成以RAM20H为首地址的10个数据传送,目的地址为外部RAM以2000H为首地址
的区域。
16 试编程,当寄存器R0的内容分别满足下列条件时,转移到LOOP处执行程序,条件不满
足时停机。
①R0?15 ②R0<15 ③ R0?10 ④R0>20 17 已知SP=50H,PC=378EH,执行ACALL 3A00H后堆栈指令SP,堆栈内容以及程序计数器PC
中的内容是什么?
第9章 习题与思考题
1 程序设计语言有哪三种?各有什么异同?汇编语言有哪两类语句?各有什么特点? 2 在汇编语言程序设计中,为什么要采用标号来表示地址?标号的构成原则是什么?使用
标号有什么限制?注释段起什么作用?
3 MCS-51汇编语言有哪几条常用伪指令?各起什么作用?
4 试编程将内部RAM单元20H~2FH全部清0,而后将30H~3FH单元全置为1。
5 已知:内部RAM BLOCK单元开始存放有一组带符号数,数的个数已在LONG单元,
请编出可以统计其中正数和负数个数并分别存入NUM和NUM+1单元的程序。 6 设:自变量x为一无符号数,存放在内部RAM的VAX单元,函数y存放在FUNC单元,
请编出如下关系满足的程序:
?x?y??5x?2x?x?5050?x?20 x?207 外部RAM的SOUCE(二进制8位)开始有一数块,该数块以“$”字符结尾。请编一
程序,把它们传送到内部RAM的DIST为始址的区域(“$”字符也要传送)。 8 在上例中,若SOUCE为二进制16位,则程序又该如何编?
9 外部RAM从2000H到2100H有一数据块,请编出将它们传送到3000H到3100H区域
的程序。
10 设有一始址为FIRST+1的数据块,存放在内部RAM单元,数据块长度在FIRST单元
而且不为0,要求统计该数据块中正偶数和负偶数的个数,并将它们分别存放在PAPE单元和NAOE单元,试画出能实现上述要求的程序流程和编出相应程序。
11 请编出一个能在内部RAM的BLOCK为始址的100个无符号数中找出最小值和把它送
入MIN单元的程序。
12 已知在内部RAM中,共有六组无符号四字节被加数和加数分别存放在FIRST和
SECOND为始址的区域(低字节在前,高字节在后)。请编程求和(设和也为四字节),并把和存于SUM开始的区域。
13 在内部RAM中,有一个以BLOCK为始址的数块,块长在LEN单元。请用查表指令编
一程序,先检查它们是否是16进制数,若是16进制数,则把它们变为ASCII码,若不是16进制数,则把它们变为00H。
14 在内部RAM中,BLOCK开始的存储区有10个单字节十进制数(每字节有两个BCD
数),请编程求BCD数之和(和为三位BCD数),并把它们存于SUM和SUM+1单元(低字节在SUM单元)。
15 在上例中,若改为10个双字节十进制数求和(和为4位BCD数),结果仍存于SUM
开始的连续单元(低字节在前)。请修改相应程序。
16 已知MNA和MNB内分别存有两个小于10的整数,请用查表子程序实现C=a2+2ab
+b2,并把和存于MNC和MNC+1单元(MNC中放低字节)。
17 已知外部RAM始址为STR数块中有一回车符CR结束的ASCII码。请编一程序,把
它们的二进制代码放在始址为BDATA的内部RAM存储区。 18 设晶振频率为6MHz,试编一能延时20ms的子程序。
19 已知内部RAM的MA(被减数)和MB(减数)中分别有两个带符号数(16位)。请
编一减法子程序,并把差存入RESULT和RESULT+1(低8为在RESULT单元)中。 20 设8031单片机外部RAM从1000H单元开始存放100个无符号8位二进制数。要求编
一子程序能把它们从大到小依次存入内部RAM从10H开始的存储区,请画出程序流程图。
第10章 习题与思考题
1 I/O数据有哪四种传送方式?各在什么场合下使用?
2 什么叫中断?中断通常可以分为哪几类?计算机采用中断有什么好处? 3 什么叫中断源?8031有几个中断源?各有什么特点?
4 什么叫中断嵌套?什么叫中断系统?中断系统的功能是什么?
5 8031有几个中断源,各中断标志是如何产生的?又如何清“0”的?CPU响应中断时,
对应的中断服务程序入口地址各是什么?
6 中断允许寄存器IE各位定义是什么?请写出允许定时器/计数器T1溢出中断的指令。 7 试写出设定INT0和INT1上中断请求为高优先级和它们中断的程序。此时,若INT0和
INT1引脚上同时有中断请求信号输入,试问MCS-51先响应哪个引脚上中断请求?为
什么?
8 MCS-51响应中断的条件是什么?中断响应的全过程如何?
9 试写出INT0为边沿触发方式的中断初始化程序。
第11章 选题与思考题
1 定时器/计数器的作用是什么?有什么特点?
2 MCS-51单片机有几个定时器/计数器?各是多少位?计数脉冲的来源有哪些? 3 MCS-51单片机的定时器/计数器有哪几种工作方式?各有什么特点?
4 定时器/计数器用作定时器时,定时时间与哪些因素有关?定时器/计数器用作计数时,
对输入信号频率有哪些限制?
5 以定时器/计数器1对外部事件计数。每计数1000各脉冲后,定时器/计数器1转为定时工作方式。定时10ms后,又转为计数方式,如此循环不止。假定单片机晶振频率为6MHz,请使用模式1编程实现。
6 一个定时器的定时时间有限,如何计算某种工作方式下的最大定时时间?如何实现两个定时器的串行定时,以满足较长定时时间的要求?
7 使用一个定时器,如何通过软、硬件结合的方法,实现较长时间的定时? 8 8051定时器的门控信号GATE设置为1时,定时器如何启动?
9 已知8051单片机的fosc=6MHz,请利用T0和P1.0输出矩形波。矩形波高电平宽50μs,