8086练习题 第四章 8086组成
1. ALU是什么部件?它能完成什么运算?试画出其符号。
算术逻辑部件。算术运算(+,-,*,/)和逻辑运算(与,或,非,异或) A
ALU S B
control 2. 三态输出电路有何意义?其符号如何画?
一条信息传输线可以传输随意多个触发器的信息。 A B
E 3. ROM和RAM各有何特点和用处?
ROM(Read Only Memory):只读存储器,CPU只能读取ROM找到数据,而不能直接将数据写入ROM, ROM中的数据需要专门的电路进行写入和擦除。
RAM(Random Access Memory):随机存储器,CPU直接访问(读/写)RAM中的数据,但掉电后RAM中的数据丢失。
4. 简述8086CPU中EU和BIU的组成。
EU组成:ALU;4个16位通用寄(AX、BX、CX、DX);4个16位专用寄存器(SI、DI、SP、BP);标志寄存器FR;控制电路。
BIU组成:4个16位段寄存器(DS、CS、ES、SS);指令指针寄存器(IP); 20位的地址加法器;6字节指令队列缓冲器;内部暂存器和总线控制逻辑。
5. 8086标志寄存器FR中的CF,ZF,SF,OF,IF,AF各是什么标志?
CF:进位标志:指令执行后,如果运算结果在最高位上产生了一个进位或借位,则CF=1;否则,CF=0。
PF:奇偶标志:如果运算结果低八位1的个数为偶数,则PF=1;否则,PF=0。 AF:辅助进位标志:如果运算结果低4位产生了进位,则AF=1;否则,AF=0。 ZF:零标志:如果运算结果为0,则ZF=1;否则,ZF=0。
SF:符号标志:如果运算结果为正数,则SF=0;否则,SF=1。
OF:溢出标志:如果运算过程产生了溢出,则OF=1;否则,OF=0。
6. 什么是物理地址?逻辑地址是如何组成的?二十位地址加法器有何作用?
物理地址(PA)是存储单元的绝对地址,20位,是CPU访问存储器的唯一的实际地址,每个存储单元对应一个物理地址;
物理地址 = 段地址×10H+偏移地址。
7. 什么叫总线周期?Intel8086的一个总线周期包括多少个时钟周期?什么情况下要插入
TW?插入多少个TW取决于什么因素?
把CPU通过总线进行某种操作的过程称为总线周期(Bus Cycle)。 一个基本的总线周期由4个时钟周期组成(T1、T2、T3、T4)。
在有些情况下,外设或存储器速度较慢,不能及时地配合CPU传送数据。这时,外设或存储器会通过“READY”信号线在T3状态启动之前向CPU发一个“数据未准备好”信号,于是CPU会在T3之后插入1个或多个附加的时钟周期等待状态Tw。
8. 什么是地址锁存器?8086系统中为什么要用地址锁存器?锁存的是什么信息?
9. 什么是总线?根据传输信息作用的不同,微机系统总线可分为哪几类? 地址总线 AB(ADDRESS BUS): 通常20位,单向,A19~A0,可寻址220=1MB内存单元。 A15~A0,可寻址 216=65536外设接口。 数据总线 DB(DATA BUS): 通常16位, D15~D0 ,双向,实现CPU与I/O 传送。 控制总线 CB(CONTROL BUS):传送控制信号。
10. 什么是可屏蔽中断?什么是非屏蔽中断?什么是软件中断? 软件中断是由INT n指令引起的中断。 硬件中断类别:
非屏蔽中断NMI:通过CPU的NMI引脚接入,不受IF(中断允许标志位)的影响。但是系统内只有一个非屏蔽中断。
可屏蔽中断INTR:通过CPU的INTR引脚接入,只有IF=1时中断请求才能进入。在中断控制器(如8259A)的配合下,一个系统可以有几十个可屏蔽中断。
11. 什么是中断向量?什么是中断向量表?中断向量表放在什么地方? 中断向量 是中断子程序的入口地址,每个中断类型对应一个中断向量。
中断向量表 是指根据中断类型和中断服务子程序对应关系建立的列表。具体来说,就是把内存中0段的0000-03FFH区域设置为一个中断向量表。每一个中断向量占4个存储单元。前两个单元存放中断子程序入口地址的偏移量(IP),后两个单元存放中断子程序入口地址的段地址(CS)。
12. 写出8086CPU下列引脚的作用(或中文名称): NMI非屏蔽中断 INTR可屏蔽中断
—————
INTA中断相应信号
————
WR 写信号 RD读信号
————
READY准备好信号:表示内存或I/O设备准备好,可以进行数据传输。 M/IO存储器/IO控制信号M/IO=1,选中存储器M/IO=0,选中IO接口 DEN数据允许信号
DT/R数据发送/接收信号DT/R=1,发送T/R=0,接收 CLK时钟引脚 ALE地址允许信号
RESET复位信号CS=FFFFH, 其它为0指令队列空 AD0 A19/S6 GND VCC
13. 简述Intel8086总线写操作的过程。 T1:CPU发出地址信息
T2:cpu撤销地址信息,把数据传送到总线 T3:从总线读取数据 T4:撤销总线信号
14. 简述Intel8086总线读操作的过程。
Cpu发出地址信号,AD0----AD15进入高阻状态,如果数据为准备好,cpu不断插入Tw。在进入T4的下降沿,cpu通过AD0----AD15获得数据
15. Intel8086如何响应非屏蔽中断?又如何响应可屏蔽中断? Intel8086 如何响应可屏蔽中断:
①如IF=0,不响应。IF=1时,从总线上读取中断类型n; ②将FR,CS,IP入栈; CS←(0:4*n+2),IP←(4*n), 进入ISR;
③执行IRET指令后,从栈中弹出IP,CS,FR,恢复断点。
16. 什么是接口?什么是端口?微机I/O接口与外部设备的交换信号有哪些类型?
————
第五章 8086指令
一、写出下列指令所对应的操作
(1) MOV AL,99H (2) MOV AH,AL
(3) MOV CL,[BX+1000H] (4) MOV BH,[BP+SI] (5) XCHG AL,BL (6) XLAT
(7) PUSH SI (8) POP DI (9) ADD CH,[200H] (10) ADC AL,0 (11) INC BX (12) DEC DX (13) SUB AX,BX (14) SBB AH,AL (15) NEG AX (16) SAR AL,CL (17) SHL AL,1 (18) RCR AH,1 (19) ROL AL,CL (20) TEST AH,80H (21) AND AL,8AH (22) XOR AX,AX (23) NOT AL (24) OR AL,DL (25) CALL 200H (26) STC (27) STI (28) CLI (29) CLC (30) NOP (31) HLT (32) INT 1CH (33) RET (34) IRET (35) CMP AX,BX 二、填空
MOV AX,1000H; AH=? MOV DS,AX; DS=?
MOV AL,23H; AL=? AX=?
MOV [200H],AX; (1000:0200)=? MOV BX,200H; BX=? MOV DI,[BX]; DI=? MOV [202H],BH; (1000:0202)=? MOV SI,[BX+1]; SI=?
AL=? AX=? (1000:0201)=?
MOV BH,[BX];
BH=?