习题 1.简述冯·诺依曼计算机结构的基本含义。电子计算机与以往的计算工具所不同的基 本特征是什么? 2.电子计算机包括哪几个主要部分?各部分的基本功能是什么? 3.微型计算机的主机包括哪几个主要部分?各部分的基本功能是什么 4.简述存储器的读/写过程。计算机如何区分内存储器中存放的指令和数据? 5.运算器的基本功能是什么?它由哪几部分组成?各部分的作用是什么? 6.控制器的基本功能是什么?它由哪几部分组成?各部分的作用是什么? 7.何谓系统总线?系统总线分哪几组?各组总线的特点与作用是什么? 8.某CPU的数据总线为16位,地址总线为24位,那么它的最大寻址空间(地址范围) 是多少?经由数据总线传送的无符号数及带符号补码数的范围分别是多大? 9.试解释下列名词术语 (D)ALU (2)MIPS (3)RAM 4)ROM (5)存储器地址(6)时钟周期(7)机器周期(8)指令周期 (9)IO接口(10)O端口(11)中断 (12)DMA 10.对于单总线结构CPU的计算机,请分别写出完成下列操作所需要发出的微命令信 号,并说明该操作是否要占用机器周期 (1)PC→MAR(2)DBUS→MDR(3)MDR→DBUS (4)Y+Rl→Z 1l.对于单总线结构CPU的计算机,请分别写出下列指令的执行过程(包括取指令的过 程)。要求指出各个微操作步骤,需要哪几个机器周期,每个机器周期需要控制器发出哪些 微命令信号。 (1)ADD M (2)ADD Rl, R2 (3)JMP A(PC) 其中,R、R1、R2均为通用寄存器,M为存储单元的地址,JMPA(PC)是相对转移指令,转 移地址是当前的PC值加上数A。 习题二 1.80386以上的微处理器通常有哪几种工作模式?各自的主要特点是什么? 2.简要说明80x86/ Pentium处理器编程结构中所包含寄存器的主要类型及寄存器名称 3.80868088CPU标志寄存器中有哪几个状态标志位和控制标志位?它们各自的功能是 什么? 4.为什么要将存储系统空间划分成许多逻辑段,分段后如何寻址要访问的存储单元? 5.什么是物理地址?什么是逻辑地址?物理地址与逻辑地址有何联系? 6.什么是段基值?什么是偏移量?如何根据段基值和偏移量计算存储单元的物理地址? 7.在80x86实模式下,若(CS)=1200H,(IP)=0345H,则物理地址是什么?若(CS) 110H,(P)=1245H,则物理地址又是什么? 8.某存储单元的物理地址为28ABOH,若偏移量为1000H,则段基值为多少? 9.若80x86实模式下当前段寄存器的基值(CS)=2010H,(DS)=3010H,则对应的代码 段及数据段在存储空间中物理地址的首址及末址是什么? 10.设现行数据段位于存储器100004~1FFFH单元,则DS寄存器的内容应为多少? 1.什么是堆栈?它有什么用途?堆栈指针的作用是什么?举例说明堆栈的操作 12.在80x86实模式系统中,堆栈的位置如何确立?由SS寄存器的值所指定地址的位置 是不是栈底?为什么? 13.某系统中已知当前(SS)=2100H,(SP)=080AH,说明该堆栈段在存储器中的物理地 址范围。若在当前堆栈中存入10个字节数据后,那么SP的内容变为何值? 14.已知当前数据段中存有如图6.12所示的字符串数据,现要求在该字符串之后添加两
习题一 1. 简述冯·诺依曼计算机结构的基本含义。电子计算机与以往的计算工具所不同的基 本特征是什么? 2. 电子计算机包括哪几个主要部分?各部分的基本功能是什么? 3. 微型计算机的主机包括哪几个主要部分?各部分的基本功能是什么? 4. 简述存储器的读/写过程。计算机如何区分内存储器中存放的指令和数据? 5. 运算器的基本功能是什么?它由哪几部分组成?各部分的作用是什么? 6. 控制器的基本功能是什么?它由哪几部分组成?各部分的作用是什么? 7. 何谓系统总线?系统总线分哪几组?各组总线的特点与作用是什么? 8. 某 CPU 的数据总线为 16 位,地址总线为 24 位,那么它的最大寻址空间(地址范围) 是多少?经由数据总线传送的无符号数及带符号补码数的范围分别是多大? 9. 试解释下列名词术语: (1) ALU (2) MIPS (3) RAM (4) ROM (5) 存储器地址 (6) 时钟周期 (7) 机器周期 (8) 指令周期 (9) I/O 接口 (10) I/O 端口 (11) 中断 (12) DMA 10. 对于单总线结构 CPU 的计算机,请分别写出完成下列操作所需要发出的微命令信 号,并说明该操作是否要占用机器周期。 (1) PC→MAR (2) DBUS→MDR (3) MDR→DBUS (4) Y+R1→Z 11. 对于单总线结构 CPU 的计算机,请分别写出下列指令的执行过程(包括取指令的过 程)。要求指出各个微操作步骤,需要哪几个机器周期,每个机器周期需要控制器发出哪些 微命令信号。 (1) ADD M, R (2) ADD R1, R2 (3) JMP A(PC) 其中,R、R1、R2 均为通用寄存器,M 为存储单元的地址,JMPA(PC)是相对转移指令,转 移地址是当前的 PC 值加上数 A。 习题二 1. 80386 以上的微处理器通常有哪几种工作模式?各自的主要特点是什么? 2. 简要说明 80x86/Pentium 处理器编程结构中所包含寄存器的主要类型及寄存器名称。 3. 8086/8088 CPU 标志寄存器中有哪几个状态标志位和控制标志位?它们各自的功能是 什么? 4. 为什么要将存储系统空间划分成许多逻辑段,分段后如何寻址要访问的存储单元? 5. 什么是物理地址?什么是逻辑地址?物理地址与逻辑地址有何联系? 6. 什么是段基值?什么是偏移量?如何根据段基值和偏移量计算存储单元的物理地址? 7. 在 80x86 实模式下,若(CS)=1200H,(IP)=0345H,则物理地址是什么?若(CS)= 1110H,(IP)=1245H,则物理地址又是什么? 8. 某存储单元的物理地址为 28AB0H,若偏移量为 1000H,则段基值为多少? 9. 若 80x86 实模式下当前段寄存器的基值(CS)=2010H,(DS)=3010H,则对应的代码 段及数据段在存储空间中物理地址的首址及末址是什么? 10. 设现行数据段位于存储器 10000H~1FFFFH 单元,则 DS 寄存器的内容应为多少? 11. 什么是堆栈?它有什么用途?堆栈指针的作用是什么?举例说明堆栈的操作。 12. 在 80x86 实模式系统中,堆栈的位置如何确立?由 SS 寄存器的值所指定地址的位置 是不是栈底?为什么? 13. 某系统中已知当前(SS)=2100H,(SP)=080AH,说明该堆栈段在存储器中的物理地 址范围。若在当前堆栈中存入 10 个字节数据后,那么 SP 的内容变为何值? 14. 已知当前数据段中存有如图 6.12 所示的字符串数据,现要求在该字符串之后添加两
个字节数据0DH和0AH(回车、换行符),请说明需给出的段基值和偏移量。 习题三 回答下列各题 1)下面的伪指令语句经汇编后,W开始的存储单元中每个字的内容是什么? ORG3000HWDW1234H,5678H,$+3,9ABCH,$+3 (2)下列两条指令的功能是否相同? ①L:JMPL②JP$ 2.设W、B、C1、C2、C3、C4的定义如下,W的偏移地址部分为1000H WDW8086H,′H′,′AB′,6 BDB53H,K′,0,"ODH′ Cl EQU I EQU 129 C3 EQU S-W 4 EQU B-W 问C3和C4的值分别是多少?各表示什么意义?并请对下述各指令分别写出执行结果。 (1)MOV AL, B-5 (2)MOAL,2°(C2-C1-1) (3)MOV AX, C4-C3 (4)MOV AX, W+5 3.设X、Y为已知常数,下列各指令分别执行后,AX=? (1) MOV AX,(10*12-25)MOD8)+10/8 (2)MOV AX,(NOT (10 LT 5) XOR 30)AND((10 GE 5)OR NOT 40) (3)MOV AX, ((X LE Y)AND X)OR((Y LT X)ANDY 4.下面各组的几条伪指令说明符之间有什么不同?两组说明符之间的搭配关系如何? ② SEGMENT ③ MACRO (2)①ENDP ②ENDS ③ENDM ④END 5.指出下列各语句中的变量名、标号、过程名、段名、符号名、常量名、宏名 (1)NI SEGMENT (2)N2 PROC (3)N3DW5 (4)N4: MOV AX, BX (5)N5 EQUBYTE PTR (6)N6 MACRO (7)N7 ENDS (8)N8 ENDP (9)N9=100 6.设DS=2BC3H,数据段中的变量定义如下: DSEGMENT BMDB′ IBM-PC/XT ORG 1024H TI Dw 3 DUP(, 2 DUP(5, 0)) T2 EQUS-TI DENDS (1)试写出字母“P”的段基值和偏移地址。物理地址2BC38H中存放的一个字母是什么? (2)下述各条指令分别单独执行后,BX(或BL)=? ① MOV BX, OFFSET IBM ② MOV BX,SEGT1 ③ MOV BX, TYPE IBM ④ MOV BX, TYPE T1 ⑤ MOV BX LENGTH IBM ⑥ MOV BX, LENGTH TI ⑦ MOV BX,T2 ⑧ MOV BX, SIZE T1 9 MOVBX, WORD PTR IBM MOVBL, BYTE PTR Tl+1 7.下列程序段是否正确?请说明理由。 (1)DW′EFG′,12345H (2)BDB1,2
个字节数据 0DH 和 0AH(回车、换行符),请说明需给出的段基值和偏移量。 习题三 1. 回答下列各题: (1) 下面的伪指令语句经汇编后,W 开始的存储单元中每个字的内容是什么? ORG 3000H WDW1234H, 5678H, $+3, 9ABCH, $+3 (2) 下列两条指令的功能是否相同? ①L: JMPL ② JMP$ 2. 设 W、B、C1、C2、C3、C4 的定义如下,W 的偏移地址部分为 1000H: W DW 8086H,′H′, ′AB′,6 B DB 53H,′K′, 0, ′0DH′ C1 EQU 1 C2 EQU 129 C3 EQU $-W C4 EQU B-W 问 C3 和 C4 的值分别是多少?各表示什么意义?并请对下述各指令分别写出执行结果。 (1) MOV AL, B-5 (2) MOV AL, 2*(C2-C1-1) (3) MOV AX, C4-C3 (4) MOV AX, W+5 3. 设 X、Y 为已知常数,下列各指令分别执行后,AX=? (1) MOV AX, (((10*12-25) MOD 8)+10)/8 (2) MOV AX,(NOT (10 LT 5) XOR 30) AND ((10 GE 5)OR NOT 40) (3) MOV AX, ((X LE Y) AND X) OR ((Y LT X) AND Y) 4. 下面各组的几条伪指令说明符之间有什么不同?两组说明符之间的搭配关系如何? (1) ① PROC ② SEGMENT ③ MACRO (2) ① ENDP ② ENDS ③ ENDM ④ END 5. 指出下列各语句中的变量名、标号、过程名、段名、符号名、常量名、宏名。 (1) N1 SEGMENT (2) N2 PROC (3) N3 DW 5 (4) N4: MOV AX, BX (5) N5 EQUBYTE PTR (6) N6 MACRO (7) N7 ENDS (8) N8 ENDP (9) N9 = 100 6. 设 DS=2BC3H,数据段中的变量定义如下: DSEGMENT IBM DB′IBM-PC/XT′ ORG 1024H T1 DW 3 DUP(1, 2 DUP(5, 0)) T2 EQU$-T1 DENDS (1) 试写出字母“P”的段基值和偏移地址。物理地址 2BC38H 中存放的一个字母是什么? (2) 下述各条指令分别单独执行后, BX(或 BL)=? ① MOV BX, OFFSET IBM ② MOV BX, SEG T1 ③ MOV BX, TYPE IBM ④ MOV BX, TYPE T1 ⑤ MOV BX LENGTH IBM ⑥ MOV BX, LENGTH T1 ⑦ MOV BX, T2 ⑧ MOV BX, SIZE T1 ⑨ MOVBX, WORD PTR IBM MOVBL, BYTE PTR T1+1 7. 下列程序段是否正确?请说明理由。 (1) DW′EFG′, 12345H (2) B DB1, 2
DD′ABCD A3B4H MOVAL. B+2 8对数据段的如下定义,请依次写出各字节单元的内容。在以Ⅹ为开始地址的存储器 中,其内容能构成数据3000H的字单元有几个?其偏移地址是多少? D SEGMENT AT 3000H ORG X DBDDX Z DW Y TDB 2 DUP(67H, 76H) DENDS 9.写出伪指令语句 (1)将字节数据68,68H,-3,32Q,+200,1011B存放在定义为字变量的、以A为开 始地址的存储单元中。并且不改变数据按字节存储时的次序。 (2)将字数据6287H,154,3875,0A6H存放在定义为字节变量的、以B为开始 地址的存储单元中,并且不改变数据按字存储时的次序。 (3)在以C为首地址的存储单元中连续存放字节数据:2个23,5个A′,10个(1, 2)空出20个单元。请使用DUP操作符。 (4)在(3)的语句末尾增加一条名为D的符号定义语句,使D的值等于A、B、C三组 变量字节数之和。 (5)在(4)的语句末尾增加几条伪指令语句,使字变量E的内容等于上述字变量的总 字节数与字节变量的总字节数之差。 10.指出下列每一对伪指令语句的区别 (1)ⅹDB89H Y EQU 89H (2)X DW 7805H; Y EQU BYTE PTR X (3)X EQU 38 (4)XDW6288H Y DB 62H, 88H (5)XDW5816H;YDw5816 11.指出下列各题中的伪指令语句是否正确?并说明理由。 (I)A DB 387 (2)B DB+255 (3)C EQU K (4)D EQU 86H (5)F EQU 86 (6)G=866 E EQU D+7 F EQU 88 G=G+8 ()H SEG H ENDS (8)I PROC ENDP (9)J MACRO J ENDM 习题四 1.设B为数据段中的字变量,L为标号,指出下列各指令中源操作数和目的操作数 寻址方式。若B的偏移地址部分为1234H,L的偏移地址部分为5678H,SS=1000H、 DS=2000H、ES=3000H、BX=4000H、BP=5000H、SI=6000H、Dl=7000H、SP=800H,试 分别计算指令中存储器操作数的物理地址
DD′ABCD′, A3B4H MOVAL, B+2 8. 对数据段的如下定义,请依次写出各字节单元的内容。在以 X 为开始地址的存储器 中,其内容能构成数据 3000H 的字单元有几个? 其偏移地址是多少? D SEGMENT AT 3000H ORG 30H X DBDDX Z DW Y T DB 2 DUP(67H,76H) DENDS 9. 写出伪指令语句: (1) 将字节数据 68, 68H,-3, 32Q, +200, 1011B 存放在定义为字变量的、以 A 为开 始地址的存储单元中。并且不改变数据按字节存储时的次序。 (2) 将字数据 6287H, 154, 3875, 0A6H 存放在定义为字节变量的、以 B 为开始 地址的存储单元中,并且不改变数据按字存储时的次序。 (3) 在以 C 为首地址的存储单元中连续存放字节数据: 2 个 23,5 个′A′,10 个(1, 2),空出 20 个单元。请使用 DUP 操作符。 (4)在(3)的语句末尾增加一条名为 D 的符号定义语句,使 D 的值等于 A、B、C 三组 变量字节数之和。 (5)在(4)的语句末尾增加几条伪指令语句,使字变量 E 的内容等于上述字变量的总 字节数与字节变量的总字节数之差。 10. 指出下列每一对伪指令语句的区别: (1) X DB 89H; Y EQU 89H (2) X DW 7805H ; Y EQU BYTE PTR X (3) X EQU 38 ; Y=38 (4) X DW 6288H ; Y DB 62H,88H (5) X DW 5816H ; Y DW 5816 11. 指出下列各题中的伪指令语句是否正确?并说明理由。 (1) A DB 387 (2) B DB+255 (3) C EQU K (4) D EQU 86H (5) F EQU 86 (6) G=866 E EQU D+7 F EQU 88 G=G+8 (7) H SEG …… H ENDS (8) I PROC …… ENDP (9) J MACRO …… J ENDM 习题四 1. 设 B 为数据段中的字变量,L 为标号,指出下列各指令中源操作数和目的操作数的 寻址方式。若 B 的偏移地址部分为 1234H,L 的偏移地址部分为 5678H,SS=1000H、 DS=2000H、ES=3000H、BX=4000H、BP=5000H、SI=6000H、DI=7000H、SP=8000H,试 分别计算指令中存储器操作数的物理地址
(1)MOV [BP+SI],AX (2)MOV CX, [DI+4] (3)MOV WORD PTR [SI],300 (4)PUSHF (6 STOSW (7)AND AX, B+6 (8)ADD AX, [BX+DI+8] 9)JMP B 10)JMP L 2.判断下列指令是否正确并说明理由。其中,B为数据段中的字节变量。 (1)MOV BX, AL (2)MOV AX, CS: [BX] (3)MOV [50-BP],AX (4)MOV 5, AL (5)MOV BX, [BX+OFFSET B] (6)MOAL,000001101B (7)MOV AX, SS: [SP+DIJ ( 8)MOV AX, WORD PTR BX (9)MOV DX, [BX+BP] (10) MOV AX, BX-2 (11)PUSH SP (12)POP CS (13)XCHG SP, BP (14)OUT 258H, AL (15)SHL AX 2 (16)INC AL, I (17)ADD[BX],20H (18)SUB BYTE PTR [BX], [DI] (19) CMP CL, 100H (20)MUL25 3.下列每组中的两条指令有什么区别?其中,W为数据段中的字变量,N为不超过16 位的常量 (1)MOV AX, 1000H MOv AX, DS: [1000H] (2)MOV AX, BX MOV AX, [BX] (3)MOV AX, N MOV AX. W (4)MOV AX, [BX+N] MOv AX, [ BX+W (5)MOV [BP] [SI],CL MOV DS:[BP][S冂],CL (6)MOV AL,5 IN AL, 5 (7)M (8)AND AX, BX TEST AX, BX (9)SUB AX, BX CMP AX, BX (10)INC SI add SI, 1 (I1)DEC DI JB DI, I (12)NEG AX NOT AX 4.试分别写出一条MOV指令,实现下述功能 (1)将十进制数98以未组合BCD码数的形式送入AX。 (2)使其与数据定义语句“BDB32H,34H”的效果相同 5.写出指令序列,将数据段内首地址为B的字数组的第7个(从1算起)字送到CX寄存 (1)使用直接寻址方式 (2)使用BX,寄存器间接寻址方式 (3)使用BX,寄存器相对寻址方式(4)使用BX和SI,基址变址寻址方式 6.写出与XLAT指令等效的指令序列 7.写出指令序列,将BL中的数送入BX中并保持其所代表的值不变 8.分别用一条指令完成下述程序段(1)、(2)的功能 (1)MOV BX, DS: [1234H] (2)ADD BX, SI MOv AX, DS: [1236H] MOV DS. AX MOV DL BX 9.试用2条指令将AL的0、2、4、6位求反,并将1、3、5、7位置1。请给出多种解
(1) MOV[BP+SI], AX (2) MOV CX, [DI+4] (3) MOV WORD PTR [SI], 300 (4) PUSHF (5) LODSB (6) STOSW (7) AND AX, B+6 (8) ADD AX, [BX+DI+8] (9) JMP B (10) JMP L 2. 判断下列指令是否正确,并说明理由。其中,B 为数据段中的字节变量。 (1) MOV BX, AL (2) MOV AX, CS:[BX] (3) MOV [50-BP], AX (4) MOV 5, AL (5) MOV BX, [BX+OFFSET B] (6) MOV AL, 0000000010101101B (7) MOV AX, SS:[SP+DI] (8) MOV AX, WORD PTR BX (9) MOV DX, [BX+BP] (10) MOV AX, BX-2 (11) PUSH SP (12) POP CS (13) XCHG SP, BP (14) OUT 258H, AL (15) SHL AX 2 (16) INC AL, 1 (17) ADD [BX], 20H (18) SUB BYTE PTR [BX], [DI] (19) CMP CL, 100H (20) MUL 25 3. 下列每组中的两条指令有什么区别?其中,W 为数据段中的字变量,N 为不超过 16 位的常量。 (1) MOV AX,1000H MOV AX,DS:[1000H] (2) MOV AX,BX MOV AX,[BX] (3) MOV AX, N MOV AX, W (4) MOV AX, [BX+N] MOV AX, [BX+W] (5) MOV [BP][SI],CL MOV DS:[BP][SI],CL (6) MOV AL,5 IN AL,5 (7) MOV AX,W LEA AX,W (8) AND AX,BX TEST AX,BX (9) SUB AX,BX CMP AX,BX (10) INC SI ADD SI,1 (11) DEC DI SUB DI,1 (12) NEG AX NOT AX 4. 试分别写出一条 MOV 指令,实现下述功能。 (1) 将十进制数 98 以未组合 BCD 码数的形式送入 AX。 (2) 使其与数据定义语句“BDB32H, 34H”的效果相同。 5. 写出指令序列,将数据段内首地址为 B 的字数组的第 7 个(从 1 算起)字送到 CX 寄存 器: (1) 使用直接寻址方式 (2) 使用 BX,寄存器间接寻址方式 (3) 使用 BX,寄存器相对寻址方式 (4) 使用 BX 和 SI,基址变址寻址方式 6. 写出与 XLAT 指令等效的指令序列。 7. 写出指令序列,将 BL 中的数送入 BX 中并保持其所代表的值不变。 8. 分别用一条指令完成下述程序段(1)、(2)的功能。 (1) MOV BX, DS:[1234H] (2) ADD BX, SI MOV AX, DS:[1236H] ADD BX, 20 MOV DS, AX MOV DI, BX 9. 试用 2 条指令将 AL 的 0、2、4、6 位求反,并将 1、3、5、7 位置 1。请给出多种解
答 10.试用1条指令完成下述操作,并请给出多种解答。 (1)将AX的所有各位清0(2)将AX的所有各位置1(3)将AX的所有各位求 反 11.试用1条指令测试AL的内容并置标志位,但AL的内容不变,请给出多种解答。 测试后,如何判断AL是否为零?如何判断AL是正数还是负数?如何判断AL中有偶数个 1还是有奇数个1? 12.设AL=0B7H。写出依次执行完下列每一条指令后AL的值。 (1)SAR AL, 1(2)SHL AL, 1 (3)ROR AL, 1(4)RCL AL, I 13.试编写程序段,用移位和相加的方法将AL中的无符号数乘以21后存入AX 14.写出下列各程序段执行后AL的值 (1)MOV AL, 1 (2)MOV AL, OFH 3)MOV AL, BL(4)MOV AL, 34H ROR AL. I OFFH NOT AL OR AL. AL MOV CL.7 XOR AL BL OR AL. 3 NEG AL SHR AL. CL OR AL, BL ADC AL. 1 15.设AX=1234H,BL=91H,分别执行下述各指令后AX=?,各标志位的值是什么? (1)ADD AL, BL (2)SUB AL, BL (3)MUL BL (4)IMUL BL (5)DIV BL(6)IDIV BL 16.按要求分别完成下述操作 (1)用1条指令将-15按补码形式存入AL。 (2)用2条运算类指令将AL中的负数(例如-15)补码变成该负数的原码 (3)设AL中为负数(例如,-15)的补码,用1条运算类指令使AL中的数 ①变成该负数的反码②变成相反的正数的补码 ③变成比相反的正数少1的数的补码④变成比它本身大1的数的补码 ⑤变成比它本身小1的数的补码 ⑥变成它本身的2倍 ⑦作为无符号数变成它本身的一半 ⑧作为带符号数变成它本身的一半 ⑨作为无符号数变成它本身的平方 ⑩作为带符号数变成它本身的平方 17.分别写出指令序列,完成下述操作: (1)将AL中的每一位都扩展(复制)为相邻的两位,然后放入AX中,即使AL中的位编 号从76543210变为AX中的位编号7766554433221100。 (2)将AL的4个偶数位移到低四位、4个奇数位移到高四位,并保持原来各自的相对 位置不变,即使位编号从76543210变为75316420。 18.设AX=6EH,AF=CF=0,则执行AAA指令后,AX=?若执行的是DAA指令,则 19.如果JZL指令的实际转移距离(L-IP)超过了8位补码的表数范围,即在(-128~+127) 之外,应如何处理才能达到同样的转移目的? 20.设L为标号,则下面的4条指令都是直接转移方式。它们的区别是什么? (1)JC L (2)JMP SHORT L (3)JMPNEAR PTR L (4)JMPFAR PTR L 21.执行“REIN4”指令时,返回地址从(SP+1,SP)“弹出”还是从(SP+5,SP+4)“弹出 ?若设SP=50H,则执行“RETN4”指令后,SP=? 22.下述每组中的两条指令的执行结果有什么不同? (1)MOV AL, [SI] LODSB (2)MOV ES: [DI], AL STOSB (3)CMP AX, ES: [DI] SCASW
答。 10. 试用 1 条指令完成下述操作,并请给出多种解答。 (1) 将 AX 的所有各位清 0 (2) 将 AX 的所有各位置 1 (3) 将 AX 的所有各位求 反 11. 试用 1 条指令测试 AL 的内容并置标志位,但 AL 的内容不变,请给出多种解答。 测试后,如何判断 AL 是否为零?如何判断 AL 是正数还是负数?如何判断 AL 中有偶数个 1 还是有奇数个 1? 12. 设 AL=0B7H。写出依次执行完下列每一条指令后 AL 的值。 (1) SAR AL, 1 (2) SHL AL, 1 (3) ROR AL, 1 (4) RCL AL, 1 13. 试编写程序段,用移位和相加的方法将 AL 中的无符号数乘以 21 后存入 AX。 14. 写出下列各程序段执行后 AL 的值。 (1) MOV AL, 1 (2) MOV AL, 0FH (3) MOV AL, BL (4) MOV AL, 34H ROR AL, 1 XOR AL, 0FFH NOT AL STC OR AL, AL MOV CL, 7 XOR AL, BL OR AL, 3 NEG AL SHR AL, CL OR AL,BL ADC AL, 1 15. 设 AX=1234H,BL=91H,分别执行下述各指令后 AX=?, 各标志位的值是什么? (1) ADD AL, BL (2) SUB AL, BL (3) MUL BL (4) IMUL BL (5) DIV BL (6) IDIV BL 16. 按要求分别完成下述操作: (1) 用 1 条指令将-15 按补码形式存入 AL。 (2) 用 2 条运算类指令将 AL 中的负数(例如-15)的补码变成该负数的原码。 (3) 设 AL 中为负数(例如,-15)的补码,用 1 条运算类指令使 AL 中的数: ① 变成该负数的反码 ② 变成相反的正数的补码 ③ 变成比相反的正数少 1 的数的补码 ④ 变成比它本身大 1 的数的补码 ⑤ 变成比它本身小 1 的数的补码 ⑥ 变成它本身的 2 倍 ⑦ 作为无符号数变成它本身的一半 ⑧ 作为带符号数变成它本身的一半 ⑨ 作为无符号数变成它本身的平方 ⑩ 作为带符号数变成它本身的平方 17. 分别写出指令序列,完成下述操作: (1) 将 AL 中的每一位都扩展(复制)为相邻的两位,然后放入 AX 中,即使 AL 中的位编 号从 76543210 变为 AX 中的位编号 7766554433221100。 (2) 将 AL 的 4 个偶数位移到低四位、4 个奇数位移到高四位,并保持原来各自的相对 位置不变,即使位编号从 76543210 变为 75316420。 18. 设 AX=6EH,AF=CF=0,则执行 AAA 指令后,AX=? 若执行的是 DAA 指令,则 AX=? 19. 如果 JZ L 指令的实际转移距离(L-IP)超过了 8 位补码的表数范围,即在(-128~+127) 之外,应如何处理才能达到同样的转移目的? 20. 设 L 为标号,则下面的 4 条指令都是直接转移方式。它们的区别是什么? (1) JC L (2) JMP SHORT L (3) JMPNEAR PTR L (4) JMPFAR PTR L 21. 执行“RETN4”指令时,返回地址从(SP+1,SP)“弹出”还是从(SP+5, SP+4)“弹出 ”? 若设 SP=50H,则执行“RETN4”指令后,SP=? 22. 下述每组中的两条指令的执行结果有什么不同? (1) MOV AL, [SI] LODSB (2) MOV ES:[DI], AL STOSB (3) CMP AX, ES:[DI] SCASW
(4)MOV目的字节,源字节 MOVSB (5)CMP目的字,源字 CMPSW 23.下述各指令序列分别执行后,SI=?,Dl=?,CX=? (1)MOV CX, 10 (2)MOCx,10 CLD CLD REP MOVSB REPE CMPSW 24.设B1、B2、B3开始的数据区定义如下 BI DB ABC4EFGHIJ12345A7890 B2DB′1234567890′ B3 DB 40 DUP(?) 用串操作指令按下述要求依次编写程序段。 (1)将B3中的40个字节全部填入字符“*” (2)将B1中的字符送入B3的前20个字节。 (3)将B1中的大写字母(共有10个)按原来的次序送入B3的后10个字节 (4)在字符串B1中查找最后一个“A”找到时将其偏移地址送入BX否则将-1送入BX。 (5)将B2和B3从低地址端开始比较,查找对应位置上第1个相同的字符。找到时将其 偏移地址分别送入AX和BX;否则将-1送入BX。 习题五 1.简要说明 Pentium处理器内部所包含的主要功能部件, 2. Pentium是多少位的微处理器?它的外部数据总线宽度是多少位?它的最大寻址空间是 多少?其内存位容量最大可达多少 3.在片内 Cache的设置上, Pentium与80486有何不同? 4.以 Pentium处理器为例,解释现代微处理器设计中所采用的下列技术:流水线方式 流水级;超级流水线(超流水):超标量结构 5.试说明现代微处理器采用“转移预测”策略的必要性。“转移预测”通常是发生在指 令执行全过程的哪个阶段? 6.简要说明 Pentium处理器实现“动态转移预测”的基本方法及工作过程 7. Pentium对BTB中历史位的修改更倾向于预测转移发生,试以一个“多重循环程序” 的执行情况(进入循环、退出循环)为例,对这种策略进行讨论 8.80386 DX CPU的外部引脚信号共分哪几类?对于一个引脚信号,通常从哪几个方面 对其进行描述?试举两例。 9.当80386DX输出的字节允许信号BE3BE2 BElBO=0000时,将产生哪种类型的数 据传送(字节、字、双字)?数据传送将通过哪些数据线进行 10.当80386DX输出的三个控制信号MO、DC及W/R)为010或110时,将分别产 生什么类型的总线周期? 11.说明“非流水线总线周期”和“流水线总线周期”的各自特点。 12.8086CPU的一个总线周期由4个时钟周期(T1、T2、T3、T4)构成,并在T3的上升 沿时刻检测 Ready信号,若 Ready为低电平,则在T3之后插入一个等待状态Tw,并在Tw 上升沿继续检测 Ready信号,直至它变为高电平后才从当前Tw状态转入T4。请考虑在下 述条件下,8086读总线周期时序中要不要插入Tw若需要,则需插入几个?试画出相应的时 序波形 (1)CPU为8086-1(主频为10MHz); (2)内存芯片的读出时间为400ns(从CPU输出地址有效到数据稳定地出现在数据总线 上的时间)
(4) MOV 目的字节,源字节 MOVSB (5) CMP 目的字,源字 CMPSW 23. 下述各指令序列分别执行后,SI=?,DI=?,CX=? (1) MOV CX, 10 (2) MOV CX, 10 CLD CLD REP MOVSB REPE CMPSW 24. 设 B1、B2、B3 开始的数据区定义如下: B1 DB′ABC4EFGHIJ12345A7890′ B2 DB′1234567890′ B3 DB 40 DUP(?) 用串操作指令按下述要求依次编写程序段。 (1) 将 B3 中的 40 个字节全部填入字符“*”。 (2) 将 B1 中的字符送入 B3 的前 20 个字节。 (3) 将 B1 中的大写字母(共有 10 个)按原来的次序送入 B3 的后 10 个字节。 (4) 在字符串 B1 中查找最后一个“A”。找到时将其偏移地址送入 BX,否则将-1 送入 BX。 (5) 将 B2 和 B3 从低地址端开始比较,查找对应位置上第 1 个相同的字符。找到时将其 偏移地址分别送入 AX 和 BX;否则将-1 送入 BX。 习题五 1. 简要说明 Pentium 处理器内部所包含的主要功能部件。 2. Pentium 是多少位的微处理器?它的外部数据总线宽度是多少位?它的最大寻址空间是 多少?其内存位容量最大可达多少? 3. 在片内 Cache 的设置上,Pentium 与 80486 有何不同? 4. 以 Pentium 处理器为例,解释现代微处理器设计中所采用的下列技术: 流水线方式; 流水级;超级流水线(超流水);超标量结构。 5. 试说明现代微处理器采用“转移预测”策略的必要性。“转移预测”通常是发生在指 令执行全过程的哪个阶段? 6. 简要说明 Pentium 处理器实现“动态转移预测”的基本方法及工作过程。 7. Pentium 对 BTB 中历史位的修改更倾向于预测转移发生,试以一个“多重循环程序” 的执行情况(进入循环、退出循环)为例,对这种策略进行讨论。 8. 80386 DX CPU 的外部引脚信号共分哪几类?对于一个引脚信号,通常从哪几个方面 对其进行描述?试举两例。 9. 当 80386 DX 输出的字节允许信号 BE3BE2BE1BE0=0000 时,将产生哪种类型的数 据传送(字节、字、双字)?数据传送将通过哪些数据线进行? 10. 当 80386 DX 输出的三个控制信号(M/IO、D/C 及 W/R)为 010 或 110 时,将分别产 生什么类型的总线周期? 11. 说明“非流水线总线周期”和“流水线总线周期”的各自特点。 12. 8086 CPU 的一个总线周期由 4 个时钟周期(T1、T2、T3、T4)构成,并在 T3 的上升 沿时刻检测 Ready 信号,若 Ready 为低电平,则在 T3 之后插入一个等待状态 Tw,并在 Tw 上升沿继续检测 Ready 信号,直至它变为高电平后才从当前 Tw 状态转入 T4。请考虑在下 述条件下,8086 读总线周期时序中要不要插入 Tw?若需要,则需插入几个?试画出相应的时 序波形图。 (1) CPU 为 8086-1(主频为 10MHz); (2) 内存芯片的读出时间为 400ns(从 CPU 输出地址有效到数据稳定地出现在数据总线 上的时间)
13.微机A和微机B采用主频不同的CPU芯片,在片内逻辑电路完全相同的情况下,若A 机CPU的主频为8MHz,B机为12MHz,且已知每台机器的总线周期平均含有4个时钟周 期,A机的平均指令执行速度为04MIPS,那么该机的平均指令周期为多少微秒(μs)?每个 指令周期含有几个总线周期?B机的平均指令执行速度为多少MIPS? 习题六 1.I/O接口的主要功能是什么?它的基本结构如何? 2.IO端口的编址方式有哪两种?各自的优缺点是什么? 3.CPU如何实现对多台外设所对应的IO接口及其内部寄存器(端口)的逻辑选择? 4.试说明ⅣN指令和OUT指令的格式及功能。 5.主机与外设之间的数据传送控制方式有哪几种?各自的特点是什么? 6.请画出查询式输入和查询式输出的程序流程图 7.试说明DMA控制器(DMAC)的基本功能 8.画出DMA控制器的一般结构图。 9.普通IO接口的地址总线是单向的,而DMA控制器的地址总线是双向的,为什么? 10.DMA控制器通常有哪几种工作方式?各自的特点是什么? 11.说明以DMA方式从内存输出一个字节数据到外设的具体工作过程 12.说明以单字节传输方式从外设往内存输入一个数据块的DMA传送工作过程 13.概述DMA控制器8237的主要功能 14.说明8237一个DMA通道的寄存器结构。 15.指出8237下列引脚信号是单向还是双向的?它们来自何处,送往何处? IOR IOW MEMR MEMW READY HRQ HLDA EOP DREQ DACK 8237外部配置的8位锁存器的功能是什么 17.8237有哪四种工作模式? 18.说明8237DMA通道中的基地址寄存器和当前地址寄存器的功能及其特点。 19.8237只能输出16位地址,即它的最大寻址空间为216(64K)单元。若系统的存储空 间大于64K,则如何实现DMA传送的寻址问题? 0.说明8237是怎样进行优先权管理的? 21.简述用8237进行内存到内存传输时的特点和主要工作过程。 22.8237有哪两条特殊软件命令?与普通的软件命令相比,它们有何特点? 23.假设8237的端口地址为1000H~100FH,试编写一个形成主清除操作的指令序列。 24.对于8237,如何实现硬件DMA请求和软件DMA请求? 25.了解和掌握8237的模式寄存器、命令寄存器、状态寄存器、请求寄存器、屏蔽寄 存器的格式及意义 26.8237的主要编程步骤有哪些? 27.设计8237的初始化程序:利用8237通道3,由外设(磁盘腧输入32K字节的一个数 据块,传送至内存8000H:OH开始的区域(地址增量传送)。要求采用请求传送方式,传送 完不自动预置,DREQ和DACK均为高电平有效,固定优先级,普通时序,不扩展写信号 设8237的端口地址为0600H~060FH。通道3“页面寄存器”的端口地址为82H 28.试编写用8237实现的内存到内存传送的程序,把内存中从SCR开始的1000个字 节数据传送到DST开始的单元去。8237的端口地址为00H~000FH 习题七 1.试说明计算机系统中存储器的三种主要分类方法及分类情况 2.说明存储器性能指标中最主要的两项指标并解释各自的计算参量。 3.两个存储芯片的位容量相同(例如分别为4K×8位和8K×4位),它们可以互换使用
13. 微机 A 和微机 B 采用主频不同的 CPU 芯片,在片内逻辑电路完全相同的情况下,若 A 机 CPU 的主频为 8MHz,B 机为 12MHz,且已知每台机器的总线周期平均含有 4 个时钟周 期,A 机的平均指令执行速度为 0.4MIPS,那么该机的平均指令周期为多少微秒(μs)?每个 指令周期含有几个总线周期?B 机的平均指令执行速度为多少 MIPS? 习题六 1.I/O 接口的主要功能是什么?它的基本结构如何? 2.I/O 端口的编址方式有哪两种?各自的优缺点是什么? 3.CPU 如何实现对多台外设所对应的 I/O 接口及其内部寄存器(端口)的逻辑选择? 4.试说明 IN 指令和 OUT 指令的格式及功能。 5.主机与外设之间的数据传送控制方式有哪几种?各自的特点是什么? 6.请画出查询式输入和查询式输出的程序流程图。 7.试说明 DMA 控制器(DMAC)的基本功能。 8.画出 DMA 控制器的一般结构图。 9.普通 I/O 接口的地址总线是单向的,而 DMA 控制器的地址总线是双向的,为什么? 10.DMA 控制器通常有哪几种工作方式?各自的特点是什么? 11.说明以 DMA 方式从内存输出一个字节数据到外设的具体工作过程。 12.说明以单字节传输方式从外设往内存输入一个数据块的 DMA 传送工作过程。 13.概述 DMA 控制器 8237 的主要功能。 14.说明 8237 一个 DMA 通道的寄存器结构。 15.指出 8237 下列引脚信号是单向还是双向的?它们来自何处,送往何处? IOR IOW MEMR MEMW READY HRQ HLDA EOP DREQ DACK 16.8237 外部配置的 8 位锁存器的功能是什么? 17.8237 有哪四种工作模式? 18.说明 8237 DMA 通道中的基地址寄存器和当前地址寄存器的功能及其特点。 19.8237 只能输出 16 位地址,即它的最大寻址空间为 216(64K)单元。若系统的存储空 间大于 64K,则如何实现 DMA 传送的寻址问题? 20.说明 8237 是怎样进行优先权管理的? 21.简述用 8237 进行内存到内存传输时的特点和主要工作过程。 22.8237 有哪两条特殊软件命令?与普通的软件命令相比,它们有何特点? 23.假设 8237 的端口地址为 1000H~100FH, 试编写一个形成主清除操作的指令序列。 24.对于 8237,如何实现硬件 DMA 请求和软件 DMA 请求? 25. 了解和掌握 8237 的模式寄存器、命令寄存器、状态寄存器、请求寄存器、屏蔽寄 存器的格式及意义。 26.8237 的主要编程步骤有哪些? 27.设计 8237 的初始化程序:利用 8237 通道 3,由外设(磁盘)输入 32K 字节的一个数 据块,传送至内存 8000H:0H 开始的区域(地址增量传送)。要求采用请求传送方式,传送 完不自动预置,DREQ 和 DACK 均为高电平有效,固定优先级,普通时序,不扩展写信号。 设 8237 的端口地址为 0600H~060FH。通道 3“页面寄存器”的端口地址为 82H。 28.试编写用 8237 实现的内存到内存传送的程序,把内存中从 SCR 开始的 1000 个字 节数据传送到 DST 开始的单元去。8237 的端口地址为 0000H~000FH。 习题七 1. 试说明计算机系统中存储器的三种主要分类方法及分类情况。 2. 说明存储器性能指标中最主要的两项指标并解释各自的计算参量。 3. 两个存储芯片的位容量相同(例如分别为 4K×8 位和 8K×4 位),它们可以互换使用
吗?为什么? 4.请画图说明现代计算机系统中的存储器层次结构,并说明“ Cache主存”和“主存 辅存”这两个存储层次的区别。 5.有一双字87654321H的地址为30101H,画出其在字节编址的内存中的两种不同存放 情况。 6.简述半导体存储器的基本分类 7.以六管静态RAM为例,说明静态RAM基本存储单元的数据读/写过程。 8某微机内存容量为1024K字节,利用16K×1位的静态RAM芯片组成,采用模块结 构且每个模块为256K字节,为构成该存储器,共需给定芯片多少片地址应如何分配(模块 选择、组选择、片内地址各占哪几位?) 9.简述动态RAM(DRAM)的优、缺点。 10.动态RAM为什么必须定时刷新?说明两种常见的刷新模式的工作特点。 1.某DRAM存储矩阵,其刷新时间间隔为3ms,按行刷新,且存储矩阵的行数为6 行,若用于一行的刷新操作时间为500ns(含读出、放大、整形及重写等操作),试计算CPU 对DRAM有效读写操作的最大时间比率为多少? 12.试解释“页方式”DRAM的操作特点,并画出其读访问时的操作时序图。 13.简述掩膜式ROM、PROM、 EPROM及E2PROM的主要特点及应用场合。 14.说明Fash存储器(闪存)的特点及用途。 15.存储器与CPU连接时应考虑哪几方面的问题? 16.实现片选控制通常有哪几种方式?分别说明它们的优缺点。 17.某微机系统中内存的首地址为6000H,末地址为63FFFH,求其内存容量。 18.某微机有16条地址线,现用SRAM2114(1K×4位)存储芯片组成存储系统,问采 用线选法进行片选控制时,系统的存储容量最大为多少(字节)?需要多少个2114存储芯片? 19.某存储系统的地址译码电路如图12.60所示,为使 EPROM芯片能够选中工作,试 说明图中给出的有关地址及控制信号应具有的状态,并计算 EPROM芯片的存储容量及地址 范围 20.利用 EPROM2732、SRAM6116、译码器74LS138及必要的门电路构成一个存储容 量为16 KB ROM(地址范围为00000d~03FFH)、8 KB RAM地址范围为04000H~05FFH) 的存储器。系统地址总线信号为A19~A0,数据总线信号为D7~D0,控制信号为RD、WR M/IO 21.利用 EPROM2732、译码器74LS138及必要的门电路构成一个存储容量为8KB的 ROM存储子系统,存储器的地址范围为FA000H~ FBFFFH,试画出存储器与CPU之间的 连线图。 设CPU输出的地址信号为A19~A0,数据信号为D7~D0,控制信号为RD和M/O: 要求采用“全译码方式”产生存储芯片的片选信号 22.对于64位存储器接口结构,若CPU输出的字节允许信号BEO~BE7=1111000 则CPU与存储器间的数据传送宽度为多少位?数据传送将在哪些数据线上进行? 23.说明“程序访问的局部性”原理及其在 Cache中的应用情况 24.解释高速缓存系统采用“直接映像”及“两路组相联”组织方式的区别。 25.试给出高速缓存控制器82385中“直接映像”方式的 Cache目录项格式,若某一组 的目录项内容为00007FFH,那么 Cache中缓存的信息来自于主存的哪一页? Cache中这一组 的值有效吗?哪些行有效 26.说明在82385控制下,CPU进行一次读操作的工作过程。 27.给出常见的 Cache更新方法及替换策略,并具体说明“直写式” Cache更新方法的
吗?为什么? 4. 请画图说明现代计算机系统中的存储器层次结构,并说明“Cache 主存”和“主存 辅存”这两个存储层次的区别。 5. 有一双字 87654321H 的地址为 30101H,画出其在字节编址的内存中的两种不同存放 情况。 6. 简述半导体存储器的基本分类。 7. 以六管静态 RAM 为例,说明静态 RAM 基本存储单元的数据读/写过程。 8. 某微机内存容量为 1024K 字节,利用 16K×1 位的静态 RAM 芯片组成,采用模块结 构且每个模块为 256K 字节,为构成该存储器,共需给定芯片多少片?地址应如何分配(模块 选择、组选择、片内地址各占哪几位?)。 9. 简述动态 RAM(DRAM)的优、缺点。 10. 动态 RAM 为什么必须定时刷新?说明两种常见的刷新模式的工作特点。 11. 某 DRAM 存储矩阵,其刷新时间间隔为 3ms,按行刷新,且存储矩阵的行数为 64 行,若用于一行的刷新操作时间为 500ns(含读出、放大、整形及重写等操作),试计算 CPU 对 DRAM 有效读写操作的最大时间比率为多少? 12. 试解释“页方式”DRAM 的操作特点,并画出其读访问时的操作时序图。 13. 简述掩膜式 ROM、PROM、EPROM 及 E2PROM 的主要特点及应用场合。 14. 说明 Flash 存储器(闪存)的特点及用途。 15. 存储器与 CPU 连接时应考虑哪几方面的问题? 16. 实现片选控制通常有哪几种方式?分别说明它们的优缺点。 17. 某微机系统中内存的首地址为 60000H,末地址为 63FFFH,求其内存容量。 18. 某微机有 16 条地址线,现用 SRAM 2114(1K×4 位)存储芯片组成存储系统,问采 用线选法进行片选控制时,系统的存储容量最大为多少(字节)?需要多少个 2114 存储芯片? 19. 某存储系统的地址译码电路如图 12.60 所示,为使 EPROM 芯片能够选中工作,试 说明图中给出的有关地址及控制信号应具有的状态,并计算 EPROM 芯片的存储容量及地址 范围。 20. 利用 EPROM 2732、SRAM 6116、译码器 74LS138 及必要的门电路构成一个存储容 量为 16KB ROM(地址范围为 00000H~03FFFH)、8KB RAM(地址范围为 04000H~05FFFH) 的存储器。系统地址总线信号为 A19~A0,数据总线信号为 D7~D0,控制信号为 RD、WR、 M/IO。 21. 利用 EPROM 2732、译码器 74LS138 及必要的门电路构成一个存储容量为 8KB 的 ROM 存储子系统,存储器的地址范围为 FA000H~FBFFFH,试画出存储器与 CPU 之间的 连线图。 设 CPU 输出的地址信号为 A19~A0,数据信号为 D7~D0,控制信号为 RD 和 M/IO; 要求采用“全译码方式”产生存储芯片的片选信号。 22. 对于 64 位存储器接口结构,若 CPU 输出的字节允许信号 BE0~BE7=11110000, 则 CPU 与存储器间的数据传送宽度为多少位?数据传送将在哪些数据线上进行? 23. 说明“程序访问的局部性”原理及其在 Cache 中的应用情况。 24. 解释高速缓存系统采用“直接映像”及“两路组相联”组织方式的区别。 25. 试给出高速缓存控制器 82385 中“直接映像”方式的 Cache 目录项格式,若某一组 的目录项内容为 00007FFH,那么 Cache 中缓存的信息来自于主存的哪一页?Cache 中这一组 的值有效吗? 哪些行有效? 26. 说明在 82385 控制下,CPU 进行一次读操作的工作过程。 27. 给出常见的 Cache 更新方法及替换策略,并具体说明“直写式”Cache 更新方法的
优、缺点。 28.解释虚拟存储器技术中“按需调页”存储管理方式 29.什么是80x86的实地址方式?它的寻址范围是多少? 30.分别说明80286及80386/80486的虚拟地址与物理地址变换机制。 31.什么叫虚拟8086方式 习题八 1.80x86实模式的中断可分为哪几类? 2.CPU响应可屏蔽中断INTR与响应其他类型的中断相比,有何特点? 3.说明INTn指令中断的主要功能及特点 4.8259A的优先级管理方式和中断结束方式各有哪些? 5.说明8259A全嵌套方式与特殊全嵌套方式的区别。 6.8259A有哪几个初始化命令字及操作命令字?试说明它们的格式、功能及各自的寻址 特点 7.一个中断系统中有一个主片8259A和三个从片8259A。从片8259A分别接在主片 8259A的IR2、IR3和IR6上。主片8259A的IMR置成01010000B,各从片的IMR的所 有位都清0。除接在IR3上的那块8259A外,其他8259A都按全嵌套方式工作,而接在IR3 上的那块8259A的最高优先级是IR5,试按优先级顺序列出未被屏蔽的中断请求线,最高优 先级在前。若主片的最高优先级为IR3的话,请重新列出。 8请给下面的8259A初始化程序段加上注释,并具体说明各初始化命令字的含义。 MOV AL, 13H 10V DX, 50H OUT DX, AL INC DX MOV AL, 08H OUT DX, AL MOV AL, OBH OUT DX, AL 9.简要解释下列名词术语的含义 (1)中断(2)中断向量、中断向量表(3)非屏蔽中断、可屏蔽中断(4)断点 10.中断类型码为14H的中断向量存放在内存哪4个字节单元中?若这4个字节单元 的内容从低地址到高地址依次为10H、20H、30H、40H,则相应的中断服务程序入口地址是 什么? 11.下面是PC机为某外部中断源设置中断向量的程序段 PUSH ES MOV AX, 0 MOV ES. AX CLD MOV AX. 2000H STOSW MOV AX 1000H STOSW 试指出该外部中断的类型码是多少?该程序段为它设置的中断向量是什么? 12.某80x86微机系统的外部可屏蔽中断由一片8259A管理。现要求CPU采用中断方
优、缺点。 28. 解释虚拟存储器技术中“按需调页”存储管理方式。 29. 什么是 80x86 的实地址方式?它的寻址范围是多少? 30. 分别说明 80286 及 80386/80486 的虚拟地址与物理地址变换机制。 31. 什么叫虚拟 8086 方式? 习题八 1.80x86 实模式的中断可分为哪几类? 2.CPU 响应可屏蔽中断 INTR 与响应其他类型的中断相比,有何特点? 3.说明 INT n 指令中断的主要功能及特点。 4.8259A 的优先级管理方式和中断结束方式各有哪些 ? 5.说明 8259A 全嵌套方式与特殊全嵌套方式的区别。 6.8259A 有哪几个初始化命令字及操作命令字?试说明它们的格式、功能及各自的寻址 特点。 7. 一个中断系统中有一个主片 8259A 和三个从片 8259A。从片 8259A 分别接在主片 8259A 的 IR2 、IR3 和 IR6 上。主片 8259A 的 IMR 置成 01010000B,各从片的 IMR 的所 有位都清 0。除接在 IR3 上的那块 8259A 外,其他 8259A 都按全嵌套方式工作,而接在 IR3 上的那块 8259A 的最高优先级是 IR5,试按优先级顺序列出未被屏蔽的中断请求线,最高优 先级在前。若主片的最高优先级为 IR3 的话,请重新列出。 8. 请给下面的 8259A 初始化程序段加上注释,并具体说明各初始化命令字的含义。 MOV AL,13H MOV DX,50H OUT DX,AL INC DX MOV AL,08H OUT DX,AL MOV AL,0BH OUT DX,AL 9. 简要解释下列名词术语的含义: (1) 中断 (2) 中断向量、中断向量表 (3) 非屏蔽中断、可屏蔽中断 (4) 断点 10. 中断类型码为 14H 的中断向量存放在内存哪 4 个字节单元中? 若这 4 个字节单元 的内容从低地址到高地址依次为 10H、20H、30H、40H,则相应的中断服务程序入口地址是 什么? 11.下面是 PC 机为某外部中断源设置中断向量的程序段 : PUSH ES MOV AX, 0 MOV ES, AX CLD MOV AX, 2000H STOSW MOV AX, 1000H STOSW POP ES 试指出该外部中断的类型码是多少? 该程序段为它设置的中断向量是什么? 12. 某 80x86 微机系统的外部可屏蔽中断由一片 8259A 管理。现要求 CPU 采用中断方
式把内存从首址AREA开始的长100个字节的数据块输出到端口地址为40H的外设接口上。 设中断类型码为OAH外设接口产生的中断请求信号接至8259A的IR7引脚。试编写完成上 述功能的中断服务及相应的主程序段,并画出简要的硬件连接图 习题九 1.并行通信的主要特点是什么? 2.指出并行接口电路的主要内部寄存器及外部接口信号。 3.简述“握手”信号在并行接口中的作用 4.简述8255A的组成及工作方式。8255A的三个端口在使用时有何差别 5.8255A的方式0和方式1的主要区别是什么?方式2的特点是什么? 6.试说明8255A在方式1输入和输出时的具体工作过程 7.指出8255A“方式选择控制字”及“端口C按位置1置0控制字”的功能及格式。 8.用“端口C按位置1置0控制字”将8255A的PC6位置“1”,PC4位置“0”,8255A 的端口地址为COH、CIH、C2H、C3H 9.用“方式选择控制字”设定8255A的端口A工作于方式0,并作为输入口;端口B 工作方式1,并作为输出口。8255A的端口地址同上题。 10.了解8255A状态字的格式及含义。 11.利用可编程并行接口片8255A实现直流电机转动控制的接口电路如图14.22所示 当直流电机的V1端加+5V电压(由8255A输出PA0=1控制)、V2端加0V电压(由8255A输 出PAl=0控制)时,电机正向转动;反之,逆向转动。编程实现使电机正向转动8秒后反 向转动4秒,周而复始,重复进行。设系统中有延迟时间为1秒的延迟子程序 Delay I可供 调用。8255A的端口地址为DOH、D2H、D4H、D6H。 要求:写出实现上述功能的8255A初始化程序及有关控制程序,并加简要注释 12.分别读入接于8255A端口A的开关状态KA0~KA7和接于端口B的开关状态 KB0~KB7,将二者求和后从端口C送出。 要求:①画出连线简图:②编写8255A的初始化程序及有关控制程序,并加简要注 释(8255A的端口地址为DOH~D3H 13.一个交通灯微机控制模拟实验接口如图1423所示,其中接于并行接口片8255A端 口C的PC0位的开关K用来模拟十字路口副道车辆通行情况(开关状态为“1”表示副道上 有车辆要通行):端口A的PA2、PA1、PA0位用来控制主道的红(R)、黄(Y)、绿(G)灯,端 口B的PB2、PBl、PB0位用来控制副道的红(R)、黄(Y、绿(G)灯。平时主道放行(绿灯亮), 副道禁止通行(红灯亮);当副道上有车辆要通过时(PC0端为“1”),主道交通灯由绿→黄( 迟5秒)→红(禁行),副道交通灯由红→绿(放行);副道放行20秒后,其交通灯由绿→黄(延 迟5秒)→红,然后主道放行;要求主道至少放行40秒 要求:①画出实现上述控制过程的程序流程框图;②编写825A的初始化程序及有 关控制程序,并加简要注释。(8255A的端口地址为DOH~D3H) 14.为了行人横过马路的方便与安全,在马路人行横道两端分别安装供行人按动的开关 (K1、K2)及行人可通行指示灯(L1、L2)。若无行人横过马路,则马路上绿灯亮,机动车正 常行驶;若有人要横过马路,则可按动开关KⅠ或K2,交通灯控制装置将马路上的交通灯由 绿→黄(延迟5秒)→红,机动车停车等待;此时,人行道两端的L1和L2灯亮,并发出某 频率的声响信号,以作盲人提示音;20秒后,L1和L2灯灭,马路上交通灯由红→绿,机 动车继续正常通行。试设计实现上述功能的微机控制接口模拟实验方案 要求:①选择适当的可编程接口电路(需要时,也可使用少量逻辑门电路),画出连线 简图:;②绘出实现上述控制过程的程序流程图(含初始化流程),不要求具体编程 15.利用可编程并行接口电路8255A及其他所需器件设计一个竞赛抢答器(模拟)实验
式把内存从首址 AREA 开始的长 100 个字节的数据块输出到端口地址为 40H 的外设接口上。 设中断类型码为 0AH,外设接口产生的中断请求信号接至 8259A 的 IR7 引脚。试编写完成上 述功能的中断服务及相应的主程序段,并画出简要的硬件连接图。 习题九 1. 并行通信的主要特点是什么? 2. 指出并行接口电路的主要内部寄存器及外部接口信号。 3. 简述“握手”信号在并行接口中的作用。 4. 简述 8255A 的组成及工作方式。8255A 的三个端口在使用时有何差别? 5. 8255A 的方式 0 和方式 1 的主要区别是什么?方式 2 的特点是什么? 6. 试说明 8255A 在方式 1 输入和输出时的具体工作过程。 7. 指出 8255A“方式选择控制字”及“端口 C 按位置 1/置 0 控制字”的功能及格式。 8. 用“端口 C 按位置 1/置 0 控制字”将 8255A 的 PC6 位置“1”,PC4 位置“0”,8255A 的端口地址为 C0H、C1H、C2H、C3H。 9. 用“方式选择控制字”设定 8255A 的端口 A 工作于方式 0,并作为输入口;端口 B 工作方式 1,并作为输出口。8255A 的端口地址同上题。 10. 了解 8255A 状态字的格式及含义。 11. 利用可编程并行接口片 8255A 实现直流电机转动控制的接口电路如图 14.22 所示。 当直流电机的 V1 端加+5V 电压(由 8255A 输出 PA0=1 控制)、V2 端加 0V 电压(由 8255A 输 出 PA1=0 控制) 时,电机正向转动;反之,逆向转动。编程实现使电机正向转动 8 秒后反 向转动 4 秒,周而复始,重复进行。设系统中有延迟时间为 1 秒的延迟子程序 Delay1 可供 调用。8255A 的端口地址为 D0H、D2H、D4H、D6H。 要求:写出实现上述功能的 8255A 初始化程序及有关控制程序,并加简要注释。 12. 分别读入接于 8255A 端口 A 的开关状态 KA0~KA7 和接于端口 B 的开关状态 KB0~KB7,将二者求和后从端口 C 送出。 要求:① 画出连线简图;② 编写 8255A 的初始化程序及有关控制程序,并加简要注 释(8255A 的端口地址为 D0H~D3H)。 13. 一个交通灯微机控制模拟实验接口如图 14.23 所示,其中接于并行接口片 8255A 端 口 C 的 PC0 位的开关 K 用来模拟十字路口副道车辆通行情况(开关状态为“1”表示副道上 有车辆要通行);端口 A 的 PA2、PA1、PA0 位用来控制主道的红(R)、黄(Y)、绿(G) 灯,端 口 B 的 PB2、PB1、PB0 位用来控制副道的红(R)、黄(Y)、绿(G) 灯。平时主道放行(绿灯亮), 副道禁止通行(红灯亮);当副道上有车辆要通过时(PC0 端为“1”),主道交通灯由绿→黄(延 迟 5 秒)→红(禁行),副道交通灯由红→绿(放行);副道放行 20 秒后,其交通灯由绿→黄(延 迟 5 秒)→红,然后主道放行;要求主道至少放行 40 秒。 要求:① 画出实现上述控制过程的程序流程框图;② 编写 8255A 的初始化程序及有 关控制程序,并加简要注释。(8255A 的端口地址为 D0H~D3H) 14. 为了行人横过马路的方便与安全,在马路人行横道两端分别安装供行人按动的开关 (K1、K2) 及行人可通行指示灯(L1、L2)。若无行人横过马路,则马路上绿灯亮,机动车正 常行驶;若有人要横过马路,则可按动开关 K1 或 K2,交通灯控制装置将马路上的交通灯由 绿→黄(延迟 5 秒)→红,机动车停车等待;此时,人行道两端的 L1 和 L2 灯亮,并发出某一 频率的声响信号,以作盲人提示音;20 秒后,L1 和 L2 灯灭,马路上交通灯由红→绿,机 动车继续正常通行。试设计实现上述功能的微机控制接口模拟实验方案。 要求:① 选择适当的可编程接口电路(需要时,也可使用少量逻辑门电路),画出连线 简图; ② 绘出实现上述控制过程的程序流程图(含初始化流程),不要求具体编程。 15. 利用可编程并行接口电路 8255A 及其他所需器件设计一个竞赛抢答器(模拟) 实验