微机原理与接口技术习题答案29朱红著1.docx
《微机原理与接口技术习题答案29朱红著1.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术习题答案29朱红著1.docx(118页珍藏版)》请在冰豆网上搜索。
微机原理与接口技术习题答案29朱红著1
习题
一、选择题
1.8086/8088CPU内部有一个始终指示下条指令偏移地址的部件是_______。
A.SPB.CSC.IPD.BP
答案:
C
2.指令队列的作用是_________。
A.暂存操作数地址B.暂存操作数C.暂存指令地址D.暂存预取指令
答案:
D
3.8086/8088下列部件中与地址形成无关的是______。
A.ALUB.通用寄存器C.指针寄存器D.段寄存器
答案:
A
4.对于8086,下列说法错误的是_______。
A.段寄存器位于BIU中B.20位的物理地址是在EU部件中形成的
C.复位后CS的初值为FFFFHD.指令队列的长度为6个字节
答案:
B
5.8086/8088中ES、DI分别属于_______。
A.EU、BIUB.EU、EUC.BIU、BIUD.BIU、EU
答案:
D
6.BIU与EU工作方式的正确说法是_______。
A.并行但不同步工作B.同步工作
C.各自独立工作D.指令队列满时异步工作,空时同步工作
答案:
A
7.在执行转移、调用和返回指令时,指令队列中原有的内容_______。
A.自动清除B.用软件清除C.不改变D.自动清除或用软件清除
答案:
A
8.下列说法中,正确的一条是______
A.8086/8088标志寄存器共有16位,每一位都有含义。
B.8088/8086的数据总线都是16位。
C.8086/8088的逻辑段不允许段的重叠和交叉
D.8086/8088的逻辑段空间最大为64KB,实际应用中可能小于64KB。
答案:
D
9.8086/8088工作于最大模式,是因为_____。
A.可以扩展存储容量B.可以扩大I/O空间
C.可以构成多处理器系统D.可以提高CPU主频
答案:
C
10.8088/8086最大模式比最小模式在结构上至少应增加_____。
A.中断优先级控制器B.总线控制器C.数据驱动器D.地址锁存器
答案:
B
11.组成最大模式下的最小系统,除CPU、时钟电路,ROM,RAM及I/O接口外,至少需增加的芯片类型为______。
a.总线控制器b.总线裁决器c.地址锁存器d.总线驱动器
A.b,dB.a,b,cC.a,dD.a,c,d
答案C
12.工作在最小模式时,对CPU而言,下列信号皆为输入信号的是______。
A.HOLD、
、READYB.
、
、READY
C.
、HOLD、
D.
、HOLD、READY
答案:
A
13.在最小工作模式下,8088/8086CPU在每个时钟脉冲的______处,对HOLD引脚上的信号进行进行检测。
A)上升沿B)下降沿C)结束位置D)中间位置
答案:
A
14.LOCK引脚的功能是____。
A.总线锁定B.地址锁定C.数据输入锁定D.数据输出锁定
答案:
A
15.与存储器(或外设)同步以及与协处理器同步的引脚信号依次为_______。
A.READY、
B.READY、HOLD
C.
、RESETD.
、
答案:
A
16.工作在最大模式时,下列信号皆为输出信号的是_______。
A.QS0、QS1、
B.QS0、
、
C.QS1、
、S0D.
、QS1、
答案:
A
17.8086/8088最大模式时,
引脚有效时的正确含义是_____。
A.能中断CPU的工作B.能进行DMA操作
C.其它总线部件不能占有总线D.暂停CPU的工作
答案:
C
18.工作在最大模式时,经总线控制器8288将对应CPU最小模式时的三个引脚状态进行组合,产生控制和命令信号,这三个引脚应为________。
A.
B.
C.
D.
答案:
C
19.8088/8086中,关于总线周期叙述不正确的是_______。
A.总线周期通常由连续的T1~T4组成B.在读写操作数时才执行总线周期
C.总线周期允许插入等待状态D.总线周期允许存在空闲状态
答案:
B
20.在8086读总线周期中,进入T3后发现READY=0,需要插入等待状态,则在插入等待状态时其引脚的高地址A19~A16_______。
A.表示读数据对应的高4位的地址B.表示CPU当前工作状态
C.处于高阻状态D.处于不定状态
答案:
B
21.设8086/8088工作于最小模式,在存储器读、写周期中,总线AD15~AD0上数据开始有效的时刻(不插入Tw)分别是______。
A.T2、T2B.T2、T3C.T3、T4D.T3、T2
答案:
D
二、填空题
1.8086/8088CPU在结构上由两个独立的处理单元_______和_______构成,这两个单元可以_____工作,从而加快了程序的运行速度。
答案:
EUBIU并行
2.8086是Intel系列的16位处理器,从功能上,它分为两个部分:
即总线接口单元和执行单元。
总线接口单元由_______、_______、_______、_______、_______等寄存器和20位地址加法器和6字节指令队列构成。
执行单元有4个通用寄存器,即______;4个专用寄存器,即____、_____、_____、______等寄存器和算术逻辑单元组成。
答案:
AX、BX、CX、DXSP、BP、DI、SI
3.任何CPU都有一个寄存器存放程序运行状态的标志信息,在8086中,该寄存器是_____。
其中,根据运算结果是否为零,决定程序分支走向的标志位是____。
答案:
FRZF
4.8086/8088CPU中标志寄存器的3个控制位是_____、_____、______。
答案:
DFIFTF
5.逻辑地址9B50H:
2C00H对应的物理地址是______。
答案:
9E100H
6.在任何一个总线周期的T1状态,ALE输出_____。
答案:
高电平
7.8086有两种工作模式,即最小模式和最大模式,它由______决定。
最小模式的特点是_______,最大模式的特点是________。
答案:
CPU提供全部的控制信号需要总线控制器8288
8.8086CPU可访问的存储器的空间为1MB,实际上分奇数存储体和偶数存储体两部分,对于奇数存储体的选择信号是________,对于偶数存储体的选择信号是_______,对于每个存储体内的存储单元的选择信号是___________。
答案:
A0A19~A1
9.在8086的最小系统,当
,
,
时,CPU完成的操作是_______。
答案:
I/O读
10.在最小模式下,执行“OUTDX,AL”指令时,
、
、
、
的状态分别是___。
答案:
0,0,1,1
11.8086CPU从偶地址读写两个字节时,需要_____个总线周期,从奇地址读取两个字节时,需要_____个总线周期。
答案:
12
12.8086在存取存储器中以偶地址为起始地址的字时,
,
,A0的状态分别是____。
答案:
100
13.8086向内存地址1200BH写一个字节数据时,需要一个总线周期,在该总线周期的T1状态,
为______,A0为_____。
答案:
0,1
14.假设某个总线周期需插入两个Tw等待状态,则该总线周期内对READY信号检测的次数是_______。
答案:
3
15.8086CPU上电复位后,CS=_____,IP=_____,DS=_____,标志寄存器FR=_____。
答案:
0FFFFH,0,0,0
16.8088/8086的复位信号至少要维持______个时钟周期。
答案:
4
17.8086CPU工作在最小模式下,控制数据流方向的信号是____、____、____、____、____。
答案:
、
、
、
、
18.当存储器的读出时间大于CPU所要求的时间时,为了保证CPU与存储器的周期配合,就要利用______信号,使CPU插入一个_____状态。
答案:
准备好(READY)等待(Tw)状态
19.当8086/8088工作于最大模式时,QS1=1,QS0=0,其表示指令队列的状态为______。
答案:
队列为空。
20.在T2、T3、Tw、T4状态时,S6为_____,表示8086/8088当前连在总线上。
答案:
低电平
21.8086/8088提供的能接受外中断请求信号的引脚是_____和_____。
两种请求信号的主要不同处在于是否可______。
答案:
INTRNMI屏蔽
22.一台微机的CPU,其晶振的主振频率为8MHz,二分频后作为CPU的时钟频率。
如果该CPU的一个总线周期含有四个时钟周期,那么此总线周期是_____us。
答案:
0.125
23.某微处理器的主频为20MHz,由2个时钟周期组成一个机器周期,设平均3个机器周期可完成一条指令,其时钟周期和平均运算速度分别为_____。
答案:
50ns,3.33MHz
三、问答题
1.8086/8088CPU在结构上由哪两个独立的处理单元构成?
这样的结构最主要的优点是什么?
答案:
在微机中,一条机器指令由操作数和操作码构成,再由若干指令构成程序。
微处理器执行一条指令的完整步骤需要两个阶段:
取指和执行。
取指是从内存中取出指令,执行是分析指令要求实现的功能,读取所需的操作数,执行指令规定的操作。
传统的8位处理器采用顺序执行的方式,各条指令的执行按以上两个阶段交替执行。
也就是说,首先取一条指令,然后执行该指令,之后再取下一条指令,再执行,如此重复,直到整个程序执行完毕。
在8086中,为了加快程序的执行速度,采用了重叠执行的方式,各条指令的执行过程是重叠进行的。
每条指令的执行过程也包括取指和执行两个阶段,但是相邻两条指令的执行过程有一部分是同时进行的。
在执行一条指令时,可以同时取出下一条指令。
在当前指令执行完毕后,就可以立即执行下一条指令。
显然,这种重叠执行的方式大大加快了程序的执行速度。
为了实现指令的重叠执行方式,8086/8088微处理器内部分为两个独立的功能部件:
执行单元EU和总线接口单元BIU,执行单元EU专门负责指令的执行,总线接口单元BIU是从内存指定区域取出指令送到指令队列缓冲器的。
EU和BIU两个功能部件并行工作,EU执行的BIU在前一时刻取出的指令,与此同时,BIU又取出下一时刻要执行的指令,由此能使大部分取指令和执行指令的操作重叠进行,大大缩短了等待指令所需的时间,提高了微处理器的利用率和整个系统的执行速度。
2.完成下列补码运算,并根据结果设置标志SF、ZF、CF和OF,指出运算结果是否溢出。
(1)00101101B+10011100B
(2)01011101B-10111010B
(3)876AH-0F32BH(4)10000000B+11111111B
答案:
(1)C9HSF=1ZF=0CF=0OF=0未溢出
(2)01011101B-10111010B=01011101B+01000110BA3HSF=1ZF=0CF=1OF=1有溢出求-Y的补码,即正数-Y的真值
(3)876AH-0F32BH=876AH+0CD5H943FHSF=1ZF=0CF=1OF=0未溢出
(4)7FHSF=0ZF=0CF=1OF=1有溢出
3.存储器采用分段方法进行组织有哪些好处?
答案:
8086微处理器CPU中寄存器都是16位,16位的地址只能访问大小为64KB以内的内存。
8086系统的物理地址由20根地址线形成,怎样用16位数据处理能力实现20位地址的寻址呢?
要做到对20位地址空间进行访问,就需要两部分地址,在8086系统中,就是由段地址和偏移地址组成的。
而这两个地址都是16位,将这两个地址采用相加的方式组成20位地址去访问存储器。
在8086系统的地址形成中,当段地址确定后,该段的寻址范围就已经确定,其容量不大于64KB。
同时,通过修改段寄存器的内容,可达到逻辑段在整个1MB空间中浮动。
各个逻辑段之间可以紧密相连,可以中间有间隔,也可以相互重叠。
采用段基址和偏移地址方式组成物理地址的优点是:
满足对8086系统的1MB存储空间的访问,同时在大部分指令中只要提供16位的偏移地址即可。
4.Intel8086/8088处理器芯片功能强大,但引脚数有限,为了建立其与外围丰富的信息联系,Intel8086/8088处理器引脚采用了复用方式,说明其采用了何种复用方式?
答案:
8086CPU采用双列直插式的封装形式,具有40条引脚。
由于受到引脚数量的限制,8086引脚安排采用了复用技术。
它的复用方式有两种:
一是采用分时复用技术,在不同的时刻通过相同的引脚传送不同的信息,从而减少了引脚的数量;二是采用了两种工作方式,在不同的工作方式下,部分引脚具有两种不同的引脚功能。
5.8086CPU是怎样解决地址线和数据线的复用问题的?
ALE信号何时处于有效电平?
答案:
为解决引脚少的问题,8086CPU内部采用一个多路开关,使低16位地址线和16位数据线共用引脚。
因为当CPU访问存储器或外设时,先要给出访问单元的地址,然后才是读写数据,因此在时间上是可以区分的。
在总线周期的第一个时钟周期(T1状态),输出低16位地址(记为A15~A0),而在总线周期的其他时钟周期内传送数据。
当CPU处于“保持响应”状态时,这些引脚处于高阻隔离状态(即悬浮状态)。
ALE信号是地址锁存信号。
8086在总线周期开始通过地址总线输出地址的同时,通过该引脚输出一个正脉冲,其下降沿用于将地址信息写入外部的地址锁存器中。
在任何一个总线周期的第一个时钟周期时,ALE输出有效电平以表示在当前地址/数据复用总线上输出的是地址信息,ALE作为锁存信号,对地址进行锁存。
ALE端不能被浮空。
6.8086/8088系统用的时钟发生器会产生哪些信号?
答案:
8284A是一个专用的时钟发生器,产生4.77MHz的标准时钟信号CLK。
此时钟信号作为系统时钟,并经CLK引脚直接送到8086,作为微处理器的时钟信号。
同时8284A还对复位和就绪信号实现内部的时钟同步,然后再输出,实施对8086的控制。
所以,8086/8088系统用的时钟发生器产生恒定的时钟信号CLK,复位信号RESET,准备就绪信号READY。
7.说明8086CPU的READY输入信号和
信号的作用是什么?
答案:
READY输入信号实际上是由访问的存储器或外设发出的响应信号,高电平有效。
READY信号有效时,表示内存或外设准备就绪,马上就可以进行一次数据传输。
CPU在每个总线周期的T3状态开始对READY信号开始进行采样。
如果检测到READY信号为低电平,则在T3状态后插入等待状态Tw,在Tw状态CPU也对READY信号进行采用,若READY信号仍为低电平,则会继续插入等待状态Tw,所以Tw状态可以插入一个或多个,直到READY变为高电平,才进入T4状态,完成数据传输过程,从而结束当前总线周期。
测试信号,低电平有效,
信号是和指令WAIT结合起来使用的,在CPU执行WAIT指令时,CPU处于等待状态,当
信号低电平时,等待状态结束,CPU继续往下执行被暂停的指令。
习题
一、选择题
1.下列描述正确的是_______。
A.汇编语言源程序可直接运行
B.汇编语言属于低级语言
C.汇编程序是用汇编语言编写的程序,运行速度高,阅读方便,属于面向用户的程序语言。
D.汇编语言可以移植
答案:
B
2.分析下面的程序,变量VAR2的偏移地址是______。
DATASEGMENT
ORG2
VAR1DB2,3,4
ORG$+3
VAR2DW1234H
DATAENDS
A.02HB.04HC.05HD.08H
答案:
D
3.为了使MOVAX,VAR指令执行后,AX寄存器中的内容为4142H,下面哪一种数据定义会产生不正确的结果?
A.VARDW4142HB.VARDW16706C.VARDB42H,41HD.VARDW‘AB’
答案:
C
4.下列伪指令中______是正确的。
A.ERR1:
DW99B.ERR2DB25*60C.COUNTEQU20D.ONEDBONE
答案:
C
5.执行下列指令后,寄存器CL的值是_______。
STR1DW‘AB’
STR2DB16DUP(?
)
CNTEQU$-STR1
MOVCX,CNT
MOVAX,STR1
HLT
A.10HB.12HC.0EHD.0FH
答案:
B
二、填空题
1.汇编语言的调试过程如下:
建立以______为扩展名的源文件;生成以______为扩展名的目标文件;生成以______为扩展名的可执行文件;使用DEBUG调试程序,调试可执行目标程序。
答案:
.asm.obj.exe
2.执行下列指令后,(AX)=______,(BL)=_______。
ADW‘EF’
BDB‘ABCDEF’
MOVAX,A
MOVBL,B[3]
HLT
答案:
4546H44H
3.执行下面程序段后,AL中的内容是______。
BUFDW1234H,5678H,0001H
MOVBX,OFFSETBUF
MOVAL,2
XLAT
答案:
78H
4.若符号定义语句如下,则L=_______。
BUF1DB1,2,‘12’
BUF2DB0
LEQUBUF2-BUF1
答案:
4
5.执行下列程序段后,BX寄存器间址单元的内容是______。
ORG1FFFH
DB4FH,50H,51H
MOVBX,1FFFH
INC[BX]
INCBX
DEC[BX]
答案:
4FH
6.对于下面的数据定义,各条MOV指令单独执行后,请填充有关寄存器的内容:
TABLE1DB?
TABLE2DW20DUP(?
)
TABLE3DB‘ABCD’
......
MOVAX,TYPETABLE1;(AX)=___
MOVBX,TYPETABLE2;(BX)=____
MOVCX,LENGTHTABLE2;(CX)=_____
MOVDX,SIZETABLE2;(DX)=_____
MOVSI,LENGTHTABLE3;(SI)=_______
答案:
1220401
7.下面是多字节加法程序,第一个数是8A0BH,第二个数是D705H。
请填写出正确结果。
DATASEGNEBT
FIRSTDB_____,_____,0H
SECONDDB_____,______
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVCX,_____
MOVSI,0
_________
NEXT:
MOVAL,SECOND[SI]
ADCFIRST[SI],AL
INCSI
LOOPNEXT
MOVAL,0
ADCAL,______
MOVFIRST[SI],AL
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
答案:
0BH8AH05HD7H2CLC0
8.下面程序的功能是求有符号数中绝对值最小的数,并将最小绝对值存放在DAT2字节中,填空使程序正确实现此功能。
程序执行后,DAT2单元中的内容是______。
DATASEGMENT
DAT1DB65H,88H,20H,0F6H
NEQU$-DAT1
DAT2DB?
DATAENDS
CODESEGMENT
_________________
START:
MOVAX,DATA
__________
LEASI,DAT1
MOVCX,N-1
MOVAL,[SI]
TESTAL,80H
JZLP0
NEGAL
LP0:
MOVDAT2,AL
LP1:
_________
MOVBL,[SI]
TESTBL,80H
JZLP2
NEGBL
LP2:
________
JBLP3
MOVDAT2,BL
MOVAL,BL
LP3:
________
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
答案:
ASSUMEDS:
DATA,SS:
STACK,CS:
CODE
MOVDS,AX
INCSI
CMPDAT2,BL
LOOPLP1
DAT2单元中的内容:
0AH
9.填空说明在下列程序段执行过程中相应寄存器中的值。
假设程序执行前DS=3000H,SS=2000H,SP=3000H,AX=4567H,BX=1234H,CX=6789H。
ANDBX,00FFH
CALLMYSUB
NOP;SP=________
;AX=_______
;BX=_______
HLT
MYSUBPROC
PUSHAX
PUSHBX
PUSHCX
SUBAX,BX;SP=______
POPCX
POPAX
POPBX
NOP;SP=______
RET
MYSUBENDP
答案:
3000H0034H4567H2FF8H2FFEH
10.完善程序。
BUFFER单元开始放置一个数据块,BUFFER单元存放预计数据块的长度为20H,BUFFER+1单元存放的是实际从键盘输入的字符串的长度,从BUFFER+2开始存放的是从键盘接收的字符,请将这些从键盘接收的字符再在屏幕上显示出来。
MOVDX,OFFSETBUFFER
MOVAH,_______
INT21H;读入字符串
LEADX,______
MOVAL,______;实际读入的字符串的字符个数
MOVAH,0
ADDBX,AX
MOVAL,____
MOV[BX+1],AL
MOVAH,_____
INCDX;确定显示字符串的首址
INT21H
MOVAH,_____;系统返回DOS
INT21H
答案:
0AHBUFFER+1[BX]'$'或24H94CH
三、问答题
1.变量和标号有哪些属性?
它们的区别是什么?
答案:
变量、标号还有常量是汇编语言中使用的操作数,是3种基本的数据项。
变量和标号都有段属性、偏移属性和类型属性3种属性,但含义不同。
变