7. 8253内部的3个计数器可用 6 种不同的工作模式工作,其中 方式3 可作方波发生器使用,若要求输出完全对称的方波,则需计数值为 偶数 。 8. SP寄存器中存放的是 堆栈 段偏移地址。 9. (BX)=1000H,(DS)=2000H,(21000H)=3000H,(23000H)=4000H,
则 XCHG BX,[BX] 执行完后
(BX)= 3000 H ([BX])= 1000 H(一个字的内容) (21000H)= 1000 H(一个字的内容)
二、选择题 (每题1分,共10分)
1. 从8086CPU的内部结构上看,其是由哪两部分组成。 ( D )
A 控制器和20位物理地址加法器 B 运算器和总线接口 C 执行单元和总线接口单元 D 控制器和运算器 2. 存取周期是指 ( C ) A 存储器的读出时间 B 存储器的写入时间
C 存储器进行连续写操作所允许的最短时间间隔 D 存储器进行连续读和写操作所需时间间隔
3. 总线周期为T1、T2、T3、T4,若要增加等待状态TW,它应插在( C )之后 A) T1 B) T2 C) T3 D) T4
4. 在PC/XT中,若AX=9305H,BX=6279H,执行ADD BX,AX指令后接着执行INT0指令,则会 ( B )
A 进入INT0中断服务子程序 B 执行INT0后面的指令 C 死机 D 显示器显示OVERFLOW 5. 与外存储器相比,内存储器的特点是 ( C )
A 容量大、速度快 B 容量大、速度慢 C 容量小、速度快 D 容量小、速度慢
6.采用级联方式使用2片8259中断控制器,可使它的硬中断源最多扩大到( D )。
A) 64个 B) 32个 C) 16个 D) 15个 7. CPU内部的中断允许标志位IF的作用是( A )。
A) 禁止CPU响应可屏蔽中断 B) 禁止中断源向CPU发中断请求 C) 禁止CPU响应DMA操作 D) 禁止CPU响应非屏蔽中断 8. 假设V1和V2是用DW定义的变量,下列指令中正确的是 ( A )。
A) MOV V1,20H B) MOV V1,V2 C) MOV AL,V1 D) MOV 2000H,V2
9. 已知中断类型号为0BH,则其中断服务程序入口地址存放在中断矢量表中的地址是( D )。
A) CS:000BH B) 0000:000BH C) CS:002CH D) 0000:002CH 10. 8253初始化时,其计数初值应送入 ( B )。
A) 控制寄存器端口 B) 相应计数器端口
C) 仅计数器0的端口 D) 公用的计数初值寄存器
三、简答题:(每题6分,共24分)
1. 伪指令的功能是什么?
第 26 页 共 67 页
答:伪指令是在汇编程序对源程序汇编期间由汇编程序处理的操作,它们可以完成如处理器选择、定义程序模式、定义数据、分配存储区、指示程序结束等功能。总之,伪指令主要是指导汇编过程。
3.8255A有那几种工作方式?简述各自特点?
答:8255A共有三种工作方式,分别为方式0、方式1和方式2。
方式0是一种基本输入输出的工作方式,只能用于无条件传送和查询传送。 方式1是一种选通输入输出方式,设置专用的中断请求和联络信号线。 方式2的PA口为双向选通输入/输出。
1.为什么DMA方式的传输速率比中断方式更高?
答: 主要有以下几个原因:
① DMA方式实现数据块的传输,而中断方式按字或字节传输; ② DMA方式利用专用的接口电路直接与存储器进行高速传输,而不经过CPU,
中断方式要通过CPU的执行传送指令来完成;
③ DMA方式不必进行保护现场之类的一系列额外操作。
4. 8086有哪几种中断方式?它们在中断响应和处理过程中最主要的区别是什么?什么是中断向量?
答:分为软件中断和硬件中断两大类。软件中断是由指令执行所引起的中断,主要有INT中断、除法错中断、溢出中断、单步中断等。硬件中断是外部请求所引起的中断,有两条外部请求输入线.一个是NMI(屏蔽中断),另一个是INTR(可屏蔽中断)。
最主要的区别是获取相应的中断类型码的方式不同。 中断向量:中断服务程序的入口地址。
四、程序分析题:(每题6分,共24分)
1. 程序段(本题5分)
CMP JGE NEG L: MOV
AX,0 L AX BX,AX
功能是:____________________ 答案(本题6分) AX的绝对值送BX
2.现有(DS)=2000H, (BX)=0100H, (SI)=0002H, (20100)=12H, (20101)=34H, (20102)=56H, (20103)=78H, (21200)=2AH, (21201)=4CH, (21202)=B7H,
第 27 页 共 67 页
(21203)=65H, 下列指令执行后填入AX寄存器的内容: MOV AX, 1200H ; (AX)= ① MOV AX,BX ; (AX)= ② MOV AX,[1200H] ; (AX)= ③ MOV AX, [BX] ; (AX)= ④ MOV AX, 1100[BX] ; (AX)= ⑤ MOV AX, [BX][SI] ; (AX)= ⑥ 答:
①1200H ②0100H ③4C2AH ④3412H ⑤4C2AH ⑥77856H
3.执行以下程序后,DH内容在堆栈中的偏移地址是 1FFFH 。
MOV SP,2000H MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI SHL DX,1 TEST AX,DX PUSH DX HLT
4. 已知有程序段如下:
MOV AL,35H MOV DL,AL AND DL,0FH AND AL,0F0H MOV CL,4 SHR AL,CL MOV BL,10 MUL BL
ADD AL,DL
执行之后,AL等于多少?该程序段完成了什么功能?
答:程序段执行后AL=23H。该程序段实现了将AL中的1个组合BCD码转换为十六进制数并存回AL中的功能。
五、综合应用题:(22分)
第 28 页 共 67 页
1. 图1所示用8片2114构成的4K×8的存储器,与8位的一微处理器相连。试求:
(1) 每一组芯片组的地址范围、地址线数目(5分) (2) 4KBRAM的寻址范围。 (5分)
图1
答:(1)芯片组的寻址范围为1024B;占用地址线数目10根,即为A0~A9。 (2)4KBRAM的寻址范围分别是 0000H~03FFH 4000H~43FFH 8000H~83FFH C000H~C3FFH
2. 补充完整下列的源程序,程序功能是将数据35、-27、-13、6、-47、52、9、-3中的正数放入以BUFFER为首址的数据缓冲区中。(12分)
DATA SEGMENT BLOCK DB 35,-27,-13,6,-47,52,9,-3 COUNT EQU $-BLOCK BUFFER DB COUNT DUP(?) DATA ENDS STACK SEGMENT PARA STACK‘STACK’ DW 40 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK BEGIN: MOV AX,DATA MOV DS,AX
答案: MOV ES,AX ;需用STOS串操作指令 MOV CX,COUNT
第 29 页 共 67 页
LEA SI,BLOCK LEA DI,BUFFER CLD AGAIN: LODSB TEST AL,80H JS GO STOSB GO: LOOP AGAIN MOV AH,4CH INT 21H CODE ENDS END BEGIN
;源数据区指针 ;正数存放区指针 ;自动增量
;取源数据,并修改SI ;取符号位,不影响AL ;符号位=1,是负数,不存 ;存正数并修改DI
;退出循环,返回DOS
第7套
一、填空题:(每空1分,共20分)
1. 8086CPU内部结构中,BIU是指 总线接口单元 ,EU是指 执行单元 。
2. 如果DS=6100H,则当前数据段的起始地址为__61000H_____,末地址为__70FFFH_____。 3. 串行通信可以分为两种类型,一种叫 同步通信 ,另一种叫 异步通信 。
4. 伪指令中定义字节变量的是___DB________。 5. 随机存储器RAM包括 静态RAM (SRAM) 和 动态RAM (DRAM) 两类。 6. 设(SP)=0100H,(SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是 200FEH 。 7. 位于芯片内部的总线叫 内部总线 , 外部 总线用来连接计算机系统的各个主要部件。 8. (AX)=4F08H,(CF)=0,(CL)=4,则 ROR AX,CL指令执行完后,(AX)= 84F0 H,
(CF)= 1 。 9.ORG 1000H
X DB 12H Y DW X Z DD Y
(DS)=3800H, (BX)=1000H, (SI)=0002H 求下列指令执行完后指定寄存器的内容 MOV AX, [1000H] ; (AX)= 0012 H MOV AX, [BX+SI]; (AX)= 0110 H LEA DX,Y; (DX)= 1001 H 10. 8086CPU是一个16位的微处理器,具有 16 位数据总线, 20 位地址总线,可寻址空间为 1MB 。
第 30 页 共 67 页