1、 1 微机原理与接口技术 试题集 部分 参考答案 一、 填空题 1、 16, 20 2、 8, 20 3、 7, 7 4、 U,V,超级 5、高速缓冲存储器( Cache) 6、内存,外设 7、硬件,软件 8、内存,外 设 9、执行单元( EU) ,总线接口单元( BIU) 10、 6, 4 11、分段,数据扩展段,堆栈段 12、 可 执行性指令,指示性指令 13、机器指令代码,不产生机器指令代码 14、分支程序,循环程序 15、顺序程序,子程序 16、分支程序,子程序 17、循环程序,子程序 18、双极型(晶体三极管),单极型( MOS) 19、只 读存储器 ( ROM) ,随机存取存储器
2、(RAM) 20、静态存储器( SRAM) ,动态存储器 (DRAM) 21、字扩展、字位扩展 22、位扩展,字扩展 23、位扩展,字位扩展 24、全译码法,线译码法 25、线译码法,部分译码法 26、部分译码法,全译码法 27、 8k,数据,指令 28、保护虚拟地址, 虚拟 8086 29、实地址,保护虚拟地址 30、实地址, 虚拟 8086 31、 处理器管理,外部设备管理 32、外部设备管理,文件管理 33、存储器管理,文件管理 34、 7230H 35、非屏蔽中断,可屏蔽中断 36、低 ,总线控制器( 8288) 37、高速缓存( Cache) ,静态存储器( SRAM) ,动态存储器
3、( SRAM) 38、程序查询方式, DMA 方式 39、初始化 40、 13, 8 41、 21234H 42、统一编址,单独编址 2 43、 IERT,CS,IP、 状态标志寄存器 44、地址总线,数据总线,控制总线 45、读操作,写操作 46、 T3,若干个时钟 47、 6, 4 48、 低、总线控制器 49、 12AAH 、 0BBCCH 50、将 DX 寄存器的内容逻辑右移 4 位和将 AX 寄存器的内容循环右移 4位 51、 0D36AH 52、 21234H 53,CS,IP 54、偶地址,奇地址 55、 1024, 00000H,FFFFFH 56、 13FFH,17FFH,1
4、FFFH,2FFFH 57、统一编址,单独编址,单独编址 58、 256, 65536 59、程序查询方式,程序中断控制方式, DMA 方式 60、 DX,AL 61、低,低,高 62、低,高,低 63、入口地址, 4,偏移地址,段地址 64、 INTA,2,2 65、 0000H, 03FFH, 1024 66、运算器、控制器、存储器和输入输出设备 67、 CF、 OF、 ZF、 PF、 AF、 SF 68、 CPU 对存储器或 I/O 端口完成一次读 /写操作所需的时间 69、 CPU 执行到 T3 状态的下降沿时, CPU 检测到 READY 引脚的信号为“ 0”时 70、总线控制器(
5、8288) 71、终止所有操作,进入复位周期 72、总线设置准备、启动读控制信号、实现读数据、恢复读前阶段等。 73、 INT n 指令向 CPU 先提供中断类型号,再由中断类型号自动地引导到中断服务程序 74、单工、半双工、全双工 75、定时和控制逻辑、命令控制逻辑、优先级控制逻辑和地址 /数据缓冲器 76、复位、工作方式字、工作命令字、复位 77、 ICW1、 ICW2、 ICW3、 ICW4,其中 ICW1、 ICW2 78、 3, 6, 01110111B 79、 16 80、 MODEM 81、外存(辅助存储器) 82、存储容量 83、内部、外部,外部、内部 84、 85、单极型(晶
6、体三极管)、双极型( MOS 型) 86、需要定时对动态存储器芯片进行刷新操作 3 87、高速缓存( Cache) 88、统一编址、单独编址 90、数据、地址、控制 91、 32、 8、 32、 8 92、 0000H 1FFFH 93、 0000H、 0000H、 FFFFH、 FFFF0H 94、开中断( IF=1)、当前正在 执行指令的指令已执行完毕时、 0000H、 03FFH、中断服务程序的入口地址 95、 HOLD、 HLDA 96、复位 97、 1 98、中断请求 99、 INTR 100、 17 101、工作方式控制字、置位 /复位控制字 102、 6 103、 8 104、行
7、扫描、行列扫描 105、发送器发送 106、 无条件 传送 方式、有条件程序查询方式、程序中断控制方式、 DMA 方式、 107、程序中断控制方式 108、存储器、 外设 109、 4、 6 110、 314H、 315H、 316H 111、 255、 0 112、 16、 16、 16、 16、 8 113、 EEPROM 114、指令、伪指令、寄存器名 115、控制 116、直接寻址 117、系统总线 118、 800 119、可屏蔽中断 120、周期交替 121、减 1 计数器 122、分辨率(位数)、线性度 123、总线控制器( 8288)、提高总线驱动能力 124、代码段寄存器(
8、CS) ,程序指针计数器( IP) 125、 179B8H 126、 4、 5 127、 CPU 常用和正在运行的程序和数据、 CPU 不常用的程序和数据 128、小、快 129、无条件传送方式、程序查询传送方式、程序中断控制方式 二、单项 选择题 4 1、 C 2、 A 3、 B 4、 A 5、 C 6、 A 7、 C 8、 B 9、 B 10、 A 11、 B 12、 C 13、 D 14、 C 15、 D 16、 D 17、 C 18、 C 19、 A 20、 A 21、 C 22、 D 23、 D 24、 C 25、 B 26、 B 27、 A 28、 C 29、 B 30、 D 31
9、、 D 32、 A 33、 C 34、 A 35、 B 36、 C 37、 B 38、 B 39、B 40、 B 41、 A 42、 D 43、 B 44、 A 45、 C 46、 A 47、 C 48、 B 49、 A 50、 D 51、 A 52、 B 53、 B 54、 A 55、 D 56、 A 57、 C 58、 B 59、 D 60、 C 61、 B 62、 C 63、 B 64、 A 65、 C,H 66、 D 67、 C 68、 D 69、 D 70、 A 71、 B 72、 B 73、 A 74、 E 75、 C 76、 A 77、 B 78、 B 79、B 80、 C 81
10、、 A 82、 B 83、 D 84、 C 85、 C 86 、 A 87、 D 88、 D 89、 D 90、 D 91、C 92、 C 93、 C 94、 A 95、 D 96、 C 97、 D 98、 B 99、 C 100、 B 101、 A 102、 C 103、D 104、 D 105、 C 106、 E 107、 B 108、 C 109、 B 110、 A 111、 D 112、 C 113、B 114、 D 115、 C 116、 A 117、 B 118、 C 119、 D 120、 D 121、 D 122、 B 123、A 124、 C 125、 D 126、 D 12
11、7、 D 128、 C 129、 C 130、 B 131、 C 132、 B 133、D 134、 A 135、 C 136、 D 137、 A 138、 C 139、 D 140、 D 141、 C 142、 B 143、A 144、 B 145、 C 146、 B 147、 A 148、 B 148、 C 149、 C 150、 D 151、 A 152、 C 153、 A 154、 D 155、 A 156、 B 157、 A 158、 D 159、 A 160、 D 161、 D 162、 C 163、D 164、 D 165、 B 166、 A 167、 D 168、 D 169、
12、 B 170、 D 171、 B 172、 B 173、 B 174、 B 175、 A 176、 D 177、 C 178、 A 179、 A 180、 D 181、 D 182、 C 183、 B 184、C 185、 D 186、 A 187、 B 188、 A 189、 C 190、 D 191、 D 192、 D 193、 B 194、 A 195、 D 196、 B 三、指出下列指令书写的错误原因,并用正确的程序段(一条或多条指令)改正。 解答: (1) 错误:源操作数与目的操 作数类型不一致,应改为: MOV BL,AL 或者是: MOV BX,AX (2) 错误:端口地址大于
13、255 时,只能采用间接寻址方式, 应改为: MOV DX,356H OUT DX,AL (3) 错误:立即数不能直接传送给段寄存器,应改为: MOV AX,100H MOV DS,AX (4) 错误:堆栈操作指令只能对字操作,不能对字节操作。 应改为: POP BX (5) 错误:乘法指令 MUL 的一 个操作数时隐含的,应改为: MUL BX (6) 错误: MOV 指令的两个操作数不能同时来自内存, 应该为: MOV AX,BX MOV SI,AX (7) 错误:当移位操作指令中的移位数大于 1 时,移位数应放在寄存器 CL 中。 应该为: MOV CL,5 5 SHR BX,CL 四、
14、指令阅读和问答题 1 题 答:( 1)直接寻址方式, EA=1234H , PA=11234H (2) 直接寻址方式, EA=0100H, PA=10100H (3) 相 对寄存器寻址方式, EA=0140H, PA=10140H ( 4)相对基址加变址寻址方式, EA=0195H, PA=20195H 2 题 答: ( 1)本程序实现的功能是将 20H 端口的数据进行若干次累加,累加的次数由 30H 端口的数据大小来决定。 ( 2)结果在累加器 AX 中 ( 3) START: IN AL, 20H MOV BL, AL IN AL, 30H MUL BL 五、 编程题 1 题 参考程序:
15、DATA SEGMENTXX DB X Y DB ? DATA ENDS STACK SEGMENT STACK DB 100DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS: DATA,SS:STACK START: MOV AX, DATAMOV DS,AX MOV AL,XX CMP AL,0 JGE BIGR MOV AL,0FFH JMP JUS2 BIGE: JG JUS1 MOV AL,0 JMP JUS2 JUS1: MOV AL,1 JUS2: MOV YY,AL MOV,AH,4CH INT 21H CODE ENDS END
16、 START 2、题 DATA SEGMENT6 ARRAY DW D1,D2,D3, .,D100 COUNT EQU $-ARRAY SUM DW ? DATA ENDS STACK SEGMENT STACK DB 100DUP(?) STACK ENDS CODE SEGMENT ASSSUME CS:CODE,DS:DATA,SS:STACK BIGIN: MOV AX,DATA MOV DS,AX MOV AX,0000H MOV CX,COUNT MOV BX,OFFSET ARRAY LOP: ADD AX, BX INC BX INC BX LOOP LOP1 MOV SUM
17、, AX MOV HA, 4CH INT 21H CODE ENDS END BIGIN 3、 题 参考程序: Data segmeng Array1 dw 30 dup(?) Mxa dw? Data ends Stack segment Dw 200dw(?) Stack ends Code segment Assume cs:code,ds:data,ss:stack Main proc far Start: push ds Sub ax,ax Push ax Mov ax,data Mov ds,ax Sub ax,ax Mov bx,ax Mov ax,array1bx Mov cx
18、,29 7 Loop1: add bx,2 Cmp ax, array1bx Jge next Mov ax, array1bx Next: dec cx Loop loop1 Mov max,ax Ret Main endp Code ends End start 4、 题 参考程序: Data segment Array1 db 250 dup(?) Count dw ? Data ends Stack segment stack Dw 300 dup(?) Stack ends Code segenmt Assume cs:code,ds:data,ss:stack Main proc
19、far Start: push dx Sbu ax,ax Push ax Mov ax,data Mov ds,ax Xor ax,ax Mov cx,ax Mov bx,ax Mov si,ax Loop1: inc bx Add ax,bx Cmp ax,1000 Jge exit Mov array1si,bx Inc cx Inc si Jmp loop1 Exit: Mov count,cx Ret Main endp Code ends 8 End start 5、 题 参考程序: DATA SEGMENT INPUT DB please input(az):$ INPUT DB
20、input error$ DATA ENDS Stack segment Dw 200dw(?) Stack ends Code segment Assume cs:code,ds:data,ss:stack Main proc far Start: push ds Sub ax,ax Push ax MOV AX,DATA MOV DS,AX MOV AH,09H MOV DX,SEG INPUT MOV DS,DX MOV DX,OFFSET INPUT INT 21H MOV AH,01H INT 21H CMP AL,61H JB LOP CMP AL,7AH JA LOP SUB A
21、L,20H MOV DL,AL MOV AH,02H INT 21H JMP EXEIT LOPT:MOV AH,09H MOV DX,SEG INPUT1 MOV DS,DX MOV DX,OFFSET INPUT1 INT 21H EXEIT:RET CODE ENDS END START9 6、题 参考程序: DATA SEGMENT INPUT DB please input N(09):$ LFB DB 0$, 1$, 8$, 7$, 64$,125$,216$,343$,512$,729$ N DB ? DATA ENDS Stack segment DB 100dw(?) Sta
22、ck ends Code segment Assume cs:code,ds:data,ss:stack Main proc far Start: push ds Sub ax,ax Push ax MOV AX,DATA MOV DS,AX MOV AH,09H MOV DX,OFFSET INPUT INT 21H MOV AH,01H INT 21H MOV AH,01H INT 21H MOV N,AL MOV AH,02H MOV DL,0AH INT 21H MOV DL,N AND DL,0FH MOV CL,2 SHL DL,CL MOV DH,00H LEA BX,LFB A
23、DD DX,BX MOV AH,09H MOV AX,SEG LUB MOV DS,AX INT 21H RET MIAN ENDP CODE ENDS END STRAT 10 7 题 参考程序: DATA SEGMENT X DW 1234H Y DW 2345H Z DW 3456H U DW ? DATA ENDS STACK SEGMENT STACK DB 100DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,DATA MOV DS,AX MOV AX,X CMP AX,0 JN
24、Z LOP1 JMP ZERO1 LOP1: MOV AX,Y CMP AX,0 JNZ LOP2 JMP ZERO2 LOP2: MOV AX,Z CMP AX,0 JNZ LOP3 JMP ZERO3 LOP3: MOV AX,X ADD AX,Y ADC,AX,Z MOV U,AX JMP EXEIT ZERO1: MOV Y,0 MOV Z,0 JMP EXEIT ZERO2: MOV X,0 MOV Z,0 JMP EXEIT ZERO3: MOV X,0 MOV Z,0 EXEIT: MOV AH,04CH INT 21H CODE ENDS END START 8、 题 参考程序: DATA SEGMENT INPUT DB please input (07):$ DATA ENDS STACK SEGMENT STACK