微机原理试卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
考试时间:120分钟姓名:班级:学号:任课老师:
一、填空题(每空1分,共35分)
1.组成一个计算机或微型计算机系统,必须包括和;所谓硬件是指计算机
的。
2.组成计算机的四大功能部件的运算器和控制器都是由数字电路组成的,合起来称
为。
3.一个微处理器所能执行的所有全部指令,就是这个微处理器的。
4.二进制数1101.101B对应的十进制数为;-33的补码为。
5.十进制数49以分离BCD码形式定义到FLBCD 字单元,正确的伪指令为。
6.微处理器数据总线的条数决定CPU和存储器或一次能交换数据的位数;地址码
的位数决定了。
7.在计算机系统中,微处理器对存储器单元和I/O端口的编址方法有统一编址和独立编址两种
方法,8086/8088CPU对存储器单元和I/O端口的编址采用的是方法。当8086CPU 工作在最小方式时,用于区分访问存储器或I/O端口的控制信号为。
8.8086CPU内部的总线接口单元(BIU)的主要功能是。
9.8086CPU的标志寄存器(FLAG)中,用来反映ALU操作结果的状态的标志分别
为;若(AX)=9345H,则CPU执行:ADD AX,8219H指令后,PF= ,OF= ;执行:AND AX,8219H指令后,OF= 。
10.8088/8086汇编语言中语句的种类包括指令语句和。
11.设(BX)=637DH,(SI)=2A9BH,(DS)=3100H,(CS)=0200H,(3737DH)=098AH,则用BX和SI的基址变
址寻址方式产生的物理地址为;使用BX寄存器间接寻址方式的段内间接寻址方式所产生的转移目的地的物理地址为。
12.设DATWORD为字变量,若要从DATWORD字单元中取一个字节数给AL,则正确的指令语句
为。
13.主程序与子程序之间的参数传递方法有三种。
14.8086CPU字符串操作指令有MOVS和五种。
15.一旦定义了宏指令,在程序中就可以像使用普通指令一样使用宏指令,其调用格式
为。
16.如果堆栈的起始地址为2200:0000H,栈底为0100H,(SP)=00A8H,则在存入数据5678H,3AF2H
后,(SP)= 。
17.设(DX)=10111011B,(CL)=03H,CF=1,则CPU执行RCL DX,CL指令后,(DX)= 。
18.微处理器级总线经过总线形成电路后,形成了。
19.8086CPU 的RESET信号至少要保持4个时钟周期的电平才有效,该信号结束后,
(CS)= ,(IP)= 。
20.8086CPU的IO
M引脚输出高电平时,说明CPU正在访问。
/
21.若给某以8086CPU构成的微机系统中配置8KB的SRAM电路,SRAM芯片用Intel6264,则需6264
片。
22.在某I/O端口的地址译码当中,有3条地址线未参加译码,则有个重叠地址。
23.若有3片8259A级联工作,则能管理级外部可屏蔽中断。
24.在设计输入端口时,所选用的输入端口(输入缓冲器)芯片的输出端必须具有
功能。
二、判断下列语句语法是否正确。若正确,写出源操作数的寻址方式,若
不正确,请改正。
设DAT1为字型变量。(每小题1分,共10分)
1.SHR AX,3
2.IN AX,100H
3.DIV 100
4.MOV DX,LENGTH DAT1
5.MOV [BX]+12H,DAT1
6.JMP BX
7.ADD AX,DAT1
8.CALL [BX]
9.PUSH 1234H
10.BUFFER DW 'THIS'
三、简答题(每题3分,共15分)
1.8086 CPU 有哪两种工作模式?主要区别是什么?
2.简述8086CPU的外部可屏蔽中断的响应过程。
3.为什么地址总线是单向的,而数据总线是双向的?
4.简述8086CPU有多少条地址线?8086CPU能寻址的存储器地址空间有多大?8086CPU有多
少条数据线?通过数据线能传输的有符号整数的范围为多少?并画出8086CPU组成的微机
系统中的存储器系统组成原理框图。
5.主机与外设之间进行数据输入/输出的基本方式有哪几种?并分别说明每种方法的优缺点。
四、下面这段程序完成的功能为从键盘输入一串字符,将其送到KEYBUF1缓冲区,
并显示这组字符串。请在划线处填入必要指令或伪指令,使以下程序完整。(6分)
STACK SEGMENT STACK
DB 256 DUP(?)
STACK ENDS
DATA SEGMENT
STRING1 DB ˊDO YOU WANT TO INPUT STRING?(Y/N):$ˊ CRLF DB 0DH,0AH,ˊ$ˊ
STRING2 DB ˊPLEASE INPUT STRING.ˊ,0DH,0AH,ˊ$ˊ KEYBUF1 DB 20H
DB ?
KEYBUF2 DB 20H DUP(?)
CODE SEGMENT
START:MOV AX,DATA
MOV DS,AX
MOV AH,09H
LEA DX,STRING1
INT 21H
MOV AH,01H
INT 21H
CMP AL,ˊYˊ
JE INPUT
CMP AL,ˊyˊ
INPUT:LEA DX,CRLF
MOV AH,09H
INT 21H
MOV AH,09H
MOV DX,OFFSET STRING2
INT 21H
MOV DX,OFFSET KEYBUF1
INT 21H
MOV AL,KEYBUF1+1
CBW
LEA SI,KEYBUF2
ADD SI,AX
MOV BYTE PTR[SI],ˊ$ˊ
MOV AH,09H