微机原理课堂练习三

练习三 汇编语言程序设计和输入输出

一、填空题(14分)
1.程序结构分为 、 、 和 四种。
2.主程序与子程序间传送参数的方法通常有_ _ _三种。
3.CPU与外设之间交换数据常采用 、 、 和 四种方式。
4.80X86系统最多可以处理 种不同类型的中断,每个中断都有唯一的编号,这就是 ,类型码为35H的中断源的中断服务程序的入口地址保存在存储器的地址为 。
二、判断改错题:(5分)正确的在题后空白处划“√”,错误的划“×”并说明理由
1.当8086CPU内标志寄存器中的IF=0时,意味着禁止CPU响应所有类型的中断。

2.8086CPU所有外部中断,仅INTR需申请中断的外设提供中断类型码。
3.一个外设最多含有控制端口和数据端口。
4.在8086/8088中,内中断源的级别均比外中断源级别高。
5.8086的中断向量表设置于00000H至003FFH范围内。
三、选择题:(16分)在下列每小题的四个备选答案中选出一个正确的答案,并将其字母标号填入括号内
1.采用存储单元与I/O端口统一编址时,CPU的数据传送指令( )。
A.可以访问端口与存储单元 B.只能访问I/O端口
C.既不能访问I/O端口又不能访问存储单元 D.只能访问存储单元
2.外设与内存之间传送数据的方式应采用( )。
A.无条件传送方式 B.查询传送方式 C.中断方式 D.DMA方式
3. 接口电路中的双向数据缓冲器,还兼有( )的作用。
A.驱动 B.驱动、隔离 C.锁存、驱动 D.隔离
4. 为提高CPU的工作效率。计算机与打印机之间的数据传送方式应采用( )。
A.查询 B.中断 C.DMA D.无条件传送
5. 采用微型计算机控制大屏幕LED显示器,其数据传送方式是( )。
A.无条件传送 B.中断传送
C.查询传送 D. DMA传送
6. 中断处理过程应包括( )。
A.请求、响应、服务 B. 请求、排队、服务、返回
C.请求、排队、响应、服务、返回 D.请求、响应、服务、返回
7. 8086/8088软中断INT n(n=10H-50H)的优先级排列原则是( )。
A.无优先级别 B.n值越小级别越高
C.随应用而定 D.n值越大级别越高
8.下述中断,优先权级别最高的中断是( )。
A.NMI B.INTR C.单步中断 D.INT n
9. 在8088中断系统中,CPU响应非屏蔽中断相当于执行( )。
A.INT O B.INT 1 C.INT 2 D.INT 4
10. 8088中断类型号为40H的中断服务程序入口地址存放在中断向量表中的起始地址是( )。
A. DS:0040H B. DS:0100H C. 0000:0100H D.0000:0040H
11.8259为可编程中断控制器,它可接中断源的个数及初始化时级别最高的为( )。
A.16,IR0 B.8,IR0 C.16,IR7 D.8,IR7
12. PC机采用2个8259A 级联,CPU的可屏蔽中断可扩展为( )。
A. 64级 B. 32级 C.16级 D.15级
13.设8259A已被编程为ICW2=08H,当一个外设由8259的IRQ4输入端提出中断请求时,它的中断向量地址是( )。
A. 00000CH B.00020H C.00026H D.00030H
14. 关于中断控制器8259的功能,以下所述不正确的是( )。
A.它可以接受多个外设中断请求信号
B.它可选出当前优先级最高的中断请求信号
C.它可向CPU发中断请求信号且送中断类型号
D.它可向外设发中断回答信号
15. 在两片8259A级联的中断系统中,主片的IR2作为从片的中断请求,则初始化主、从片时,ICW3的数据格式分别是( )。
A.04H和02H B.40H和20H C.02H和04H D.20H和40H
16. 8259A 初始化编程时,是( )来识别和解释命令的。
a.分别对奇/偶端口写命令 b.写入规定格式数据 c.按一定顺序写命令 d.自动
A.a,b B.a,b,c C.c,d D.b,d

四、问答题(23分)

  1. CPU与外设数据传送有哪几种方式?各有什么特点?(4分)

2.什么叫做中断源?中断源有哪些?(4分)

3.什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?(3分)

4.什么是中断向量?中断向量表安排在内存什么区域?若对应中断类型码为47H的中断服务程序存放在2300H:3460H开始的区域中,则中断向量应如何存放?(4分)

  1. 某外部可屏蔽中断的类型码为12H,它的中断服务程序的入口地址为1000H:2000H,请将中断服务程序入口地址填在中断向量表中。(3分)

6.完成以下关于中断的问题:(5分)
1)8086/8088中断系统中,CPU响应可屏蔽中断的条件。
2)简述中断类型号、中断向量表及中断服务程序入口地址之间的关系。

五、读程题(18分)
1. DSEG SEGMENT
BLOCK DB 51, 30, 43, 107, 89, 90, 200, 197, 70, 64
COUNT − B L O C K R E S U L T D B 0 D S E G E N D S C O D E S E G M E N T A S S U M E C S : C O D E , D S : D S E G , S S : S T A C K M A I N : M O V A X , D S E G M O V D S , A X M O V S I , o f f s e t B L O C K M O V C X , C O U N T C O N : M O V A L , [ S I ] T E S T A L , 01 H J Z N E X T I N C R E S U R T N E X T : I N C S I L O O P C O N C O D E E N D S E N D M A I N 1 ) 程 序 完 成 的 操 作 是 ( ) ; 2 ) 程 序 执 行 后 , R E S U L T 单 元 中 的 内 容 为 ( ) ; 3 ) 程 序 中 -BLOCK RESULT DB 0 DSEG ENDS CODE SEGMENT ASSUME CS: CODE, DS: DSEG, SS: STACK MAIN: MOV AX, DSEG MOV DS, AX MOV SI, offset BLOCK MOV CX, COUNT CON: MOV AL, [ SI ] TEST AL , 01H JZ NEXT INC RESURT NEXT: INC SI LOOP CON CODE ENDS END MAIN 1) 程序完成的操作是 ( ); 2) 程序执行后,RESULT 单元中的内容为 ( ); 3) 程序中 BLOCKRESULTDB0DSEGENDSCODESEGMENTASSUMECS:CODE,DS:DSEG,SS:STACKMAINMOVAX,DSEGMOVDS,AXMOVSI,offsetBLOCKMOVCX,COUNTCON:MOVAL,[SI]TESTAL,01HJZNEXTINCRESURTNEXT:INCSILOOPCONCODEENDSENDMAIN12RESULT3的含义是( )。

2. DATA SEGMENT
AA DB 0A7H,76H,13H,9FH
BB DB 0C0H,15H,94H,71H
CC DB 5 DUP()
COUNT EQU 0004H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
LEA DI,AA
LEA SI,BB
AND AX,AX
MOV BX,OFFSET CC+4
MOV CX,COUNT
MU1: MOV AL,[DI+03H]
ADC AL,[SI+03H]
MOV [BX],AL
DEC DI
DEC SI
DEC BX
LOOP MU1
MOV AL,00H
RCL AL,1
MOV [BX],AL
CODE ENDS
END STATR
回答以下问题:
1)该程序完成的操作是( );
2)程序运行结束后,BX所指示地址单元的内容为( )。

3、 阅读下列程序:
DATA SEGMENT
DA1 DB 2,-3,-4,-5,34,-4,0,3,4,24
COUNT EQU $ -DAI
NUM DB?
DATA ENDS
COSEG SEGMENT
ASSUME CS: CODE,DS: DATA
START: MOV AX,DATA
MOV DS,AX
MOV SI,OFFSET DA1
MOV CX,COUNT-1
XOR BL,BL
EXCHG: MOV AL,[SI];
XOR AL,[SI+1]
TEST AL,80H
JE NEXT
INC BL
NEXT: INC SI
LOOP EXCHG
MOV NUM,BL
COSEG ENDS
END START
回答以下问题:1)程序执行后, NUM单元中的内容为 ( )
2)指令MOV SI ,OFFSET DA1可用指令( )替代。
六、编程题(24分)

  1. 已知在ARRAY数组中有100个带符号字数据,编写一个完整的8086汇编语言程序,统计出ARRAY数组数据中的正、负数的个数并存入NP、NN单元中。

  2. 已知在ARRAY数组中有80个无符号字节数据,编写一个完整的8086汇编语言程序,将ARRAY数组中的最大值放入MAX单元中。

  3. 若自STRING开始有一个字符串(以‘#’号作为字符串的结束标志),试编写一个确定此字符串长度(个数)的子程序,要求将结果放在NUMBER单元中。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值