第一章 微型计算机基础
第一章 微型计算机基础
2、微处理器是指微机的核心芯片 CPU;微处理器、存储器和输入输出设备组成微机;
题 1-1 计算机发展至今,经历了哪几代?
答:电子管计算机、晶体管计算机、集成电路计算机、超大规模集成电路计算机、非冯诺伊
曼计算机和神经计算机。
题 1-2 微机系统由哪几部分组成?微处理器、微机、微机系统的关系是什么?
答:1、微机系统分硬件和软件,硬件包括 CPU、存储器、输入输出设备和输入输出接口,
软件包括系统软件和应用软件。
微机、外部设备和计算机软件组成微机系统。
题 1-3 微机的分类方法包括哪几种?各用在什么应用领域中?
答:按微处理器的位数,可分为 1 位、4 位、8 位、32 位和 64 位机等。
按功能和机构可分为单片机和多片机。
按组装方式可分为单板机和多板机。
单片机在工业过程控制、智能化仪器仪表和家用电器中得到了广泛的应用。
单板机可用于过程控制、各种仪器仪表、机器的单机控制、数据处理等。
题 1-4 微处理器有哪几部分组成?各部分的功能是什么?
答:微处理器包括运算器、控制器和寄存器三个主要部分。
运算器的功能是完成数据的算术和逻辑运算;控制器的功能是根据指令的要求,对微型
计算机各部分发出相应的控制信息,使它们协调工作,从而完成对整个系统的控制;寄存器
用来存放经常使用的数据。
题 1-5 微处理器的发展经历了哪几代?Pentium 系列微处理器采用了哪些先进
的技术?
答:第一代 4 位或低档 8 位微处理器、第二代中高档 8 位微处理器、第三代 16 位微处理器、
第四代 32 位微处理器、第五代 64 位微处理器、第六代 64 位高档微处理器。
Pentium 系列微处理器采用了多项先进的技术,如:RISC 技术、超级流水线技术、超
标量结构技术、MMX 技术、动态分支预测技术、超顺序执行技术、双独立总线 DIB 技术、
一级高速缓冲存储器采用双 cache 结构、二级高速缓冲存储器达 256KB 或 512KB、支持多
微处理器等。
题 1-6 何为微处理器的系统总线?有几种?功能是什么?
答: 系统总线是传送信息的公共导线,微型计算机各部分之间是用系统总线连接的。
一般有三组总线:地址总线、数据总线和控制总线。
地址总线 AB 就是传送 CPU 发出的地址信息,是单向总线。
数据总线 DB 传送数据信息,是双向总线,CPU 既可通过 DB 从内存或输入设备接口电
路读入数据,又可通过 DB 将 CPU 内部数据送至内存或输出设备接口电路。
控制总线 CB 传送控制信息,其中有的是 CPU 向内存及外设发出的信息,有的是外设
等发给 CPU 的信息。
题 1-7 何为引脚的分时复用?如何从 8088 的地址、数据复用引脚准确的得到
地址和数据信息?
答:引脚的分时复用是指一个引脚在不同时刻传送不同的信息,比如:在一个总线周期里既
传送地址又传送数据。
可以利用 ALE 和 DEN 信号来获得复用的地址信号和数据信号:
ALE 为地址锁存允许信号,高电平有效时,把地址-数据线上出现的地址信号锁存到地
址锁存器中;DEN 为数据允许信号,低电平有效时该信号允许数据输入或输出。
1
第一章 微型计算机基础
在总线的 T1 状态,输出地址信息。ALE 输出一个正脉冲,它的下降沿把地址信息打入
CF:当进行加法或减法运算时,若最高位发生进位或借位则 CF=1,否则 CF=0。
OF:当算术运算的结果超出了带符号数的范围,即溢出时,OF=1,否则 OF=0。
锁存器中;当 DEN 变为低电平时,说明引脚上出现数据信息。
题 1-8 标志寄存器的功能及各种标志的含义是什么?进位标志和溢出标志的区
别是什么?
答:标志寄存器记录了算术和逻辑结果的一些特征。如 CF 进位标志位、PF 奇偶标志位、
AF 辅助进位位、ZF 零标志位、SF 符号标志位、OF 溢出标志位、TF 跟踪标志位、IF 中断
标志位、DF 方向标志位。
题 1-9 查表得出下列字符的 ASCII 码:回车、换行、空格、$、/、*、9、A、B、
C、D、E、F、a、b。
答:回车(0DH)、换行(0AH)、空格(20H)、$(24H)、/(2FH)、*(2AH)、9(39H)、A(41H)、B(42H)、
C(43H)、D(44H)、E(45H)、F(46H)、a(61H)、b(62H)。
题 1-10 何为定点数、浮点数?何为无符号数、有符号数?
答:计算机中数的小数点位置固定的表示法称为定点表示法,用定点表示法表示的数称为定
点数;计算机中数的小数点位置不固定的表示法称为浮点表示法,用浮点表示法表示的数称
为浮点数。
无符号数用全部位表示数的大小;有符号数用二进制数的最高位表示数的符号,其余的
位表示数的大小。
题 1-11 写出下列数表示的无符号数的范围
(1)8 位二进制数 (2)16 位二进制数
答:(1)8 位无符号数:0~255;8 位有符号数:-128~127;
(2)16 位无符号数:0~65535;16 位有符号数:-32768~32767;
1000 0000 0000 0001;1111 1111 1111 1110;1111 1111 1111 1111
1000 0000 0010 1101;1111 1111 1101 0010;1111 1111 1101 0011
0000 0000 0010 1101;0000 0000 0010 1101;0000 0000 0010 1101
0000 0000 0000 0001;0000 0000 0000 0001;0000 0000 0000 0001
题 1-12 用 8 位和 16 位二进制数,写出下列数的原码、反码、补码。
(1)+1(2)-1(3)+45(4)—45(5)+127(6)-127
答:(1)0000 0001;0000 0001;0000 0001
(2)1000 0001;1111 1110;1111 1111
(3)0010 1101;0010 1101;0010 1101
(4)1010 1101;1101 0010;1101 0011
(5)0111 1111;0111 1111;0111 1111
(6)1111 1111;1000 0000;1000 0001
注意:-128 用 8 位数只有补码没有原码和反码,8 位原码:-127~127,8 位反码:-127~127,8 位补码:-128~127。
题 1-13 微机某内存单元的内容为 C5H,若它表示的是一个无符号数,写出该数
在下列各进制中的表达式。
(1)二进制(2)八进制(3)BCD 码(4)十进制
答:(1)1100 0101(2)305(3)0000 0001 1001 0111(4)197
题 1-14 微机某内存单元的内容为 C5H,若它表示的是一个有符号数,则该数对
应的十进制数是什么?
0000 0000 0111 1111;0000 0000 0111 1111;0000 0000 0111 1111
1000 0000 0111 1111;1111 1111 1000 0000;1111 1111 1000 0001
2
第一章 微型计算机基础
答: -59
题 1-15 求 A95BH 与 8CA2H 之和;并写出运算后标志寄存器中的 SF、ZF、CF、OF
的值
答:和为 35FD; SF=0; ZF=0; CF=1; OF=1 。
3
第二章 微型计算机指令系统
第二章 微型计算机指令系统
题 2-1 试分别说明以下各指令的源操作数属于何种寻址方式。
答:1、MOV AX ,[SP] ——寄存器间接寻址
2、MOV DS ,AX ——寄存器寻址
3、MOV DI ,0FF00H ——立即数寻址
4、MOV BX ,[2100H] ——直接寻址
5、MOV CX ,[SI+5] ——变址寻址
6、MOV AX ,TABLE[BP][DI] ——基址加变址寻址
7、MOV DX ,COUNT[BX] ——基址寻址
题 2-2 已知有关寄存器中的内容为,(DS)=0F100H ,(SS)=0A100H ,(SI)
=1000H, ( DI ) =2000H ,( BX ) =3000H , ( BP )=4000H 。 偏 移 量
TABLE=0AH ,COUNT=0BH 。说明题 2-1 中第 1 小题和第 4~7 小题指令源操作数
的物理地址。
答:1、物理地址=SS×16+SP=0A1000H+4000H=A5000H
4、物理地址=DS×16+2100H=F3100H
5、物理地址=DS×16+SI+5H=F1000H+1000H+5H=F2005H
6、EA=BP+DI+TABLE=600AH
物理地址=DS×16+EA=F1000H+600AH=F700AH
7、EA=BX+COUNT=300BH
物理地址=DS×16+EA=F1000H+300BH=F400BH
题 2-3 某一个存储单元的段地址为 ABCDH,偏移地址为 ABCDH,试说明其物理地
址是什么;而另一个存储单元的物理地址为 F1000H,偏移地址为 FFF0H,试说明
其段地址是什么。
答:ABCD0H+ABCDH=B689DH——物理地址
F1000H-FFF0H=E1010H ,所以段地址为:E101H。
题 2-4 分别采用三种不同寻址方式的指令将偏移地址为 5000H 的存储单元的一
个字传送到 6000H 单元,要求源操作数和目标操作数分别采用以下寻址方式:
1、直接寻址
2、寄存器间接寻址
3、变址寻址
答:1、 MOV
MOV
2、 MOV
MOV
MOV
MOV
3、 MOV
MOV
AX,[5000H]
[6000H],AX
SI,5000H
DI,6000H
BX,[SI]
[DI],BX
AX,[SI+5000H]
[SI+6000H],AX
题 2-5 说明以下 8086/8088 指令是否正确,如果不正确,简述理由。
1
第二章 微型计算机指令系统
1、MOV
2、MOV
3、MOV
4、MOV
5、PUSH
6、POP
7、IN
8、XCHG
AL,SI
[1001H],[1000H]
DS ,2000H
CS ,AX
5000H
DL
AX ,1234H
BX ,0F000H
答:1、错。源数据和目标数据类型不匹配。
2、错。不能用一条 MOV 指令完成两个存储单元的数据传送。
3、错。不能直接向 DS 中送立即数。
4、错。CX 寄存器不能作为目的操作数。
5、错。数据类型不符合语法。
6、错。POP 指令以字为操作数。
7、错。端口地址 8 位,超出范围。
8、错。源数据类型错误。
题 2-6 阅读以下程序段,说明其运行结果:
1、 MOV
MOV
MOV
DX ,0F100H
DH ,[DX]
AH ,[DX]
初值: (F100H)=‘A’, (4100H)=‘B’
结果: (AH)= 41H
2、 MOV
MOV
MOV
POP
SI ,2100H
[2800H] ,SI
SP ,2800H
DI
SI ,2000H
DI ,3000H
SP ,0FF00H
结果: (DI)= 2100H , (SP)= 2802H 。
3、 MOV
MOV
MOV
PUSH SI
PUSH DI
XCHG SI ,DI
MOV
MOV
POP
POP
AL ,[SI]
BL ,[DI]
SI
DI
初值: (2000H)=‘1’, (3000H)=‘a’
结果: (SI)= 3000H , (DI)= 2000H ,
(AL)= 61H , (BL)= 31H ,
(SP)= FF00H 。
题 2-7 试用 8086/8088 指令编写程序段,分别实现以下要求:
2
第二章 微型计算机指令系统
1、将 AL 和 BL 寄存器的内容互换
2、将 1000H 和 1001H 内存单元中的字互换
3、将 2000H 和 2100H 内存单元中的字互换
4、将 BL,CL 和 DL 三个寄存器的内容互换,即 BL CL DL
答:1、 XCHG
2、 MOV
MOV
XCHG
3、 MOV
MOV
XCHG
4、 XCHG
XCHG
XCHG
AL ,BL
BL ,[1000H]
AL ,[1001H]
AL ,BL
BX,[2000H]
AX,[2100H]
AX,BX
BL ,CL
CL ,DL
DL ,BL
题 2-8 将首地址为 3000H 的 100 个存储单元的内容传送到首地址为 3100H 的内
存区,要求分别使用以下指令:
1、一般传送指令 MOV
2、串操作指令 MOVS,但不加重复前缀 REP
3、加重复前缀的串操作指令 REP MOVS
答: 1、
CIRCLE:
2、
CIRCLE:
MOV
MOV
MOV
MOV
MOV
INC
INC
LOOP
MOV
MOV
MOV
MOVSB
LOOP
SI ,3000H
DI ,3100H
CX ,100
AL ,[SI]
[DI] ,AL
SI
DI
CIRCLE
SI ,3000H
DI ,3100H
CX ,100
CIRCLE
3、 MOV
MOV
MOV
CLD
REP
SI ,3000H
DI ,3100H
CX ,100
MOVSB
题 2-9 说明以下 8086/8088 指令是否正确,如果不正确,简述理由
1、ADD
2、SUB
3、AND
4、CMP
BL , F100H
ES , 20H
0FH, AL
[SI], [DI]
3
第二章 微型计算机指令系统
5、INC
6、MUL
7、DIV
8、SAL
2000H
BL , CL
08H
AX ,5
答:
1、错。源操作数和目标操作数的数据类型不匹配。
2、错。段寄存器不能参加算术运算。
3、错。源操作数和目标操作数位置颠倒。
4、错。不能同时为存储器。
5、错。操作数类型错误。
6、错。其中一个操作数是隐含的。
7、错。必须是寄存器或存储器操作数。
8、错。超过 1 的循环次数要通过赋值 CL 来完成。
题 2-10 已知寄存器 AL 和 BL 的内容分别如下,试分析执行 ADD AL , BL 指令后,
寄存器 AL 以及标志位 CF,ZF,SF,AF,OF 和 PF 的内容。
1、(AL)=45H ,(BL)=31H
2、(AL)=7AH ,(BL)=56H
3、(AL)=F2H ,(BL)=8DH
4、(AL)=B1H ,(BL)=F8H
5、(AL)=37H ,(BL)=C9H
答:
题号
1、
2、
3、
4、
5、
AL
76H
D0H
7FH
A9H
00H
CF
ZF
SF
AF
OF
PF
0
0
1
1
1
0
0
0
0
1
0
1
0
1
0
0
1
0
0
1
0
1
1
1
0
0
0
0
1
1
(注:考虑 CF 时要当操作数为无符号数,考虑 OF 时要当操作数为有符号数,下同)
题 2-11 已知寄存器 AL 和 BL 的内容分别如下,试分析执行 SUB AL , BL 指令以
后,寄存器 AL 以及标志位 CF,ZF,SF,AF,OF 和 PF 的内容。
1、(AL)= 96H , (BL)= 42H
2、(AL)= 27H , (BL)= 38H
3、(AL)= 6CH , (BL)= A1H
4、(AL)= B4H , (BL)= E7H
5、(AL)= 1DH , (BL)= E5H
答:
题号
1、
2、
3、
4、
5、
AL
54H
EFH
CBH
CDH
38H
CF
ZF
SF
AF
OF
PF
0
1
1
1
1
0
0
0
0
0
0
1
1
1
0
0
1
0
1
0
1
0
1
0
0
0
0
0
0
0
4
第二章 微型计算机指令系统
题 2-12 阅读以下程序段:
SI ,4000H
DI ,4100H
AL ,[SI]
AL ,[DI]
MOV
MOV
MOV
ADD
DAA
MOV
MOV
MOV
DAA
MOV
[DI] ,AL
AL ,[SI+1]
AL ,[DI+1]
[DI+1] ,AL
1、根据给定的初值,说明运行结果。
初值: (4000H)=63H , (4001H)=54H
(4100H)=88H , (4101H)=29H
结果: (4100H)= 51H , (4101H)= 84H 。
2、在以上程序段中,当执行 ADD AL , [DI]指令,但尚未执行 DAA 指令时,
有关寄存器和标志位的内容为:
(AL)= EBH ,(CF)= 0 , (ZF)= 0 , (SF)= 1 ,
(AF)= 0 ,(OF)= 0 , (PF)= 1 。
3、在以上程序段中,当第一个执行 DAA 指令后,有关寄存器和标志位的内
容为:
(AL)= 51H ,(CF)= 1 , (ZF)= 0 , (SF)= 0 ,
(AF)= 1 ,(OF)= 0 , (PF)= 0 。
4、如果在以上程序段中去掉两条 DAA 指令,但初值不变,则运行结果为:
(4100H)= EBH , (4101H)= 7DH 。
题 2-13 阅读以下程序段:
START:
LOOPER:
X1:
NEXT:
LEA
MOV
INC
MOV
CMP
JNC
ADD
JMP
ADD
MOV
DEC
JNZ
BX ,TABLE
CL ,[BX]
BX
AL ,[BX]
AL ,0AH
X1
AL ,30H
NEXT
AL ,37H
[BX] ,AL
CL
LOOPER
1、假设从地址 TABLE 开始,10 个存储单元的内容依次为:05H,01H,
09H,0CH,00H,0FH,03H,0BH,08H,0AH
依次写出运行以上程序段以后,从地址 TABLE 开始的 10 个存储单元的内容。
2、简单扼要说明以上程序段的功能。
答:1、
5