微机原理期末题(哈工程)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五、编程题(10分)
41.数据段中以BUF为首地址的区域中存放着字节数据12H, 34H, 56H, 78H, 9AH,0, 0BCH, 0DEH, 0FFH, 统计其中正数,负数,零的个数送ZHENG、FU和ZERO单元中,要求编写完整的汇编语言程序(10分)
六、应用题(共45分,每题15分)
42.查询方式打印机接口如图所示,图中的8255A的B口作为输出打印数据口,工作于方式0,PC5引脚作为打印机的数据选通信号STB,由它产生一个负脉冲,将数据线D7-D0上的数据送入打印机,PC0引脚接收打印机的忙状态信号,当打印机在打印某字符时,忙状态信号BUSY 为1。现要求打印的字符存于缓冲区BUF中,共有800个字符。设8255A的端口地址为800H--803H。利用查询BUSY信号,编写CPU与打印机之间数据交换的程序段(包括8255A 初始化)。
43.计数器/定时器8253,振荡器(频率为2MHZ)振荡器的脉冲输出端接通道0的计数输入端CLK0,设8253的端口地址为200H---203H
请回答:
(1)该电路中一个通道的最大定时时间是多少?如何计算?
(2)若要8253的OUT端,能产生周期为1秒的连续方波,该如何解决?
(3)写出实现功能的8253初始化程序
44.在对存储芯片进行译码寻址时,如果只有部分高位地址参与,这种译码方法被称为部分译码。现有EPROM芯片2732(4KX8位),以及3-8译码器74LS138,各种门电路若干,要求在8088CPU上扩展容量为16KX8 EPROM内存,要求采用部分译码,不使用高位地址线A19、A18、A15,选取其中连续、好用又不冲突的一组地址,要求首地址为20000H。请回答
1)2732的芯片地址线、数据线位数是多少?
2)组成16KX8需要2732芯片多少片?
3)写出各芯片的地址范围。
4)画出存储扩展图(要求画出地址线、数据线及控制线的连接)
五、编程题(10分)
41.DA TA SEGMENT
BUF DB 12H, 34H, 56H, 78H, 45H, 9AH,0, 0BCH, 0DEH, 0FFH 1分
COUNT EQU $-BUF 1分
ZHENG DB ?
FU DB ?
ZERO DB ?
DA TA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DA TA 1分
START: MOV AX, DATA
MOV DS, AX 1分
MOV CX, COUNT
MOV BX, 0
MOV SI, 0
MOV DI, 0 1分
AGAIN: CMP WORD PTR [BX+BUF], 0
JLE LORE 1分
INC DI
JMP NEXT 1分
LORE: JL NEXT 1分
INC SI
NEXT: ADD BX, 2
LOOP AGAIN 1分
MOV AX , COUNT
SUB AX, SI
SUB AX , DI
MOV ZHENG, DI
MOV FU, AX
MOV ZERO, SI 1分
MOV AH, 4CH
INT 21H
CODE ENDS
END START
六、应用题(共45分,每题15分)
42. BUF DB ‘XXXXXXX (1)
MOV DX,803H
MOV AL,1xxx0001B 2分
OUT DX,AL
MOV AL,0BH 2分
OUT DX,AL
MOV CX,800
MOV SI,OFFSET BUF 2分
LOP:MOV DX,802H 1分
IN AL,DX
TEST AL,01H 2分
JNZ LOP 1分
MOV AL,[SI]
MOV DX,801H
OUT DX,AL 1分
MOV AL,0AH
MOV DX,803H
OUT DX,AL 1分
MOV AL,0BH
OUT DX,AL
INC SI
LOOP LOP 2分
HLT
43.(1)输入脉冲周期=0.5Μs,一个通道最大计数为65536=216,所以最大定时时间=0.5μS×65536=65.536ms 3分
(2)可以将8253的通道串联使用,各通道的计数:通道0=2000,通道1=1000 2分(3)MOV AL,00100101B
MOV DX,203H
OUT DX,AL 3分
MOV AL,20H
MOV DX,200H
OUT DX,AL 2分
MOV AL ,01100101B
MOV DX,203H
OUT DX,AL 3分
MOV DX,201H
MOV AL,10H
OUT DX,AL 2分
44.(1)地址线12根,数据线8根;2分(2)片;2分(3)1# 20000H~20FFFH
2# 21000H~21FFFH 3# 22000H~22FFFH 4# 23000H~23FFFH 4分4)7分
27. 数据段中以BUF为首地址的区域中存放着字节数据12H, 34H, 56H, 78H, 9AH,0, 0BCH, 0DEH, 0FFH, 统计其中正数,负数,零的个数送ZHENG、FU和ZERO单元中,要求编写完整的汇编语言程序。
五、应用题(每题15分,共45分)
28. CPU通过8255同开关K0~K3和LED显示器的接口见下图,开关设置的二进制信息由B口输入,经程序转换成对应的七段LED段码后,通过A口输出,由七段LED显示开关二进制的状态值,试编写其控制程序(设8255的端口地址为80H~83H)。
注:若B口读入的值为0000,则LED显示器将显示0;以此类推,若B口读入的值为1111,则LED显示器将显示F。
29. 计数器/定时器8253,振荡器(频率为2MHZ)振荡器的脉冲输出端接通道0的计数输入端CLK0,设8253的端口地址为200H---203H Array
请回答:
(1)该电路中一个通道的最大定时时间是多少?如何计算?
(2)若要8253的OUT端,能产生周期为1秒的连续方波,该如何解决?
(3)写出实现功能的8253初始化程序
30. 在对存储芯片进行译码寻址时,如果只有部分高位地址参与,这种译码方法被称为部分译码。现有EPROM芯片2732(4KX8位),以及3-8译码器74LS138,各种门电路若干,要求在8088CPU上扩展容量为16KX8 EPROM内存,要求采用部分译码,不使用高位地址线A19、A18、A15,选取其中连续、好用又不冲突的一组地址,要求首地址为20000H。请回答
1)2732的芯片地址线、数据线位数是多少?
2)组成16KX8需要2732芯片多少片?
3)写出各芯片的地址范围。
4)画出存储扩展图(要求画出地址线、数据线及控制线的连接)27.DATA SEGMENT 1分
BUF DB 12H, 34H, 56H, 78H, 45H, 9AH,0, 0BCH, 0DEH, 0FFH 1分
COUNT EQU $-BUF 1分
ZHENG DB ?