Y=2A A<20
Y=A 20≤A<60Y=80 A≥60
4-15 试编写程序,要求比较数组BUFER中的3个16位符号数。根据比较结果,置FLAG标志,要求画出程序流程图。
(1)如果3个数都不相等,置FLAG为0。(2)如果3个数有两个相等,置FLAG为1。(3)如果3个数全相等,置FLAG为2。4-16 有程序段如下所示,请回答。(1) MOV AX,100 MOV CX,5
LOP: SUB AX,CX LOOP LOP HLT
该程序段执行后,AX=? CX=?
(2) PAS1 DB 0,1,2,3,4,5,6,7,8,9 PAS2 DB 5 DUP(?)
MOV CX,5 MOV BX,5 MOV SI,0
LOP: MOV AL,PAS1[BX+SI] MOV PAS2[SI],AL INC SI LOOP LOP HLT
该程序段执行后,PAS2数据区的数依次为( )。
4-17 请编写实现下述功能的程序:在以DATA为首地址的数据区中存有100个字符号数
,要求找出其中的最大数送MAX,最小的数送MIN。
4-18 已知有COUNT个字节数存放在以NUMBER为首地址的数据区中。编一个程序将其中的负数去除后将剩下的正数重新存放在以PLUS开始的数据区中。4-19 数组GRADE中存有200个学生某科考试成绩,要求编写程序。
(1)统计各分数段的人数,即要求统计90~100,80~89,70~79,60~69以及60以下的各有多少人。
(2)求出该门课程考试成绩的平均成绩是多少(小数省略),并放在LTEV单元中。
4-20 编写如下程序:利用DOS功能调用,完成将键盘输入的小写字母转换为大写字母并输出显示,直到输入“*”字符为止,停止输出。
4-21 以PKK为首地址的数据区中,有一个由100个符号组成的字符串,其中至少有2个
以上的字符“#”,请分别编写实现下列功能的程序:
(1)统计字符串中字符“#”出现的次数,并送入CUT单元中。(2)查找字符串中最后出现符号“#”的位置与PKK的距离。
4-22 在DATA单元开始的区中存放一英文句子(大、小写字母构成),编一个程序,将
句子中的各个英文字母按字典顺序排列。
4-23 分析下列程序,回答:(1)指出程序完成的功能。(2)画出主程序调用子程序
时,堆栈的变化示意图。(3)该子程序的设计有什么缺点,如何修改? SOURCE DB〖KG1*2〗 … DST DB 100 DUP(?)
LEA AX,SOURCE PUSH AX
LEA AX,DST PUSH AX
MOV AX,100 PUSH AX
CALL FAR PTR REMOV(断点CS:IP) …
REMOV PROC FAR MOV BP,SP
MOV CX,[BP+4] MOV DI,[BP+6] MOV SI,[BP+8] CLD
REP MOVSB RET
REMOV ENDP
4-24 编一个子程序,利用XLAT指令(查表法)把十六进制数转换成ASCII码。假设ASCII码存放在以DATA1为首地址的数据区中,对应的十六进制数放在以DATA2为首地址的数据区中,转换结果送到以DATA3为首地址的数据区中。
4-25 利用DOS系统功能调用从键盘上输入10个1位无符号数,求出其中最大和最小数并在显示器上输出显示。
第五章 中断系统及中断控制器
5-1 I/O接口的主要功能是什么?在8086/8088系统中,I/O端口地址采用哪种编址方式?
5-2 一般的I/O接口电路安排有哪三类寄存器?它们的各自作用是什么?
5-3 简述CPU(主机)与外设进行数据交换的几种常用方式。说明各自应用的场合。
5-4 在I/O接口电路中为什么常需要用锁存器和三态缓冲器?5-5 为什么外设与计算机的连接不能直接挂到总线上?
5-6 在8086最小模式系统中,设计一个16位输入端口,其端口起始地址为220H。 5-7 在8086最小模式系统中,以一片8259A构成中断控制逻辑。设其地址范围为300H~303H,试画出系统连接图。
5-8 CPU与外设采用查询方式传送数据的过程是怎样的?现有一输入设备,其数据端口的地
址为FFE0H,并用端口FFE2H提供状态,当其D
0位为1时表明输入数据准
备好。请编写采用查询方式进行数据传送的程序段,要求从该设备读取100个字节并输入到从2000:2000H开始的内存中,注意在程序中加上注释。
5-9 某字符输出设备,其数据端口和状态端口的地址均为80H,在读取状态时,当标志位D7为0时表明该设备闲。请编写采用查询方式进行数据传送的程序段,要求将存放于符号地址ADDR处的一串字符(以$为结束标志)输出给该设备,注意在程序中加上注释。
5-10 什么是中断源?为什么要设立中断优先权?什么是中断嵌套?何种情况下程序可能发生中断嵌套?
5-11 什么叫中断系统?中断系统有哪些功能?
5-12 CPU响应可屏蔽中断需要哪些条件?为什么需要这些条件?
5-13 什么是中断向量表?在8086/8088的中断向量表中有多少个不同的中断向量?若已知中断类型号,举例说明如何在中断向量表中查找中断向量。
5-14 在8086系统中,类型号为16H的中断源,其中断处理程序入口地址应安排在存储器的哪些单元里?
5-15 假设中断类型号4H的中断处理程序的起始地址为INTRUPT,,试写出主