《微机原理与接口技术》2006-2007考试试题
微机原理 课程自测题(120分钟) 考试日期 年 月 日
一、单选题
( ) 1. 8086CPU在执行MOV AL,[BX]指令的总线周期内,若BX存放的内容为1011H,则和A0的状态是 。
A. 0,0 B. 0,1 C. 1,0 D. 1,1
( )2. 设x=-46,y=117,则[x-y]补和[x+y]补分别等于 。
A. D2H和75H B. 5DH和47H C. 2EH和7lH D. 47H和71H
( )3. 8086CPU在进行无符号数比较时,应根据 标志位来判别。
A. CF和OF B. CF和PF C. CF和ZF D. ZF和OF
( )4. 执行下列程序后,(AL)= 。
MOV AL,92H
SUB AL,7lH
DAS
A. 21 B. 11 C. 21H D. 11H
( )5. 下列指令中正确的是 。
A. MOV AX [SI] [DI] B. MOV BYTE PTR〔BX〕,1000
C. PB8 EQU DS:[BP+8] D. MOV BX,OFFSET [SI]
( )6. 在PC/XT中,NMI中断的中断矢量在中断矢量表中的位置 。
A.是由程序指定的 B.是由DOS自动分配的
C.固定在08H开始的4个字节中 D.固定在中断矢量表的表首
( )7. 在8086中,(BX)=8282H,且题中指令已在队列中,则执行INC [BX]指令需要的总线周期数为 。
A.0 B.1 C.2 D.3
( )8. 微机系统中若用4片8259A构成主、从两级中断控制逻辑,接至CPU的可屏蔽中断请求线INTR上,最多可扩展为 级外部硬中断。
A. 32 B. 29 C. 28 D. 24
( )9. 当存储器读写速度较慢时,需产生一个READY信号以实现与CPU的同步,CPU将在总线周期的 时候采样该信号。
A. T2下降沿 B. T3下降沿 C. T2上升沿 D. T3上升沿
( )10. 8086中, 组寄存器都可以用来实现对存储器的寻址。
A. AX,SI,DI,BX B. BP,BX,CX,DX
C. SI,DI,BP,BX D. BX,CX,SI,DI
二、多选题
( )1. 下列属于8086的BIU组成部分的有______________。
A.通用寄存器组 B. 总线控制逻辑 C. ALU D. 物理地址加法器
( )2. 若需将数据段中的源串传送到附加段的目的串,可用的指令有______________。
A. MOV B. MOVS C. SCAS D. LODS和STOS
( )3. 执行时可能改变IP值的指令有_________________。
A. 调用及返回指令 B. 中断及返回指令 C. 转移指令 D. 串操作指令
( )4. 下列指令中,_________________的源操作数采用的是直接寻址。
A. MOV AL,[23H] B. MOV DX,AX
C. MOV AL,0FFH D. IN AL,23H
( )5. CPU与存储芯片的连线方式将影响____________________。
A. 存取速度 B. 地址分配 C. 功耗 D. 地址重叠度
( )6. 在CPU与外设之间设计接口电路的目的主要有____________________。
A. 解决驱动能力问题 B. 控制数据传送速度
C. 完成数据形式转换 D. 负责CPU与外设的联络
( )7. 8255A的B口设置为方式1输出,其引脚收到一个负脉冲说明 _________。
A. CPU已将一个数据写到端口B B. 外设已将数据由端口B取走
C. 请求CPU送下一个数据 D. INTRB引脚上的中断请求已被CPU响应
( )8. 8086/8088 CPU响应硬中断NMI和INTR时,相同的条件是 ____________。
A. 允许中断 B. 当前指令执行结束
C. CPU工作在最大组态下 D. 不处于DMA操作期间
( )9. 下列各类存储器中,掉电后内容不丢失的是 ____________。
A. 掩膜ROM B. EPROM C. DRAM D. SRAM
( )10.可以实现在数据段中保留10H个字节单元的指令有 ____________。
A. DW 08H DUP(?) B. DB 10H DUP(?)
C. DB 8 DUP(2 DUP(?)) D. DD 4 DUP(?)
已知(AL)=0101110lB,执行指令NEG AL后再执行CBW,(AX)= 。
在动态存储器2164的再生周期中,只需要 地址,所以在和这两个信号中,只有 变为低电平。
过程可重入是指 ,用 传递参数过程才可实现重入。
若 (AL)=01001001B,执行 ADD AL,AL指令后,再执行 DAA命令,则 (AL)= ,(CF)= ,(AF)= 。
已知指令序列为:
MOV AX,0FFBDH
MOV BX,12F8H
IDIV BL
此指令序列执行后,(AX)= ,(BX)= 。
微型计算机中,CPU重复进行的基本操作是: 、 和 。
若(CS)=4200H时,物理转移地址为4A230H,当CS的内容被设定为7900H时,物理转移地址为 。
8259A工作在8086模式,中断向量字节ICW2=70H,若在IR3处有一中断请求信号,这时它的中断向量号为 ,该中断的服务程序入口地址保存在内存地址为 H至 H的 个单元中。
四、程序阅读
1.阅读下列程序,写出程序执行后数据段BUF开始的10个内存单元中的内容。
DATA SEGMENT
BUF DB 08H,12H,34H,56H,78H,9AH,0BCH,0DEH,0F0H,0FFH
KEY DB 78H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA
START: MOV AX,DATA
MOV DS,AX
MOV ES,AX
CLD
LEA DI,BUF
MOV CL,[DI]
XOR CH,CH
INC DI
MOV AL,KEY
REPNE SCASB
JNE DONE
DEC BUF
MOV SI,DI
DEC DI
REP MOVSB
DONE: MOV AH,4CH
INT 21H
CODE ENDS
END START
执行结果:BUF DB 、 、 、 、 、 、 、 、 、
2.在内存的NUM单元中有一个字节的带符号二进制数(补码表示),下列程序是将其对应的十进制数输出到显示器上。请对程序中的三处错误进行修正,并在空白处填上适当的语句。
DATA SEGMENT
NUM DB ?
BUFFER DB 10 DUP(?)
DATA ENDS
STACK SEGMENT PARA STACK ‘STACK’
DB 100H DUP(?)
STACK EVDS
CODE SEGMENT
①
START: MOV AX,DATA
MOV ES,AX
MOV DS,DATA
MOV CL,NUM
LEA DL,BUFFER
②
MOV AL,0DH
STOSB
MOV AL,0AH
STOSB
MOV AL,CL
OR AL,AL
JS PLUS
③
MOV AL,‘-’
JMP GOON
PLUS: MOV AL,‘+’
GOON: STOSB
MOV BL,64H
CALL CHANGE
MOV BL,0AH
CALL CHANGE
MOV AL,30H
ADD AL,CL
STOSB
MOV AL,‘$’
STOSB
LEA DX,BUFPER
MOV AH,9
INC 21H ;输出十进制
MOV AH,4CH
INT 21H
CHANGE PROC NEAR
MOV DL,0
AGAIN: SUB CL,BL
JC DOWN
INC DL
JMP AGAIN
DOWN: ④
MOV AL,30H
ADD AL,DL
STOSB
⑤
CHANGE ENDP
CODE END
END START
五、存储系统分析与设计
已知RAM芯片和地址译码器的引脚如题五图所示,试回答如下问题:
(1)若要求构成一个8K×8的RAM阵列,需几片这样的芯片?设RAM阵列组占用起始地址为El000H的连续地址空间,试写出每块RAM芯片的地址空间。
(2)若采用全地址译码方式译码,试画出存储器系统电路连接图;
(3)试编程:将55H写满每个芯片,而后再逐个单元读出做比较,若有错则CL=FFH,正确则CL=77H。
六、综合应用
已知某一12位A/D转换器的引脚及工作时序如题六(1)图所示。其中,模拟信号通过VA脚输入,START正脉冲可启动A/D变换,启动后ADC进人忙()状态,A/D变换结束后变高,OE脉冲控制从D0 ~ D11读取变换好的数据。
3 《微机原理与接口技术》2006-2007考试试题
现用该A/D转换器、8255及8253构成如题六(2)图所示的数据采集系统:8255的A口和B口用于读转换结果,PC0输人转换结束信号,PC6 用于控制A/D启动,PC5 用于控制读出A/D转换结果,而PC7则控制发光二极管显示。8253用于控制采样频率。
(1)写出8255、8253各端口地址;
(2)编制8255的初始化程序;
(3)现要求通过8255控制连续采样7次,取平均值存人BX,并与FF0H比较,如超限则点亮发光二极管报警,编写该数据采集及处理程序;
(4)若使用8253定时控制每10秒完成上述采样一次,则还要做哪些工作?
“微机系统原理与接口技术”综合测试题二答案
一、单选题
1. B 2. B 3. C 4. C 5. D 6. C 7. C 8. B 9. B 10. C
简析:
1. 该指令对数据段中的奇地址(1011H)单元操作。
2.该段程序代码完成两个组合BCD码的减法运算。
5.A中指令少了分隔两个操作数的“,”;B中“1000”的值已超过一个字节可表示的范围;C中EQU后应是常数。
7.该指令需要1个存储器读周期和1个存储器写周期。
二、多选题
1. B D 2. A B D 3. A B C 4. A D 5. B D 6. A B C D
7. B C 8. B D 9. A B 10. A B C D
三、填空题
0FFA3H
行,
一个过程在没执行完时又被调用,堆栈
10011000B,0,1
0308H,12F8H
取指令,分析指令,执行指令
81230H
简析:段内偏移地址= 物理地址-段基址*16=4A230H-42000H=8230H,则(CS)=7900H时,物理地址=79000H+8230H=81230H。
73H,1CC,1CF,4
简析:ICW2中记录了8259A的8级中断对应的中断类型号的高5位,中断类型号的低3位由中断引脚编号确定,所以IR3脚对应的中断类型号为73H,中断服务程序的入口地址=中断类型号*4=73H*4=1CCH。
四、程序阅读
1.程序执行后BUF内容为:
07H,12H,34H,56H,9AH,0BCH,0DEH,0F0H.0F0H,0FFH
此程序的功能是:BUF单元中存放计数值“08H”,则程序将从BUF+1开始的8个单元中查找关键字78H,若找到则BUF单元计数值减1,且后面8-n四个单元的内容依次前移1字节,n为78H的位置指示,本题中n=4。
2.
(1)错误语句:第12行 MOV DS,DATA 改正:MOV DS,AX
第22行 JS PLUS JNS PLUS
倒数第2行 CODE END CODE ENDS
(2)需补充的语句: ①ASSUME DS:DATA,SS:STACK,CS:CODE,ES:DATA
②CLD
③NEG CL
④ADD CL,BL
⑤RET
五、存储系统分析与设计
(1)题五图中所示RAM芯片有12根地址线和4根数据线,因此一片这样的RAM芯片其存储容量为212*4bit=4K*4bit,若需构成8K*8的RAM阵列,共需(8K*8)/(4K*4)=4片。这4片RAM芯片应分成2个芯片组,每个芯片组中RAM芯片的地址线A11 ~ A0、读写控制线和片选控制线都连在一起,因此每组中的RAM芯片占用的地址空间完全一样,只是分别提供高4位和低4位的数据,这两个芯片组的地址空间分别为:①组E1000H ~ E1FFFH和②组E2000H ~ E2FFFH。
(2)全译码系统的电路连接可以如下题五图(答案)所示。图中4个芯片的控制线和A11 ~ A0地址线是连接在一起的。
(3)一种可能的填写内存的程序代码如下:
MOV AX,0El00H
MOV DS,AX ;给数据段、附加数据段寄存器赋初值
MOV ES,AX
MOV DI,0
CLD
MOV CX,2000H ;设置循环计数器赋初值
MOV AL,55H
REP STOSB ;向DI所指的内存单元中填写“55H”
MOV DI,0
MOV CX,2000H
REPZ SCASB ;扫描并比较
JNZ NEXT ;如有不等于55H的单元,转到NEXT处理
4 《微机原理与接口技术》2006-2007考试试题
MOV CL,77H ;正确
JMP EXIT
NEXT: MOV CL,0FFH ;出错
EXIT: HLT
六、综合应用
(1)由题六图中74LS138芯片的连接方法可以看出:
8255的端口地址为:200H-203H;
8253的端口地址为;204H-207H;
(2)8255初始化程序如下:
INI8255: MOV DX,203H ;取8255控制口地址
MOV AL,10010011B ;方式控制字:A、B口工作在方式0输入
OUT DX,AL ;PC3-PC0输入,PC7-PC4输出
MOV AL,00001110B ;PC7复位,发光二极管灭
OUT DX,AL
MOV AL,00001100B ;PC6复位,启动脉冲初态为低电平
OUT DX,AL
MOV AL.00001010B ;PC5复位,OE脉冲初态为低电平
OUT DX.AL
(3)一种可能的采集程序如下:
AD: MOV CX,7 ;控制LOOP循环次数:一共取7个数
MOV BX,0 ;求和计数器清零
STARTAD: MOV DX,203H ;取8255控制口地址
MOV AL,0000110lB ;PC6=1,产生启动脉冲
OUT DX,AL
MOV AL,00001100B ;PC6=0
OUT DX,AL
MOV DX,202H ;读PC0判断是否转换结束
WAIT: IN AL,DX
TEST AL,0lH
JZ WAIT ;PC0=0,继续查询等待
MOV DX,203H ;PC0=1,准备读数
MOV AL,00001011B ;PC5=l,输出OE正脉冲
OUT DX,AL
CALL DELAY ;延时等待数据稳定
MOV DX,201H ;读B口获取高4位数据
IN AL,DX
MOV AH,AL
MOV DX.200H ;读A口获取低8位数据
MOV AL,DX
MOV AL,00001010B ;PC5=0,读数结束
OUT DX,AL
ADD BX.AX ;求和
LOOP STARTAD
MOV DX,0
MOV AX,BX
MOV BX,7
DIV BX ;求7次采样结果的平均值
CMP AX,0FF0H
JA NEXT ;超限报警
EXIT: RET
NEXT: MOV DX,203H ;取8255控制口地址
MOV AL,0FH ;PC7=1,发光二极管亮
OUT DX,AL
JMP EXIT
(4)为使用8253进行定时数据采集和处理,还应该做以下几件事情:初始化8253以产生定时中断请求信号;编写定时采集中断处理程序;填写中断向量表,以保证中断时能正确进人定时采集中断处理程序。
①8253初始化代码:注意因定时时间较长,8253中的几个计数器串连使用。
INI8253:MOV DX,207H ;取8253控制字端口地址
MOV AL,00110100B ;计数器0工作在方式2(分频器),二进
OUT DX,AL ; 制计数,可读写16位计数值
MOV DX,204H ;向计数器0写计数初值
MOV AX,l0000 ;计数初值,定时lms =(1/10MHz)*10000
OUT DX,AL ;写计数初值低字节
MOV AL,AH
OUT DX,AL ;写计数初值高宇节
MOV DX,207H ;取8253控制字端口地址
MOV AL,01110100B ;计数器1工作在方式2,同计数器0
OUT DX,AL
MOV DX,205H ;向计数器1写计数初值
MOV AX,1000 ;计数初值1000(定时1s = 1ms*1000)
OUT DX,AL ;写计数初值低字节
MOV AL,AH
OUT DX,AL ;写计数初值高字节
MOV DX,207H ;取8253控制字端口地址
MOV AL,10010100B ;计数器2工作在方式2,只写低字节
OUT DX,AL
MOV DX,206H ;向计数器2写计数初值
MOV AL,10 ;计数初值10(定时10s = 1s *10)
OUT DX,AL
②定时采集中断处理程序:
INT_A /D PROC FAR
……
;同(3)中的数据采集代码,注意将RET语句改为RETI语句
……
INT_A/D ENDP
③填写中断向量表:从图中可以看出,该8253使用了ISA总线上的IRQ10中断引脚,该中断对应的中断类型号为72H,中断向量存放地址为001C8H~001CBH
PUSH ES
MOV AX,0
MOV ES,AX ;因使用串操作语句,设置目的段段基址为0
CLD ;执行串操作语句时,DI值自动增加
MOV DI,01C8HH ;目的段偏移量为01C8H
MOV AX,OFFSET INT_A/D ;存放中断服务程序入口的偏移量
STOSW
MOV AX,SEG INT_A/D ;存放中断服务程序入口的段基址
STOSW
POP ES
文章评论(0条评论)
登录后参与讨论