微机原理与接口技术第三版彭虎周佩玲傅忠谦电子工业出版社课后习题答案.docx
《微机原理与接口技术第三版彭虎周佩玲傅忠谦电子工业出版社课后习题答案.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术第三版彭虎周佩玲傅忠谦电子工业出版社课后习题答案.docx(10页珍藏版)》请在冰豆网上搜索。
微机原理与接口技术第三版彭虎周佩玲傅忠谦电子工业出版社课后习题答案
第二章8086体系结构与80x86CPU
1.8086CPU由哪两部份组成?
它们的要紧功能是什么?
答:
8086CPU由两部份组成:
指令执行部件(EU,ExecutionUnit)和总线接口部件(BIU,BusInterfaceUnit)。
指令执行部件(EU)要紧由算术逻辑运算单元(ALU)、标志寄放器FR、通用寄放器组和EU操纵器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)要紧由地址加法器、专用寄放器组、指令队列和总线操纵电路等4个部件组成,其要紧功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或寄存运算结果等。
2.8086CPU预取指令队列有什么益处?
8086CPU内部的并行操作体此刻哪里?
答:
8086CPU的预取指令队列由6个字节组成,依照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU内部,EU从指令队列中取得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体此刻指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成进程。
8086系统中的物理地址最多有多少个?
逻辑地址呢?
答:
8086系统中的物理地址是由20根地址总线形成的。
8086系统采纳分段并附以地址偏移量方法形成20位的物理地址。
采纳分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部份组成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加取得物理地址。
由于8086CPU的地址线是20根,因此可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
逻辑地址由段基址和偏移地址两部份组成,都是无符号的16位二进制数,程序设计时采纳逻辑地址,也是1MB。
6.8086系统中的存储器什么缘故要采纳分段结构?
有什么益处?
答:
8086CPU中的寄放器都是16位的,16位的地址只能访问64KB的内存。
086系统中的物理地址是由20根地址总线形成的,要做到对20位地址空间进行访问,就需要两部份地址
采纳段基址和偏移地址方式组成物理地址的优势是:
知足对8086系统的1MB存储空间的访问,同时在大部份指令中只要提供16位的偏移地址即可。
9.在某系统中,已知当前(SS)=2360H,(SP)=0800H,那么该堆栈段在存储器中的物理地址范围是什么?
假设往堆栈中存入20个字节数据,那么SP的内容什么缘故值?
答:
(SS)×10H+(SP)=23600H+0800H=23E00H,堆栈段在存储器中的物理地址范围是23600H~23E00H。
假设往堆栈中存入20个字节数据,那么SP的内容为0800H-14H=07ECH。
(20的十六进制为14H)。
10.已知当前数据段位于存储器的B4000H到C3FFFH范围内,那么段寄放器DS的内容为多少?
答:
段寄放器DS的内容为B4000H。
11.8086系统中什么缘故必然要有地址锁存器?
需要锁存哪些信息?
答
:
由于8086CPU受芯片封装的限制,只有40个管脚,因此地址线和数据线只能采纳复用的方式一起利用某些管脚。
对存储器进行访问时,在读取数据或写入数据时,存储器芯片要求在那个进程中地址信息必需稳固提供给存储器,而由于8086CPU地址线和数据线是复用的,就不可能在同一时刻具有地址和数据的两种功能。
这就需要在CPU提供地址信息时,将地址锁存起来,以保证下一个时刻当这些复用的管脚起着数据线的功能时,存储器有正确的地址信息。
要锁存的信息包括这些复用管脚的地址和BHE等信号。
12.8086读/写总线周期各包括最少几个时钟周期?
什么情形下需要插入等待周期TW?
插入多少个TW取决于什么因素?
答:
8086读/写总线周期各包括最少四个时钟周期。
在系统中增加等待周期TW的一样情形是:
当CPU提供了地址后,由于外设或存储器的读出或写入时刻较慢,不能与CPU的速度匹配,就需要插入等待周期TW,等待CPU能从外设或存储器将数据正确地读出或写入为止。
显然,插入的等待周期TW的个数取决于外设或存储器的掏出或写入时刻。
13.假设已知当前(DS)=7F06H,在偏移地址为0075H开始的存储器中持续寄存6个字节的数据,别离为11H,22H,33H,44H,55H和66H,请指出这些数据在存储器中的物理地址,若是要从存储器中读出这些数据,需要设备部几回存储器?
各读出哪些数据?
答:
物理地址:
7F06H×10H+0075H=7F0DSH,故从7F0DSH起6个地址数据在存储器中的地址。
最少要访问四次:
第一次:
11。
第二次:
33,22。
第三次:
55,44。
第四次:
66。
14:
某程序在当前数据段中存有两个数据字0ABCDH和1234H,它们对应的物理地址别离为3FF85H和40AFEH,假设已知当前(DS)=3FB0H,请说明这两个数据的偏移地址,并用图说明它们在存储器中的寄存格式。
答:
偏移地址为:
0485H和0FFEH。
第三章8086的指令系统
1:
MOVAX,[SI]寄放器寻址寄放器间接寻址
2:
MOVDI,100寄放器寻址当即寻址
3:
MOV[BX],AL寄放器间接寄放器
4:
MOV[BX][SI],CX基址+变址寄放器
5:
ADDDX,106H[SI]变址寄放器
6:
PUSHAX寄放器7:
ADDDS:
[BP],AX8:
ORAX,DX寄放器
2:
设寄放器DS=2000H,SS=1500H,ES=3200H,SI=0A0H,BX=100H,BP=10H,数据段中变量VAL的偏移地址为50H,试指出以下各条指令中源操作数的寻址方式是什么?
关于存储器操作数,其物理地址是多少?
(1)MOVAX,[100H]直接寻址:
20200H
(2)MOVCX,ES:
[BX]寄放器寻址
(3)MOVDX,[BX][SI]基址+变址:
200F0h
(4)MOVAX,VAL[SI]变址寻址:
200F0h
(1)MOVBX,1234[BX]基址寻址:
205D2H
(2)MOVAX,[BP]寄放器寻址:
15010H
3.答案
(3)OUT3EBH,AX改(4)MULAL,CL改MULCL
MOVDX,3EBH6)ROLDX,5改MOVCL,5
OUTDX,AXROLDX,CL
(5)MULAX,25改(8)POPFR改POPF
MOVBX,25(9)MOV234H,BX改MOVBX,234H(10)INC[SI]改INCBYTEPTR[SI]
(11)ADD[BX],456H改ADDWORDPTR[BX],456H
(12)INTO错(13)DIVAX,BX改DIVBX
(14)DEC[BP]改DECWORDPTR[BP](15)XLATBX错
(16)ADDCX+1改ADDCX,1或INCCX(17)DAAAX改DAA
4:
带符号数-86所表示的二进制:
10101010B
执行MOVDL,2AH和SHRDL,1两条指令后:
DL=00010101CF=0
可将AX寄放器中D0,D5,D8和D11位求反,其余位不变的指令:
XORAX,0921H
某存储单元物理地址为3B4FH,其段地址和偏移地址可选:
3B40H和00FEH
两个8位二进制数00110101及10110110做“异或”操作后,寄放器FR的下面3个状态标志别离是:
PF=0SF=1ZF=0
寄放器写指令时,如MOV[SI],AX,那么CPU的外部管脚状态:
WR=0RD=1M\IO=1
5:
已知,DS=2000HBX=100HSI=02H从物理地址20200H单元开始,依次寄存数据12H34H56H78H,而从物理地址21200h单元开始,依次寄存数据2AH,4CH.8BH,98H.试说明以下各条指令单独执行后AX寄放器的内容。
(1)MOVAX,3600H3600H
(2)MOVAX,[1200H]4C2AH
(3)MOVAX,BX0100H
(4)MOVAX,[BX]3412H
(5)MOVAX,1100H[BX]4C2AH
(6)MOVAX,[BX][SI]7856H
6.设堆栈指针SP的初值为2400H,(AX)=4000H,(BX)=3600H.问:
(1)执行指令“PUSHAX”后,SP=?
23FEH
(2)再执行“PUSHAX”和”POPAX”后,(SP)=?
(AX)=?
(BX)=?
SP=23FEHAX=3600HBX=3600H
7.
(1)MOVDX,2000H
MOVBX,1000H
XHGHBX,DX
BX=2000H,DX=1000H
(2)MOVAX,1234H
PUSHAX
POPBX
AX=1234H,BX=1234H
(3)LEADX,[2000H]
MOVBX,DX
BX=2000H
(4)MOVAL,08
ADDAL,08
AAA
AX=0106
(5)MOVAL,48H
ADDAL,39H
DAA
(AL)=87H
(6)ANDAL,AL
MOVAL,80
ADCAL,AL
(AL)=0A0H
(7)MOVDX,OFFFH
NEGDX
(DX)=0001H
(8)MOVBL,OB8H
RORBL,1
BL=5CH,CF=0
(9)SUBAX,AX
ANDDX,DX
DX=0
(10)MOVCL,3
MOVAH,42H
SHRAH,XL
AH=08H,CF0
(11)MOVAX,34EBH
MOVCL,5FH
DIVCL
CF=8FH
(12)MOVAL,08H
MOVBL,09
MULBL
AAM
AX=0702H
(13)MOVBL,9
MOVAX,0702H
ADD
DIVBL,
AX=0008H
(14)MOVAL98H
CBW
BX=0FF98H
(15)MOVAH,2
MOVDL,`W`
INT21H
结果=执行DOS的2号功能挪用,在屏幕上显示字母W
第五章存储器原理与接口
1.按存储器在运算机中的作用,存储器可分为哪向类?
简述其特点。
答:
存储器分:
主存储器(内存),辅助存储器(外存),高压缓冲存储器。
主存储器用来寄存活动的程序和数据,其速度高,容量较少、每位价钱高。
辅助存储器用于寄存当前不活跃的程序和数据,其速度慢、容量大、每位价钱低。
缓冲存储器在两个不同工作速度的部件之间起缓冲作用。
2.什么是RAM和ROM?
RAM和ROM各有什么特点?
答:
RAM是随机存储器,指运算性能够随机地、个别地对各个存储单元进行访问,访问所需时刻大体固定,与存储单元的地址无关。
ROM是只读存储器,对其内容只能读,不能写入。
与RAM相较,其信息具有非易失性,即掉电后,ROM中的信息仍会保留。
3.什么是多层次存储结构?
它有什么作用?
答:
存储器的性能是运算机性能的最要紧指标之一,其目标是大容量、高速度和低本钱,因此应该在系统结构的设计上扬长避短,采纳多层存储结构组成一个较为合理的存储系统。
多层存储结构是一个金字塔的结构,距塔尖(即CPU)越近速度越快,容量越小,单位价钱也较贵;反之速度较慢,容量较大,单位价钱也较廉价