微机期末复习完整.docx
- 文档编号:10956811
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:26
- 大小:46.20KB
微机期末复习完整.docx
《微机期末复习完整.docx》由会员分享,可在线阅读,更多相关《微机期末复习完整.docx(26页珍藏版)》请在冰豆网上搜索。
微机期末复习完整
微机原理期末复习(修改版)
1、CPU在内部结构上由那几部分组成?
CPU应具备哪些主要功能
解:
CPU在内部结构上由算术逻辑部件、累加器和寄存器级、控制器组成。
CPU应具备下列功能:
可以进行算术运算;可保存较少量数据;能对指令进行译码并执行规定的动作;能和存储器、外设交换数据;提供整个系统所需要的定时和控制;可以其它部件发来的中断请求。
2、8086的总线接口部件由哪几部分组成?
解:
8086CPU由总线接口部件BIU(BusInterfaceUnit)和执行部件EU(ExecutionUnit)两大部分组成。
总线接口部件的主要功能是形成物理地址、预取指令、指令队列排队、读/写操作数和总线控制。
执行部件的主要功能是进行指令译码并执行指令。
3、8086CPU中有哪些寄存器?
标志寄存器FLAGS有哪些标志位?
答:
1)8086CPU中有哪些寄存器?
4个段地址寄存器:
CS16位的代码段寄存器DS16位的数据段寄存器
ES16位的附加段寄存器SS16位的堆栈段寄存器
4个通用寄存器,即AX、BX、CX、DX
4个专用寄存器,即BP、SP、SI、DI
标志寄存器F指令指针寄存器IP
2)标志寄存器FLAGS有哪些标志位:
状态标志:
①符号标志SF②零标志ZF③奇偶标志PF④进位标志CF⑤辅助进位标志AF⑥溢出标志OF
控制标志:
,①方向标志DF②中断允许标志IF③跟踪标志TF)称为单步标志
4、8086CPU有4个逻辑段,分别是什么用途?
解:
在8086的程序设计中,一个程序可以有代码段CS、数据段SS、堆栈段SS和附加段ES。
代码段CS用于存放程序;
数据段SS和附加段ES用于存放数据;
堆栈段SS用于存放数据(包括暂存数据和保护现场的数据)。
在形成物理地址时,CS、DS、ES和SS四个段寄存器的作用如下:
当取指令时,CPU以CS寄存器的值作段基址,再加上IP中的16位偏移地址,得到指令的物理地址;当进行堆栈操作时,段基地址CPU以SS为堆栈段的基地址,偏移地址由SP或BP来指定,当访问存储器的数据段时,数据段寄存器DS或附加段寄存器ES,再加上16位偏移地址,得到操作数的物理地
5、试说明8086CPU工作在最大和最小模式下系统基本配置的差异。
最大模式配置和最小模式配置有一个主要的差别:
①就是在最大模式下,需要用外加电路来对CPU发出的控制信号进行变换和组合,以得到对存储器和I/O端口的读/写信号及对锁存器(8282)和对总线收发器(8286)等等的控制信号。
8288总线控制器就是完成上面这些功能的专用芯片。
6、什么是逻辑地址?
什么是物理地址?
如何将逻辑地址转换为物理地址?
逻辑地址:
段地址:
偏移地址
物理地址:
也称为绝对地址,由段基址和偏移量两部分构成。
物理地址与系统中的存储空间是一一对应的。
物理地址=段地址*10H+段内偏移量。
7、请将如下逻辑地址用物理地址表示:
(1)FFFFH:
0=FFFFH*10+0=FFFF0H
(2)45H:
18H=45H*10+18H=468H
(3)20000H:
4600H=24600H(4)B821H:
3456H=BB666H
8、8086的执行部件有什么功能?
由哪几部分组成?
答:
1)8086的执行部件的功能是负责指令的执行。
2)4个通用寄存器AX、BX、CX、DX;4个专用寄存器BP、SP、SI、DI;标志寄存器FLAGS和算术逻辑单元ALU。
9、非屏蔽中断有什么特点?
可屏蔽中断有什么特点?
分别用在什么场合?
答:
1.非屏蔽中断的特点有:
中断请求从NMI引腿进入,不受中断允许标志IF的影响。
非屏蔽中断只有一个,其中断类型码为2。
2.可屏蔽中断的特点有:
中断请求从INTR引腿进入,只有在IF=1时CPU才响应该中断。
可屏蔽中断有若干个,其中断类型码可以是5~255。
3.非屏蔽中断用来处理系统的重大故障,如掉电等。
可屏蔽中断用在一般外部设备申请的中断中。
10、什么叫中断向量?
它放在那里?
对应于1CH的中断向量存放在哪里?
如果1CH的中断处理子程序从5110H:
2030H开始,则中断向量应怎样存放?
答:
1.中断处理子程序的入口地址就是中断向量。
2.中断向量放在0段的0~3FFH区域的中断向量表中。
3.对应于类型号为1CH的中断向量应放在00070~00073H的4个单元中。
4.若1CH的中断向量为5110H:
2030H,则中断向量的存放方法为:
00070H存放30H,00071H存放20H(IP);00072H存放10H,00073H存放51H(CS)。
第三次作业
1、8086/8088的指令有哪些寻址方式?
它们的具体含义是什么?
指令中如何表示它们?
2,分别指出下列指令中源操作数和目的操作数的寻址方式
目的操作数源操作数
(1) MOV EAX,12345678H 寄存器寻址 立即寻址
(2) MOV [ESI],AX 寄存器间接寻址 寄存器寻址
(3) MOV 2[EDI],BX 变址寻址 寄存器寻址(4) MOV 2[BX+SI],DX 基址变址寻址 寄存器寻址(5) MOV AX,[10] 寄存器寻址 直接寻址(6) MOV EAX,2[ESI*4] 寄存器寻址 带有比例因子的变址寻址(7) MOV EAX,2[EBX*8][EDI] 寄存器寻址 带有比例因子的基址变址寻址(8) MOV EAX,[ESI][EBP+0FFFF0H] 寄存器寻址 带有位移量的基址变址寻址
(9) MOV EAX,2[EDI*8][EBP+80] 寄存器寻址 带有位移量和比例因子的基址
变址寻址
3指出下列指令的错误原因
(1) INC [ESI] 目的操作数[ESI]类型不明确
(2) MOV AX,BL 源操作数和目的操作数类型不一致
(3) MOV 2,EAX 常数不能作目的操作数
(4) MOV AX,[DX] X不能作地址寄存器
(5) MOV AX,[BX+BP] 源操作数寻址方式错,两个寄存器都是基址寄存器
(6) MOV AX,[SI+DI] 源操作数寻址方式错,两个寄存器都是变址寄存器
(7) MOV AH,300 300超出AH允许范围
(8) MOV [ESI],[EDI] 源操作数和目的操作数不能同时为内存单元地址
(9) PUSH AL 栈的数据必须是一个16或32位数据
(10) POP DH 出栈的数据是一个16或32位数据,DH是8位寄存器
(11) MOV CS,AX CS值不能由程序员编程该变
(12) MOV SS,AX SS值不能由程序员编程该变
(13) SHL AX,3 移位次数大于1,应先将移位次数送CL
第四作业答案
解答
1比较下列两条指令,指出它们的区别
MOVAX,[SI]
LEAAX,[SI]
解:
这两条指令的区别是,指令“MOVAX,[SI]”是将内存单元DS:
[SI]中的内容读到CPU中的寄存器AX;而指令“LEAAX,[SI]”是将内存单元DS:
[SI]的偏移地址送到AX。
2假定(EAX)=12345678H,不用计算,写出下面每条指令执行后(EAX)=?
①TESTEAX,1
②XOREAX,EAX
③SUBEAX,EAX
④CMPEAX,87654321H
解:
①(EAX)=12345678H②0③0④(EAX)=12345678H
3假定(AX)=1234H,(BX)=5678H指出下列指令中
①哪些指令执行后,源操作数和目的操作数都不发生变化?
②哪些指令执行后,源操作数和目的操作数都发生变化?
③哪些指令执行后,源操作数不发生变化而目的操作数发生变化?
指令:
①TESTAX,1234
②ANDAX,BX
③SUBAX,1234H
④CMPAX,1234H
⑤XCHGAX,BX
解:
①指令“TESTAX,1234”和指令“CMPAX,1234H”执行后,源操作数和目的操作数都不发生变化。
变量
值
EA
BUF→
31H
0
32H
1
33H
2
34H
3
BCD→
4
5
6
7
②指令“XCHGAX,BX”执行后,源操作数和目的操作数都发生变化。
③指令“ANDAX,BX”和“SUBAX,1234H”执行后,源操作数不发生变化而目的操作数发生变化
4用普通运算指令执行BCD码运算时,为什么要进行十进制调整?
具体讲,在进行BCD码的加、减、乘、除运算时,程序段的什么位置必须加上十进制调整指令?
答:
在BCD码中,只允许0?
/FONT>9这10个数字出现,但有时候的运算结果会超过此范围,因此要进行十进制调整。
进行加、件或乘法运算时,调整指令必须紧跟在算术指令后面,在进行除法运算时,调整指令放在除法指令之前。
5普通移位指令(带CF的和不带CF的两类)在执行操作时,有什么差别?
在编制乘法程序时,
为什么常用移位指令来代替乘除法指令?
试编写一个程序段,实现将BX中的数除以10,结果仍放在BX中。
答:
带CF和不带CF的普通移位指令的差异:
前者用于算术运算,后者用于逻辑
运算。
程序段:
MOV CL,0AH
MOV AX,BX
IDIV CL
MOV BX,AX
6设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?
当执行PUSH BX 指令后,栈顶地址和栈顶2个字节的内容分别是什么?
答案
当前栈顶的地址 2010H*16+FE00H=2FF00H;执行PUSH BX指令后,堆栈地址指针SP减2,则栈顶地址为2FEEDH;栈顶2个字节的内容为57H、34H。
第5次作业
请把正确答案填在括号内。
1.指令MOVAX,0283H[BX][SI]中源操作数的寻址方式为(B)。
A.寄存器间接寻址B.基址变址相对寻址C.基址寻址D.变址寻址
2.CPU执行OUTDX,AL指令时,(B)的值输出到地址总线上。
A.AL寄存器B.DX寄存器C.DL寄存器D.AX寄存器
3.MOVAX,[BX+SI]的源操作数的物理地址是(B)。
A.(ES)×16+(BX)+(SI)B.(DS)×16+(BX)+(SI)C.(SS)×16+(BX)+(SI)D.(CS)×16+(BX)+(SI)
4.8086CPU中6字节的指令队列的作用是。
(B)
A.暂存操作数B.暂存指令C.暂存操作数地址D.暂存指令地址
5、寄存器间接寻址方式中,要寻找的操作数位于(B)中。
A.通用寄存器B.内存单元C.段寄存器D.堆栈
6.堆栈操作中用于指示栈顶地址的寄存器是(B)。
A.SSB.SPC.BPD.CS
7.执行指令PUSHBX后,堆栈指针SP的变化为(B)。
A.SP-1B.SP-2C.SP+1D.SP+2
8.8086的I/O地址空间采用16位数寻址时,可访问的端口数容量为(B)。
A.16KBB.64KBC.32KBD.1MB
9.在8086/8088微机系统中,将AL内容送到I/O接口中,使用的指令是(B)。
AI.NAL,端口地址B.OUT端口地址,ALC.OUTAL,端口地址D.MOVAL,端口地址
10.源变址寄存器是(B)。
A.DIB.SIC.SPD.BX
11在下列指令的表示中,不正确的是(C)。
A.MOVAL,[BX+SI] B.JMPSHORTDONIDEC100C. D.MULCL
14.若栈顶的物理地址是20100H,当执行完POPAX指令后,栈顶的物理地址是(B)。
A.20101HB.20102HC.20100HD.20103H
12.程序段如下:
MOVAX,5849H
MOVBX,2934H
ADDAL,BH
DAA
上述4条指令执行后,(AX)=(D)
A.817DHB.5872HC.8183HD.5878H
13.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSHAX后,存放数据21H的物理地址是(A)。
A.200FFHB.20101HC.200FEHD.20102H
14.在机器内部操作中,CPU与存贮器之间信息交换使用的是(A)。
A.物理地址B.逻辑地址C.有效地址D.相对地址
15.寄存器间接寻址方式中,操作数在(A)中。
A.存储单元B.I/O端口C.通用寄存器D.段寄存器
16.MOVAX,[BX+SI]的源操作数的物理地址是(C)。
A.(SS)×16+(BX)+(SI)B.(ES)×16+(BX)+(SI)C.(DS)×16+(BX)+(SI)D.(CS)×16+(BX)+(SI)
17.下列指令执行后能使BX中数据必为奇数的是(A)。
A.ORBX,01HB.XORBX,01HC.ANDBX,01HD.TESTBX,01H
18.设CL=05H,要获得CL=0AH,可选用的指令是(A)。
A.XORCL,0FHB.NOTCLC.ORCL,0AHD.ANDCL,0FH
19(C)寻址方式的跨段前缀不可省略。
A.DS:
[BP]B.DS:
[SI]C.DS:
[DI]D.SS:
[BP]
20.8086CPU的数据总线是(A)。
A.16根双向线B.16根单向线C.8根单向线D.20根双向线
21.8086CPU中寄存器(A),通常用作数据寄存器,且隐含用法作为I/O指令间接寻址时的端口地址寄存器。
A.DXB.BXC.CXD.AX
22.8086CPU在进行I/O读操作时,
必须是(B)。
A.01B.00C.10D.11
23.8086执行一个总线周期最多可传送(B)字节。
A.1个B.2个C.3个D.4个
24.8086/8088执行一个总线周期是在(B)之后插入TW。
A.T1B.T3C.T2D.T4
25.在下列指令的表示中,不正确的是(B)。
A.MOVAL,[BX+SI] B.DEC100C.JMPSHORTDONI D.MULCL
26.8086系统可寻址I/O端口的最大地址为(B)。
A.0FFHB.0FFFFHC.0FFFHD.10000H
27.下列第(B)条是合法的访问I/O端口指令。
A.INAL,100HB.INAL,DXC.INAL,BLD.INAL,BX
5.1外部设备为什么要通过接口电路和主机系统相连?
存储器需要接口电路和总线相连吗?
为什么?
答:
1.因为外设的功能多种多样,对于模拟量信息的外设必须要进行A/D和D/A转换,而对于串行信息的外设则必须转换为并行的信息,对于并行信息的外设还要选通。
而且外设的速度比CPU慢的多,必须增加缓冲功能。
只有这样计算机才能使用这些外设。
而所有这些信息转换和缓冲功能均由接口电路才能完成。
2.存储器不需要接口电路和总线相连。
3.因为存储器功能单一,且速度与CPU相当。
因此可直接挂在CPU总线上。
5.2是不是只有串行数据形式的外设需要接口电路和主机系统连接?
为什么?
答:
1.不是。
并行数据形式的外设也需要接口电路和主机系统连接。
2.因为,CPU每次只能访问一个外设,因此并行信息的外设需增加选通功能,才能满足CPU的访问要求,必须用接口电路。
5.3接口电路的作用是什么?
按功能可分为几类?
答:
1.接口电路的作用就是在外设和CPU之间起信息变换和缓冲功能。
2.按功能可分为两类:
1一种是使微处理器正常工作所需要的辅助电路。
2另一种是输入/输出接口电路。
5.4接口电路的作用是什么?
按功能可分为几类?
答:
1.接口电路的作用就是在外设和CPU之间起信息变换和缓冲功能。
2.按功能可分为两类:
3一种是使微处理器正常工作所需要的辅助电路。
4另一种是输入/输出接口电路。
5.5接口电路的作用是什么?
按功能可分为几类?
答:
1.接口电路的作用就是在外设和CPU之间起信息变换和缓冲功能。
2.按功能可分为两类:
5一种是使微处理器正常工作所需要的辅助电路。
6另一种是输入/输出接口电路。
5.6什么叫端口?
通常有哪几类端口?
计算机对I/O端口编址时通常采用哪两种方法?
在8086/8088系统中,用哪种方法对I/O端口进行编址?
答:
1.CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口。
2.有数据端口、控制端口、状态端口三类。
3.在微型计算机中通常用两种I/O端口编址方式:
存储器映象寻址和I/O端口单独寻址。
4.在8086/8088系统中,用I/O端口单独寻址方式编址。
5.6为什么有时候可以使两个端口对应一个地址?
答:
因为这两个端口一个是只读端口,一个是只写端口。
而CPU对一个I/O端口地址可进行读/写两种访问。
如果将这两个只读和只写端口编为一个地址,则CPU对该端口地址读操作对应的是只读端口;CPU对该端口地址写操作则对应的是只写端口,互不影响。
因此可以使两个单向的只读和只写端口对应一个端口地址。
5.7无条件传送方式用在哪些场合?
画出无条件传送方式的工作原理图并说明。
答:
1.无条件传送方式只用在对一些简单外设进行操作的场合。
如开关、LED显示等。
2.无条件传送方式的工作原理图:
(见书203页图5.2所示)
1在无条件输入时:
CPU执行一条输入指令,使
和M/
信号为有效低电平,并对应送出该端口地址,因此选中输入缓冲器,打开其三态门,使输入缓冲器的数据经数据总线送到CPU的累加器中。
2在无条件输出时:
CPU执行一条输出指令,使
和M/
信号为有效低电平,并对应送出该端口地址,因此选中输出锁存器,将由累加器送到数据总线上的数据打入输出锁存器中供外设使用。
5.8条件传送方式的工作原理是怎样的?
主要用在什么场合?
画出条件传送(查询)方式输出过程的流程图。
答:
1.条件传送方式的工作原理是:
外设给CPU提供一个状态信息,当CPU要访问外设时,必须先检测该状态信息是否合乎要求,不停检测直至合乎要求时才进行CPU对外设的访问。
2.查询方式主要用在外设较少,数据交换不频繁的非实时系统的场合。
6.1设异步传输时,每个字符对应1个起始位、7个信息位、1个奇/偶校验位和1个停止位,如果波特率为9600,则每秒钟能传输的最大字符数为多少?
答:
每个字符所占的总位数为:
1+7+1+1=10位。
所以每秒钟能传输的最大字符数为9600/10=960个字符。
6.28251A的模式字格式如何?
参照教材上给定格式编写如下模式字:
异步方式,1个停止位,偶校验,7个数据位,波特率因子为16。
答:
1.8251A的模式字格式为:
(含义见书240页图6.11所示)
S2
S1
EP
PEN
L2
L1
B2
B1
SCS
ESD
EP
PEN
L2
L1
0
0
异步模式字同步模式字
2.因是异步方式,波特率因子为16:
B2B1=10;1个停止位:
S2S1=01;偶校验:
EP=1,PEN=1;7个数据位:
L2L1=10。
所以模式字为01111010B=7AH。
6.38251A的控制字格式如何?
参照教材上列出的格式给出如下控制字:
发送允许,接收允许,
端输出低电平,TxD端发送空白字符,
端输出低电平,内部不复位,出错标志复位。
答:
1.8251A的控制字格式为:
(含义见书241页图6.12所示)
EH
IR
RTS
ER
SBRK
RxE
DTR
TxEN
2.发送允许:
TxEN=1,接收允许:
RxE=1,
端输出低电平:
DTR=1,TxD端发送空白字符SBRK=1;
端输出低电平:
RTS=1,内部不复位:
IR=0,出错标志复位ER=1。
EH=0/1则控制字为00111111B或10111111B=3FH或0BFH。
6.48251A的状态字格式如何?
哪几位和引腿信号有关?
状态位TxRDY和引腿信号TxRDY有什么区别?
它们在系统设计中有什么用处?
答:
1.8251A的状态字格式为:
(含义见书242页图6.13所示)
DSR
SYNDET
FE
OE
PE
TxE
RxRDY
TxRDY
2.DSR、SYNDET、TxE、RxRDY四个状态位与其对应的引腿信号有关。
3.状态位TxRDY只要数据输出缓冲器为空就置1。
而引腿TxRDY为1的条件是:
数据输出缓冲器为空、
为有效低电平、TxEN为1才可以,缺一不行。
4.能让CPU随时了解当前8251A的工作状态,而执行相应的操作。
对查询方式的设计非常方便。
6.5参考初始化流程,用程序对8251A进行同步模式设置。
奇地址端口的地址为66H,规定用内同步方式,同步字符为2个,用奇校验,7个数据位。
答:
模式字为:
00011000B=18H。
两个同步字符取16H,控制字为97H,它使8251A对同步字符进行检索;同时使状态寄存器中的3个出错标志复位;使8251A的发送器启动,接收器也启动;CPU当前已准备好进行数据传输。
具体程序段如下:
MOVAL,18H;设置模式字
OUT66H,AL
MOVAL,16H;发送两个同步字符
OUT66H,AL
OUT66H,AL
MOVAL,97H;设置控制字
OUT66H,AL
6.68255A有哪几种工作方式?
对这些工作方式有什么规定?
答:
1.8255A有三种工作方式:
方式0、方式1、方式2。
2.端口A可以工作于方式0、方式1、方式2;端口B可以工作于方式0、方式1;端口C只能工作于方式0或者配合端口A和端口B工作。
6.7对8255A设置工作方式,8255A的控制口地址为00C6H。
要求端口A工作在方式1,输入;端口B工作在方式0,输出;端口C的高4位配合端口A工作;低4位为输入。
答:
MOVDX,00C6H
MOVAL,0B1H;取方式选择控制字为B1H(10110001B)或B9H
OUTDX,AL
6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 期末 复习 完整