微机原理与接口技术第1-11章作业答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章:
1.1 为什么需要半加器和全加器,它们之间的主要区别是什么?
答:无论是全加器还是半加器均能实现两个一位的二进制数相加,得到相加的和和向高位的进位。

半加器不需要考虑来自低位的进位,而全家器需考虑来自低位的进位。

1.2 用补码法写出下列减法的步骤:
(1) 1111(2)-1010(2)=?(2)=?(10)
=00001111B+11110110B
=00000101B=5D
(2) 1100(2)-0011(2)=?(2)=?(10)
=00001100B+11111101B
=00001001B=9D
第二章:
2.1 ALU是什么部件?它能完成什么运算功能?试画出其符号。

答:ALU是算术逻辑运算单元的简称,该部件既能进行二进制数的四则运算,也能进行布尔代数的逻辑运算。

符号略!
2.2 触发器、寄存器及存储器之间有什么关系?请画出这几种器件的符号。

答:触发器能存储一位的二进制信息,是计算机记忆装置的基本单元。

寄存器是由多个触发器构成的,能存储多位二进制信息。

存储器又是由多个寄存器构成的。

器件的符号略!
2.4 累加器有何用处?画出其符号。

答:累加器是由多个触发器构成的多位寄存器,作为ALU运算过程的代数和的临时存储处。

累加器不仅能装入及输出数据外,还能使存储其中的数据实现左移或右移。

符号略!
2.6 何谓L门及E门?它们在总线结构中有何用处?
答:L门即LOAD控制端,是用以使寄存器接受数据输入的控制门;
E门即ENABLE控制端,是三态输出门,用以控制寄存器中的数据输出至总线。

有了L门及E门,就可以利用总线结构,从而使信息传递的线路简单化。

2.10 除地线公用外,5根地址线和11根地址线各可选多少个地址?
答:5根地址线可选25=32个地址;11根地址线可选211=2048个地址。

2.12 存储地址寄存器(MAR)和存储数据寄存器(MDR)各有何用处?
答:MAR和MDR均是存储器的附件。

存储地址寄存器(MAR)是一个可控的缓冲寄存器,具有L门以控制地址的输入,它和存储器的联系是双态的,存储地址寄存器存放的是索要寻找的存储单元的地址。

存储数据寄存器(MDR)也是一个可控的缓冲寄存器,它的作用是将要写入RAM中的数据暂存于MDR中。

第三章:
3.2 程序计数器PC的内容是什么意义?
答:PC中的内容为指令所在的存储单元的地址,每执行一条指令,PC中的内容自动加1。

3.3 指令寄存器IR从PROM接收到指令字(8位)后的运行过程如何,起什么作用? 答:IR将其最高有效位的高4位送至控制器中的控制矩阵,经其分析后,辨出所应执行的运算(指令),而将其最低有效位的低4位地址字段送入总线,至MAR,作为地址到PROM中去寻找操作数。

3.5 环形计数器有何用处?什么叫环形字?
答:环形计数器用以产生机器节拍,即按时钟周期来安排每条指令的取指及执行顺序。

环形计数器的输出T=T5T4T3T2T1T0,T各位依次为高电平,称其为控制字。

3.6 什么叫例行程序?什么叫机器周期、取指周期和执行周期?本章简化式计算机的机
器周期包括几个时钟周期(机器节拍)?机器周期是否一定是固定不变的?
答:例行程序:是由控制部件内部的结构确定了各条指令的执行步骤。

机器周期:执行一条指令所需的时间,分为取指周期和执行周期。

取指的过程即为取指周期,包括T0地址节拍、T1储存节拍、T2增量节拍。

执行指令的过程即为执行周期,包括T3、T4、T5 3个节拍。

本章的简化模型其机器周期包括有6个机器节拍,对该模型而言是不变的,但对不同的计算机而言,不是固定不变的。

3.7 控制部件包括哪些主要环节?各有何用处?
答:控制部件包括:指令译码器、环形计数器、控制矩阵。

指令译码器:将来自指令寄存器IR的高4位指令字段译成控制动作的电平信号送
入控制矩阵。

环形计数器:产生环形字,以指挥例行程序的运行顺序。

控制矩阵:将来自环形计数器时钟节拍及指令译码器的控制动作信号进行分析而产生相应的控制字,从而使整个计算机进行协调一致的动作。

3.9 本章第2个微型计算机的指令系统有多少条指令?它们可分成几种类型?各个类型
的特点是什么?
答:本章的第二个计算机模型共有28条指令,可分为3类,分别为:访问存储器指令、转移指令和逻辑运算指令。

访问存储器指令的特点:由指令寄存器分出来的地址字段必定进入存储器地址寄存器MAR。

转移指令的特点:由指令寄存器分出来的地址字段必定进入程序计数器或子程序计数器。

逻辑运算指令的特点:是与存储器及程序计数器无关,而仅与ALU、A及B有关。

3.12 指令寄存器IR是如何将其指令字段和地址字段分送出去的?这两个字段的位数
是否保持不变?
答:指令寄存器IR中的内容,指令不同,其分段的方式也不同。

访问存储器和转移的指令,采用4-8分,高4位为指令字段,送给CON;低8位为地
址字段,经MAR送给地址总线上。

逻辑运算的指令,采用8-4分,低4位无用,高8位代表指令字段,其中高4位代表逻辑运算指令的操作码,中间4位为其选择码。

第四章:
4.4 8086系统中的物理地址是如何得到的?假如CS=2000H,IP=2100H其物理地址应是
多少?
答:1、物理地址=段基址左移4位(二进制数)+ 地址偏移量
物理地址=段基址左移1位(十六进制数)+ 地址偏移量
物理地址=段基址x16(十进制数)+ 地址偏移量
2、物理地址=20000H + 2100H = 22100H。

4.5 什么叫总线周期?8086cpu的一个总线周期包括多少个时钟周期?什么情况下要
插入T W的等待周期?插入多少个T W取决于什么因素?
答:8086/8088CPU把BIU完成一次访问存储器或外设操作所需要的时间称之为一个总线周期。

一个总线周期最少包括4个时钟周期(T1-T4)。

当访问存储器(读、写)或外设时,若存储器或外设不能及时地配合CPU传送数据,存储器或外设通过
“READY”信号在T3之前向CPU发一个“数据未准备好“信号,即“READY”为低电平,CPU会在T3之后插入一个或多个等待时钟周期T W。

当存储器或外设准备好数据,通过“READY”发“准备好”信号,“READY”变为高电平,CPU接收到这个信号后,会自动脱离T W状态进入T4状态。

因此,插入多少个T W取决于“READY”
信号。

4.6 什么是地址锁存器?8086/8088系统中为什么要用地址锁存器?锁存的是什么
信息?
答:地址锁存器就是一个暂存器,它根据控制信号的状态,将地址总线上的地址代码暂存起来。

8086/8088的数据和地址总线采用分时复用操作方式,即用同一总线既传递地址又传递数据。

当微处理器与存储器交换信号时,首先由CPU发送存储器存储单元的地址,同时发出允许锁存信号ALE给锁存器,当锁存器接到该信号后将地址/数据总线上的地址所锁在锁存器中,随后才能传送数据。

4.7 最小组态和最大组态的区别何在?用什么方法将8086/8088置为最大组态和最小
组态?
答:1、最小组态:就是在系统中只有8086/8088一个微处理器。

在这种系统中,所有的总线控制信号都直接由8086/8088产生,因此,系统中的总线控制逻辑电路被减到最少。

特点:数据总线驱动器选用,总线控制信号都直接由8086/8088产生。

最大组态:是相对最小模式而言,它用在中等规模的或者大型的8086/8088系统中。

在此系统中,包含两个或多个微处理器,其中一个主处理器就是8086/8088,其他的处理器称为协处理器,它们是协助主处理器工作的。

和8086/8088配合的协处理器有两个,一个是数值运算协处理器8087,一个是输入/输出协处理器
8089。

特点:数据总线驱动器选用,总线控制信号都由总线控制器8288产生。

2、 MN/MX 控制8088工作于什么组态。

接电源(+5V),8088处于最小组态,接地,
8088处于最大组态。

4.10 RESET 信号来到后,8086/8088CPU 的CS和IP分别等于多少?
答:复位信号来到后,CPU便结束当前操作,并对微处理器的IP清零,而将CS设置为FFFFH。

当复位信号变为低电平时,8088从FFFF0H开始执行程序。

4.11 什么是指令周期、总线周期和时钟周期?
答:指令周期:执行一条指令所需要的时间。

总线周期:每当CPU要从存储器或输入输出IO端口存取一个字节就是一个总线周期。

分类:基本的总线周期有存储器读周期、存储器写周期、输入/输出端口的读周期、输入/输出端口的写周期及中断响应周期。

时钟周期:每个总线周期通常包含4个T状态,T状态就是CPU处理动作的最小单位,即时钟周期。

第七章
7.1变量和标号都有哪些属性?它们的区别是什么?
答:变量和标号都有3个属性:段基址、地址偏移量和类型。

区别:变量的段基址是指变量所在段的起始地址的高16位,变量的偏移地址是指变量
所在段的起始地址到该变量的字节距离。

变量的类型可为:字节、字、双字、6字节、
4字、10字节。

标号的段基址是定义该标号所在段的起始地址的高16位,标号的偏移地址是指标号所
在段的起始地址到该标号定义指令的字节距离。

标号的类型可为:NEAR和FAR。

7.3设AX=1122H,BX=3344H,CX=5566H,SS=095BH,SP=0040H,下述程序段执行后AX、
BX、CX和DX 4个通用寄存器的内容是多少?画出堆栈存储器的物理地址及其存储内容和SP指向的示意图。

答:AX=3344H,BX=5566H 3344H,CX=5566H,DX=1122H,
7.4 设SP=0040H,如果用进栈指令存入5个数据,则SP=0036H,若又用出栈指令取出2个数据,则SP=003AH。

7.5 将表中程序段各指令执行后AX的值用十六进制数填入表中:
程序段AX 程序段AX
MOV AX,0 0000H OR AX,3FDFH BFDFH
DEC AX FFFFH AND AX,0EBEDH ABCDH
ADD AX,7FFFH 7FFEH/CF=1 XCHG AH,AL CDABH ADC AX,1 8000H SAL AX,1 9B56H
NEG AX 8000H RCL AX,1 36ADH
7.6 用十六进制数填写下表,已知DS=1000H,ES=2000H,SS=0FC0H,通用寄存器的值为0。

指令存储器操作数的逻辑地址(H)SUB [BP],AL SS:BP= 0FC0:0000H = 0FC00H
MOV [BX], BH DS:BX=1000:0000H = 10000H
MOV [DI], DL DS:DI=1000:0000H = 10000H
MOV ES[SI], BL ES:SI=2000:0000H = 20000H
ADD 500H[BP], AH SS:BP+500H= 0FC0:500H = 10100H
SUB [SI-300H], AL DS: SI-300H =1000:0FD00H = 0FD00H
MOV 1000H[DI], DL DS: DI+1000H =1000:1000H = 11000H
MOV [BX-8], CL DS:BX-8=1000:0FFF8H = 0FFF8H
MOV ES:1000H[DI], CH ES:DI+1000H=2000:1000H = 21000H
MOV [BP+SI], DH SS:BP+SI= 0FC0:0000H =0FC00H
7.9 分别写出实现如下功能的程序段:
1、将AX 中间8位(作高8位),BX低4位和DX高4位(作低4位)拼成一个新字。

答: MOV CL,4
SHL AX,CL
SHL BL,CL
MOV AL,BL
SHR DH,CL
OR AL,DH
2、将CX中间8位取反,其余位不变。

答:XOR CX,0FF0H
3、将数据段中以BX为偏移地址的连续3单元中的无符号数求和。

答: MOV CX,3
MOV AL,0
LAB: ADD AL,[BX]
ADC AH,00H
INC BX
LOOP LAB
4、将数据段中以BX为偏移地址的连续4单元的内容颠倒过来。

答:MOV AX,[BX]
XCHG AH,[BX+2]
XCHG AL,[BX+3]
MOV [BX],AX
5、将BX中的4位压缩BCD数用非压缩BCD 数形式按序放在AL,BL,CL
和DL中。

答:MOV CL,4
MOV DL,BL
AND DL,0FH
MOV AL,BH
SHR AL,CL
XCHG BH,BL
AND BL,0FH
SHR BH,CL
MOV CL,BH
6、不用乘法指令实现AL(无符号数)乘以20. 答:MOV AH,0
MOV CL,2
SHL AX,CL
MOV BX,AX
SHL AX,CL
ADD AX,BX
7.10 一数据段定义为:
DATA SEGMENT
S1 DB 0,1,2,3,4,5
S2 DB ‘12345’
COUNT EQU $-S1
NB DB 3 DUP(2)
NW DW 120,-256
P DW -1
DATA ENDS
(1)、画出该数据段中数据的存储形式。

答: S1 00
01
02
03
04
05
S2 31
32
33
34
35
NB 02
02
02
NW 78H ;120=0078H
00H
00H ;-256=FF00H
FFH
P FFH ;-1=FFFFH
FFH
(2)、在下表中填写各变量的偏移地址和各变量的值。

(3)、填写表中程序段各指令执行后,目的寄存器的值,并指出源操作数所使用的寻址方式。

(4)、改正下列程序段中不正确指令的错误:
a、MOV AX,S1 ;S1为字节变量
改: MOV AX,WORD PTR S1
b、MOV BP,OFFSET S2 ;
MOV CL,[BP] ;BP默认的逻辑段为堆栈段
改: MOV CL,DS:[BP]
c、MOV SI,OFFSET NB
MOV [SI],’+’
改: MOV BYTE PTR [SI],’+’
d、MOV DL,NW+2 ;NW+2为字变量
改: MOV DX,NW+2
e、MOV DI,CH ;类型不匹配
改: MOV DI,CX
f、MOV BX,OFFSET S1
MOV DH,BX+3 ;类型不匹配
改: MOV DH,[BX+3]
g、INC COUNT ;COUNT是立即数
改: MOV BX,COUNT
INC BX
h、MOV NB,S2 ;MOV 指令的两个操作数不能同为存储器操作数改: MOV AL,S2
MOV NB,AL
i、MOV AX,[BX+S1]
改: MOV AX,WORD PTR [BX+S1]
j、ADD AX,[DX+NW] ;只能使用BX、SI、DI、BP 4个寄存器改: ADD AX,[BX+NW]
第八章:
8.5编写求两个4位压缩BCD数之和,将和送显示器显示的程序。

方法1: W1 DW 8931H
W2 DW 5678H
SUM DB 3 DUP(0)
W3 DB 7 DUP(0)
MOV AL,BYTE PTR W1
ADD AL,BYTE PTR W2
DAA
MOV SUM,AL
MOV AL,BYTE PTR W1+1
ADC AL,BYTE PTR W2+1
DAA
MOV SUM+1,AL
MOV SUM+2,0
RCL SUM+2,1
MOV SI,OFFSET SUM+2
MOV DI,OFFSET W3
MOV CX,3
AGAIN:MOV AL,[SI]
PUSH CX
MOV CL,4
SHR AL,CL
POP CX
ADD AL,30H
MOV [DI],AL
MOV AL,[SI]
AND AL,0FH
ADD AL,30H
MOV [DI+1],AL
DEC SI
ADD DI,2
IOOP AGAIN
MOV W3+6,’$’
MOV DX,OFFSET W3
MOV AH,9
INT 21H
方法2: W1 DW 8931H
W2 DW 5678H
W3 DB 6 DUP(0)
MOV CX,2
MOV SI,OFFSET W1
MOV DI,OFFSET W2
MOV BX,OFFSET W3+4
XOR AL,AL
AA: MOV AL,[SI]
ADC AL,[DI]
MOV DH,AL
AND AL,0FH
ADD AL,30H
MOV [BX],AL
DEC BX
PUSH CX
MOV CL,4
SHR DH,CL
ADD DH,30H
MOV [BX],DH
POP CX
DEC BX
INC SI
INC DI
LOOP AA
MOV AL,0
RCL AL,1
ADD AL,30H
MOV [BX],AL
MOV W3+5,’$’
MOV DX,OFFSET W3
MOV AH,9
INT 21H
8.6编写程序,讲字节变量BAVR中的无符号二进制数(0~FFH)转换为BCD数,在屏幕上显示结果。

解: DISPLAY DB 4 DUP(0)
BVAR DB ?
MOV AL,BVAR
MOV SI,OFFSET DISPLAY+3
MOV BYTE PTR{SI},’$’
MOV CL,10
AGAIN:MOV AH,0
DIV CL
ADD AH,30H
DEC SI
MOV [SI],AH
AND AX,AX
JNZ AGAIN
MOV DX,OFFSET DISPLAY
MOV AH,9
INT 21H
8.14 编程序将符号字数组ARRAYW中的正负数分别送入正数数组PLUS和负数数组MINUS,同时把‘0’元素的个数送入字变量ZERON。

ARRAYW DW ‘**’, ‘**’, ‘**’, ‘**’,……
COUNT=($-ARRAYW)/2
PLUS DW COUNT DUP(0)
MINUS DW COUNT DUP(0)
ZERON DB 0
DATA ENDS
MOV SI,OFFSET ARRAYW
MOV DI,OFFSET PLUS
MOV DX,OFFSET MINUS
MOV CX,COUNT
AA: CMP WORD PTR [SI],0
JZ Z1
JNS Z2
MOV BX,WORD PTR [SI]
MOV [DX],BX
ADD DX,2
JMP Z3
Z1: INC ZERON
JMP Z3
Z2: MOV AX,WORD PTR [SI]
MOV [DI],AX
ADD DI,2
JMP Z3
Z3: ADD SI,2
LOOP AA
END
8.16 从键盘输入一字符串(字符数>1),然后在下一行以相反的次序显示出来(采用9号和10号系统功能调用)。

IBUF DB 0FFH,0,255 DUP(0)
DATA ENDS
MOV DX,OFFSET IBUF
MOV AH,10
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
MOV BL,IBUF+1
MOV BH,0
MOV IBUF[BX+2],‘$’
MOV SI,OFFSET IBUF+2
MOV DI,OFFSET IBUF[BX+1]
AGAIN: MOV AL,[SI]
XCHG AL, [DI]
MOV [SI],AL
INC SI
DEC DI
CMP SI,DI
JC AGAIN
MOV DX,OFFSET IBUF+2
MOV AH,9
INT 21H
第九章:
接口电路数据传送的方式有哪两种?各自的特点是什么?答:并行和串行数据传送方式。

特点:并行数据传送的每一位都对应独立的传输线路,所以数据传送速度快,但线路多,一般只用于较短距离的数据传送。

串行数据传送采用一根信号线串行传送每一位信号,所以数据传送速度慢,但线路少,一般适用于远距离的数据传送。

但串行数据传送比并行数据传送的控制电路复杂。

第十章:
10.2 什么叫中断源?微型计算机中一般有哪几种中断源?识别中断源一般有哪几种方法?
解:1、引起中断的原因或发出中断申请的来源,称之为中断源。

2、中断源:计算机的故障检测与自动处理,人机联机,多机系统,多道程序分时操作和实时信息处理等。

3、识别方法:
方法1、每个中断源都有一条中断请求信号线,且固定一个中断服务程序的入口地址,CPU一旦检测到某条信号线有中断申请,就自动进入到相应的中断服务程序。

方法2、采用向量中断的方式识别,中断源发出中断请求信号后,在CPU 响应了它的中断请求后会送给CPU一个中断向量,CPU根据这个中断向量得到该中断源的中断服务子程序的入口地址。

10.3 中断分为哪几种类型?它们的特点是什么?
中断包括外部中断(硬件中断)和内部中断(软件中断)两大类,其中外部中断又分为可屏蔽中断和不可屏蔽中断。

可屏蔽中断的特点是受标志寄存器中IF位的控制,当IF=1时,允许CPU响应可屏蔽中断请求,当IF=0时,CPU不响应可屏蔽中断请求;不可屏蔽中断的特点是不受标志寄存器中IF位的控制;内部中断除单步中断外都是不可屏蔽的,但单步中断的屏蔽不是靠IF位,而是靠TF位的置0实现。

10.5 CPU响应中断请求信号线INTR来的中断的条件是什么?CPU如何响应中断?
解:CPU在现行指令结束后响应中断,即运行到最后一个机器周期的后一个T状态时,CPU 才检测INTR线。

若发现有中断请求,且系统是中断的(IF=1),CPU就响应中断,转入中断响应周期。

在中断响周期,CPU中断响应及中断过程如下:
(1) 关中断,在CPU响应中断后,发出中断响应信号的同时,内部自
动地关中断。

(2) 保留断点,CPU响应中断后把CS和IP推入堆栈保存,以备中断
处理完毕后,能返回被中断程序。

(3) 给出中断入口地址,转入相应的中断服务程序。

(4) 保护现场,把现场推入堆栈保存起来。

(5)中断服务,执行中断服务子程序。

(6) 恢复现场,把现场从堆栈中弹出来。

(7) 中断返回,通过中断返回返回指令,返回断点,系统回到被中断
程序。

10.7 中断控制器8259A的功能是什么?它有哪些命令字?
解:1、它具有8级优先权控制,通过级联可扩展至64级优先权控制。

每一级中断都可以屏蔽或允许。

在中断响应周期,8259A可提供相应的中断向量,从而能迅速地转至中断服务程序。

2、初始化命令字ICW包括ICW1~ICW44个命令字,用于设定8259A的工作方式、
中断类型码等。

操作命令字OCW是操作过程中给出的命令, OCW包括 OCW1~
OCW3 3个命令字。

10.8 中断控制器8259A的中断屏蔽寄存器IMR和中断允许标志位IF有什么差别?在中断系统中是如何起作用的?
解:IMR只能在系统处于开中断时,对单个中断源中断请求信号进行控制;而IF可以控制整个系统所有可屏蔽中断源。

通过IMR将中断源输出的中断请求信号与IMR对应位相与后再作为该中断源的中断请求信号,IMR中被屏蔽的中断源其中断请求信号将不被接受。

IF标志位等于1时,系统处于开中断状态,可屏蔽中断的中断源其中断请求才有可能被响应,当IF等于0时,系统处于关中断状态,可屏蔽中断的中断源的中断请求将不被响应。

10.12已知中断向量表中,001C4H中存放2200H,001C6H中存放
3040H,则其中断类型码是:001C4H/4=00071H,中断服务程序的入口地址的逻辑地址和物理地址分别为3040H:2200H和32600H。

第十一章
11.1 写出A端口作基本输入,B端口做基本输出的初始化程序。

解:MOV DX,CTL8255A
MOV AL,90H
OUT DX,AL
11.2 编制一段程序,用8255A 的C端口按位置位/复位,将PC7置0,将PC4置1,端口地址位380H~383H。

解:MOV DX,380H
MOV AL,80H
OUT DX,AL
MOV AL,0EH
OUT DX,AL
MOV AL,09H
OUT DX,AL。

相关文档
最新文档