2017年微机原理答案

作者BerenCamlost

说明:

  1. 此答案为作者自己做的,然后和4位大佬简单的对过答案后得到的结果
  2. 本试卷不是我们的试卷……我们的课程是《微机原理与接口技术》,这个试卷的名字是《微机原理与应用
  3. 发现问题麻烦进快发送到评论区,谢谢


一、单项选择(每题一分,共13分)

1~5:ADBCB
6~10:CACBB
11~15:DAC

二、填空题

  1. 146;-110;92
  2. 总线接口单元;EU
  3. 16;6;3;
  4. 07A4H
  5. 地址总线、数据总线、控制总线
  6. 寄存器操作数;端口操作数;变量
  7. 基址寻址;寄存器寻址;存储器(数据段/内存)
  8. 段属性;偏移属性;类型属性
  9. 8;2
  10. 60H;20H
  11. 06H;43H
  12. 存放外部设备送来的中断请求信号;设置中断请求的屏蔽信号;相应的外部中断被响应并且执行了

三、阅读程序填空

3.1

SP=02E8H;
SP=02E6H;
BX=BF5FH;
DS:[0100H]=BF5FH;	SP=02E8H;

3.2

AX=6B98H,	OF=0;
DX=035AH,	CF=0;
乘二

3.3

AX=4443H;
BX=0104H
CX=000CH
DH=04H
DL=08H

3.4

L3;
L1;

3.5

9130H
0
ADC

MOV CX, 100H;
JNZ L1;
JS L2;
JMP L3;
LOOP NEXT;

5.1 连线图,略

5.2

IO口和储存器的选择信号,当M/IO’为高电平时,从存储器中读取数据,为低电平时从IO口中读取数据

5.3 程序设计

此题难点在于,如何控制其翻转100次

CODE SEGMENT
	ASSUME CS:CODE
START:	MOV AL, 10001000B	;8255A控制字,A口方式0输出,C高位输入
		OUT 46H, AL
		MOV AL, 00100111B	;8253控制字,通道0,只写高位,方式3,BCD计数
		OUT 66H, AL
		MOV AL, 20H			;计数初值:2000
		OUT 60H, AL
		
		MOV CX, 100			;CX计数100次
		MOV BL, 10101010B	;初始状态判断
	L3:	IN AL, 44H			;读C口数据
		AND AL, 80H			;取第7位数据,其余为0
		JZ L1
		MOV AL, 10101010B	;如果PC7为高,红灯亮,绿灯灭
		OUT 40H, AL
		JMP L2
	L1: MVO AL, 01010101B	;如果PC7为低,红灯灭,绿灯亮
		OUT 40H, AL
		JMP L2
	L2: CMP AL, BL			;判断红绿灯当前的状态和上一状态
		JE L3				;如果相等,再次读C口数据
		MOV BL, AL			;如果不等,BL切换为当前状态,CX减一
		LOOP L3
	
	MOV AH, 4CH
	INT 21H
CODE ENDS
END START

6

CODE SEGMENT
	ASSUME CS:CODE
START:
	;8259A初始化
	MOV AL, 00010011B	;ICW1
	OUT 20H, AL
	MOV AL, 01001000B	;ICW2
	OUT 21H, AL
	MOV AL, 00000001B	;ICW4
	OUT 21H, AL
	MOV AL, 11011111B	;OCW1,屏蔽除IR2之外的所有中断请求
	OUT 21H, AL
	
	;8253初始化
	MOV AL, 01100111B	;通道1,读写高8位,方式3,BCD码计数
	OUT 43H, AL
	MOV AL, 10H			;计数初值1000
	OUT 41H, AL

	;设置中断向量
	MOV BX, 0
	MOV DI, 0128H	;中断向量首地址为00000128H
	MVO AX, SEG TIMER	;取中断服务子程序基址
	MOV BX:[DI+2], AX
	MOV AX, OFFSET TIMER;取中断服务子程序偏移地址
	MOV BX:[DI], AX

	MOV AL, 4CH
	INT 21H

TIMER	PROC FAR
		---
		IRET
TIMER	ENDP

CODE ENDS
END START
  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值