2011微机原理考试题答案2(正考)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

答题时间:120分钟

一、填空题(每小题2分,共30分)

1.15的8位二进制补码为00001111B ,-15的8位二进制补码为11110001B 。2.已知a,b为十六进制数,a=372FH,b=5A1FH,则:

a+b= 914EH ;CF= 0 ,OF= 1 ,PF= 1 ,AF= 1 ,SF= 1 ,ZF= 0 。

3.已知某存储单元的逻辑地址为625AH:234DH,则该存储单元的物理地址为648EDH 。

4.指令MOV AL,[BP][SI]的源操作数是基址变址寻址方式。

5.设有下列伪指令:

START DB 1, 2, 3, 4,’ABCD’

DB 3 DUP(?, 1)

BUF DB 10 DUP(?), 15

L EQU BUF-START

则 L= 0EH 。

6.一般微处理器内部由ALU、工作寄存器、控制器和I/O控制逻辑四部分组成。7.8086 CPU对I/O编址采用的是独立编址方式;访问I/O最多使用16 条地址线,若要从地址为80H的端口读入字节数据,则应该使用的指令为IN AL, 80H 。8.8086CPU内部的EU部件的主要功能为执行指令规定的操作\ 从指令队列中获取指令并执行。

9.8086CPU的通用寄存器共8 个;分别为AX, BX, CX, DX, BP, DI, SI, SP 。10.内存按存储器性质分类通常分为ROM 和RAM 两类。

11.已知静态存储器芯片的容量是4K 4位,现欲利用该芯片构成A4000H~A7FFFH的内存,试问需要这样的芯片共8 片。

12.8086 CPU上电复位后,执行第一条指令的物理地址是FFFF0H 。13.DEBUG中U命令的功能为反汇编。

14.用程序查询法实现输入/输出,最大的优点是实现简单,硬件设计简化,适用于CPU 的工作任务比较单一时,中、低速I/O设备与CPU的信息交换。

15.若某中断源的中断类型号为44H,则该中断源对应的中断向量存储在向量表中的首地址为110H 。

二、简答题(每小题4分,共20分)

1.8086 对存储器的管理为什么采用分段的方法?20位的物理地址是如何形成的?

答:8086用于存储器选址的内部寄存器都是16位的,而其地址线是20位的,无法直接进行管理;为扩大寻址范围,采用分段的管理方式,把真正的物理地址用段地址和偏移量表示,每一部分都不超过64k。

当CPU访问内存时,在地址加法器中将段寄存器的内容(段基址)自动左移4位二进制,再与16位偏移地址相加,形成20位物理地址。(或:PA = 段地址*16 + 偏移地址)

2.设SS= 1050H,SP=0008H,AX=1234H,当执行指令:PUSH AX后,寄存器SS、SP、

AX内容分别是什么?画图说明1234H在内存中的存放情况。

答:SS=1050H

SP= 0006H

AX=1234H

10506H

10507H

3.指出下列指令的错误

(1)ADD 15H,BX 立即数不能做目的操作数

(2)MOV CS,AX CS不能做目的操作数

(3)MOV AX,[SI][DI] 源操作数寻址方式有误/无变址变址寻址方式(4)MOV BYTE PTR[BX], 1000 源、目的操作数长度不匹配/ 源超出8位数据范围

4.简述CPU响应外部可屏蔽中断的过程。

答:在IF=1(即开中断)情况下,从INTR端加入中断请求信号开始,到进入中断服务程序为止所经过的一系列操作,称为可屏蔽中断的响应过程包括以下一系列操作:

(1)等待当前指令结束,进入中断响应周期;

(2)从微处理器外部的中断控制逻辑获得中断类型号;

(3)将当前的PSW、CS、和IP内容一次压入堆栈;

(4)将PSW中的IF位和TF位置零;

(5)把中断服务子程序的入口地址置入IP和CS。

至此完成外部可屏蔽中断的响应过程,开始进入中断服务程序。

5.简述一个标准的循环程序应由哪几部分组成?

答:(1)循环准备部分: 初始化部分, 建立指针、设置循环计数初值及其他变量初值等(2)循环工作部分:循环体,完成程序功能

(3)调整部分:更新数据,修改操作数的地址及循环变量值,为下一次循环作准备(4)循环出口判定:循环程序中至少要有一个出口判定,保证循环程序能够终止。

【(5)】结果处理

三、程序分析题(每题5分,共10分)

1.分析下述程序段实现的功能,并说明执行后,AX、BX和CX的值分别是多少?

MOV AX, 0

MOV BX, 1

MOV CX, 100

L1:ADD AX,BX

INC BX

DEC CX

JNZ L1

答:程序实现计算1+2+….+100的值

AX = 5050

BX = 101

CX = 0

2.下面程序的功能是统计从BLOCK开始的字节型数组中奇数的个数,共有15个元素,并将统计结果存在了内存单元SUM中。试阅读程序,在处将漏掉的指令补充完整。

DA TA SEGMENT

BLOCK DB 15 DUP(?)

SUM DB 00H

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX, DA TA

MOV DS, AX

MOV SI, OFFSET BLOCK

MOV CX, 15

CON:MOV AL, [SI]

SHR AL, 1

JNC NEXT

INC SUM

NEXT:INC SI

相关文档
最新文档