微机原理与接口技术试题答案Word格式文档下载.docx
《微机原理与接口技术试题答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术试题答案Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
),(
DL
DH
).
3.若SS=3240H,SP=2000H,栈顶的实际地址为(34400H
4.指令MOVAX,[BX]的机器码为8BH,07H,指令
MOV[BX],AX的机器码为(89H
),(07H
).
5.8255A的工作方式有方式0功能为(基本输入输出),方式1功能为(
选通输入输出
),方式2功能为(
双向数据传送
6.执行指令PUSHAX有SP=(SP-2
),执行指令POPAX有
SP=(
SP+2
)
7.组合十进制加法调整指令DAA对寄存器(
AL
)中的值进行调整.
8.和指令SHLAL,1功能相同的指令是(
SALAL,1
9.8259A的初始化命令字应按(
顺序
)写入,操作命令字应按
(
需要
)写入.
10.2114为1024X4的RAM存储器芯片,组成8KB主存储器需要(16
)片2114.
二、选择题(20*1)
1、源的变址寄存器是(A)。
A)SI
B)DI
C)SP
D)BX
2、用来存放即将执行的指令的偏移地址的寄存器是(B)。
A)SP
B)IP
C)BP
D)CS
3、用来存放运行结果状态的寄存器为(C)操作。
B)SI
C)FLAGS
D)DX
4、微机中控制总线传送的是(D)。
A)存储器和I/O接口的地址码
B)微处理器向内存储器和I/O接口传送的命令信号
C)存储器和I/O设备向微处理器传送的状态信号
D)B和C
5.在下列指令的表示中,不正确的是(C)
A.MOV
AL,[BX+SI]
B.JMP
SHORT
DONI
C.DEC
100
D.MUL
CL
6.将DX的内容除以2,正确的指令是(C)
A.DIV
2
B.DIV
DX,2
C.SAR
DX,1
D.SHL
DX,1
7.若栈顶的物理地址是20100H,当执行完POPAX指令后,栈顶的物理地址是(A)。
A)20102H
B)20101H
C)20100H
D)20103H
8.下列指令中,源操作数的寻址方式中,(C)属于立即寻址,(B)属于寄存器寻址,(E)属于寄存器间接寻址,(A)属于直接寻址,(D)属于寄存器相对寻址。
A)MOVAX,[4000H]
B)MOV[BX],AX
C)SUBAX,2000H
D)MOV
AX,[SI+12H]
E)MOVCX,[BX]
F)MOV
AX,[SI+BX+10H]
9.下列指令中错误指令是(B
)、(E)和(F)。
A)MOVAX,DS
B)MOV
CS,1500H
C)MOVSI,BX
[3000H],AL
E)MOV[DI+32H],[1845H]
AL,1000H
10.指令LOOPNZ的循环结束条件是(D)。
A)CX=0且ZF=0
B)CX=0或ZF=0
C)CX=0且ZF=1
D)CX=0或ZF=1
11.语句DA1DB
2DUP(4,6),5汇编后,与该语句功能等同的语句是(C)。
A)DA1DB4,6,5
B)DA1DB
2,4,6,5
C)DA1DB4,6,4,6,5
D)DA1DB
4,6,5,4,6,5
12、对于语句Y
DW
10
DUP(0),则TYPEY为(A)、LENGTH
Y为(B),SIZEY为(C)。
A)2
B)10
C)20
D)4
14、8086/8088CPU的RD、M/IO引脚上为逻辑0时,意味着(C)操作。
A)读存储器
B)写存储器
C)读I/O端口
D)写I/O端口
4、Intel8284的作用是(B)
A)地址锁存
B)产生时钟
C)总线控制
D)数据驱动
16.以下存储器件,若存有数据,当掉电时,(B)存储器件不能保留原有数据?
A)磁芯存储器
B)RAM
C)ROM
17.可编程芯片8259的作用是(B)。
A.定时/计数
B.中断控制
C.并行输入输出
D.数/摸转换
三:
判断题(每题2分,共20分)
注:
正确在题前打√
错误在题前打
X
.
1.8086CPU和8088CPU的地址线的数量不2.一样.
X
3.8086控制线/BHE=H,地址线A0=H时,完成16位数据传送.X
4.16位机即指5.该机CPU的数据线为16条.
√
6.使用指7.令RET及IRET时,弹出堆栈的内容一样.
8.响应可屏蔽中断INTR的条件是IF=0.
9.指10.令MOVAX,CS:
[BX]是正确的指11.令.
12.8086CPU提供了256个中断类型号.
13.非组合十进制乘法调整指14.令AAD对积进行调整.
15.逻辑右移指16.令SHR和算术右移指17.令SAR功能一样.
18.若(AX)=7AF0H,使用指19.令CWD后,(DX)=FFFFH..
三、问答题(5*6)
3、模型机有哪些寄存器,以及作用?
(选择/填空)
答:
通用寄存器组:
可由用户灵活支配,用来存放参与运算的数据或地址信息。
地址寄存器:
专门用来存放地址信息的寄存器。
程序计数器:
它的作用是指明下一条指令在存储器中的地址。
指令寄存器:
用来存放当前正在执行的指令代码
指令译码器:
用来对指令代码进行分析、译码,根据指令译码的结果,输出相应的控制信号
4、8086CPU的内部结构由哪两部分组成,各组成部件又有哪些部件组成、功能是什么?
8086CPU内部结构由BIU\EU两部分组成.
(1)EU的组成和各组成部件功能如下:
算术逻辑运算单元:
用于8位/16位二进制算术和逻辑运算.
用来存放操作数或操作数的地址
标志寄存器:
用来存放反映CPU运算的状态特征和存放某些控制标志
数据暂存器:
协助ALU完成运算,暂存参加运算的数据
(2)BIU的组成和各组成部件功能
地址加法器:
用来形成20位物理地址
段寄存器:
用来存放段的基值
IP:
存放下一条指令的地址
指令队列缓冲器:
用来存放预取的指令
总线控制逻辑:
将内部总线和外部总线相连.
7、CPU在中断周期要完成哪些主要的操作?
CPU在中断周期要完成下列操作:
(1)关中断
(2)保留断点
(3)保护现场
(4)给出中断入口地址,转去相应的中断服务程序
(5)恢复现场
(6)开中断
(7)
返回
8、芯片8255有几个控制字?
各自功能如何?
若8255A控制字写入同一个控制端口如何区分不同的控制字?
芯片8255有2个控制字:
方式选择控制字和端口C置位/复位控制字。
功能如下:
方式选择控制字:
制定工作方式工作。
端口C置位/复位控制字:
通过对控制寄存器写入端口C置位/复位控制字来实现对其按位控制。
通过控制字D7作为特征位来区分不同的控制字。
四:
指令改错(每题2分,共20分)
1.MOV[2000],20H
MOVAL,20H
MOV[2000H],AL
2.MOV[DX],2000H
MOVBX,DX
MOV[BX],2000H
3.OUT300H,AL
MOVDX,300H
OUTDX,AL
4.PUSHAL
PUSHAX
5.DIV[BX]
DIVBYTEPTR[BX]
OR
DIVWORDPTR[BX]
五:
读程序并回答问题(每题8分,共16分)
1.程序1
DATASEGMENT
NUM1DB48H,41H,16H,28H
NUM2DB37H,22H,52H,84H
SUM
DB4DPU(?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
STARPROCFAR
PUSHDS
MOVAX,0
MOVAX,DATA
MOVDS,AX
LEASI,NUM1
LEADI,NUM2
LEABX,SUM
MOVCX,4
AG:
MOVAL,[SI]
ADDAL,[DI]
MOV[BX],AL
INCSI
INCDI
INCBX
DECCX
JNZAG
RET
STARENDP
CODEENDS
ENDSTAR
问:
执行程序后,SUM中的值为(7FH),(63H),(68H
),(ACH
2.程序2
BUF1DB0,1,2,3,4,5,6,7,8,9
BUF2DB?
COUNTEQU$-BUF
LEABX,BUF1
MOVCX,COUNT-1
MOVAL,[BX]
INCBX
CMPAL,[BX]
JAEBIG
BIG:
DECCX
MOVBUF2,AL
ENDSTAR
该程序执行后BUF2中的值为(
9
四、程序设计题(2*10)
1、编写一个汇编语言程序,要求从键盘输入一个小写字母,将其转换成大写字母在屏幕上显示出来。
DATA
SEGMENT
BUF
DB0DH,0AH,"
PLEASEINPUTACHAR:
$"
DATAENDS
STACK
SEGMENT
DB20DUP(?
STACKENDS
CODESEGMENT
ASSUME
DS:
DATA,CS:
CODE,SS:
STACK
BEGIN:
MOVAX,DATA
MOVDS,AX
LEADX,BUF
;
9号调用显示PLEASEINPUTACHAR:
MOVAH,9
INT21H
MOVAH,1;
1号调用,从键盘接收1字符
CMP
AL,61H
/41H
;
若比“a”/A小转PEND
JB
PEND
CMP
AL,7AH
/5BH
若比“z”/Z大转PEND
JAPEND
ADD/SUBAL,20H
如在“a”与“z”之间则减去20变为大写字符
MOVDL,AL
MOVAH,2
2号功能调用显示一个字符
PEND:
MOVAH,4CH;
程序结束运行,返回DOS
CODE
ENDS
END
BEGIN
2、已知芯片8253的端口地址为4F0H~4F3H,设计数器1工作在方式1,计数器初值为3060H,采用二进制计数,请设计实现上述功能的8253初始化程序。
8253控制字格式如下:
因为计数器初值为3060H,即为16位的,所以读/写格式为11
因此控制字为:
01110010=72
控制字:
MOV
AL,72H
OUT
4F3H,AL
低8位:
AL,60H
4F1H,AL
高8位:
AL,30H
六:
编程题(7分)
编一个完整的程序,数据段有10个符号的ASCII码值数据块BUF,若数据为0到9的ASCII码值,在屏上显示Y,否则显示N
解:
BUFDB10DUP(?
ASSUMECS:
NAINPROCFAR
PUSHDS
MOVAX,0
PUSHAX
MOVAX,DATA
MOVDS,AX
MOVCX,10
LEABX,BUF
CMPAL,30H
JLDISNO
CMPAL,39H
JGDISNO
MOVAH,02H
MOVDL,‘Y’
JMPNEXT
DISNO:
MOVDL,‘N’
NEXT:
INCCX
JNZAG
RET
MAINENDP
ENDMAIN
七:
接口编程(7分,仅编程序段)
8255A的A口,B口均工作于方式0,从A口输出数据30H,将B口输入的数据放入寄存器BL中.(注:
8255A口地址为60H到63H)
1000X01X
方式控制字=82H
MOVAL,82H
OUT63H,AL
MOVAL,30H
OUT60H,AL
INAL,61H
MOVBL,AL