2010—2011学年第一学期 《微机原理》试卷(闭卷)
专业班级 姓 名 学 号 开课系室 电子信息工程系 考试日期 2011年1月7日
题 号 一 二 三 总分 得 分 阅卷人 说明:所有问题除特别指出外,均针对8086;
所有问题均可用自己的语言回答。
一、填空题(每空1分,共20分)
1.设机器字长为8位,最高位是符号位,则十进制数-23所对应的原码是 ,补码是 。
2.有一个十进制数17.25,它对应的二进制数为 ,压缩BCD码为 。
3.若当前堆栈指针SP指向2006H单元,则从堆栈中弹出2个字的内容后,SP应指向______ __。
4.8255芯片内部有3个 位的数据端口,其中A口有 种工作方式。 5.8259A芯片占 个端口地址,要想管理32级中断,至少需要 片8259A。 6.8086中断系统可处理 种不同的中断。
7.若8086 CPU引脚状态是M/IO=0,RD=0,WR=1,则此时执行的操作是 。
8.CPU跟外设之间通信时,传送的信息的类型主要包括 、 __ 和 。
9.8086的1MB地址空间可以分成许多逻辑段,每段容量最大可为 。 10.若定义 DAT DB ‘213.456’,则(DAT+5)单元存放的字节数据是 。 11.计算机中的指令一般由 和操作数两部分构成。
12.对于指令:MOV AH,23 GE 15H, 汇编结果为: MOV AH, 。 13.设计输入输出接口电路的原则是:输入要 ,输出要 。
二、简答题(共37分)
1.微型计算机由哪几部分组成?简述各部分功能。(4分)
第1页/共5页
2. CPU与外设之间的数据传送方式包括程序控制方式、中断方式和DMA方式,请问程序控制方式又分为哪两种方式?这两种方式在与外设进行数据传送时有什么区别?(4分)
3.8086CPU从内部结构上分为哪两部分?并简述各部分功能?(4分)
4.某程序数据段中存放了2个字,1234H和5060H,已知DS=7850H,数据存放的偏移地址为3121H及285AH。试画图说明它们在存储器的存放情况,若要读取这两个字,需要对存储器进行几次操作?(5分)
第2页/共5页
5.写出下列指令中源操作数的寻址方式。(4分) (1) MOV AX,BX
(2) MOV AX,[2000H]
(3) MOV AX,[BX+DI]
(4) MOV BX,OFFSET BUFF
6.判断下列指令的对错;若有错,简述原因(3分) (1)MOV AX,[BX][BP]
(2)MOV [1000H],[SI]
(3)MOV AL,0200H
7.若对应中断类型号为30H的中断服务程序存放在2300H:3460H开始的区域中,画出该中断向量在内存中的存放形式?试编写一程序段完成该中断向量的设置。(5分)
第3页/共5页
8.简述可屏蔽中断处理的过程。(3分)
9.已知8255A的接口电路如下图所示,端口地址分别为:80H~83H,编写程序段实现用4个LED反映4个开关的状态。要求:开关合上灯亮,开关断开灯灭。(5分)
第4页/共5页
8255A
D7-0 IOW IOR A1 A0 80H~83H D7-0 WR RD A1 A0 CS PB3 PB2 PB1 PB0 PA7 PA6 PA5 PA4 L3 L2 L1 L0 +5v K3 +5v K2 +5v K1 +5v K0
三、程序分析题(共8分)
1.设CPU各个标志位的初始状态均为0,执行指令:
MOV AX,0 DEC AX
后,请问AX=?,SF=?,CF= ?(3分)
2.下面程序段的功能是从240H端口读取数据,测试其是否为20H,若不是则将241H端口清0,否则转向NEXT,请将程序补充完整。(5分)
MOV
DX , AL, 20H
MOV MOV OUT …… NEXT: ……
第5页/共5页
DX,241H AL, DX,AL
2010—2011年《微机原理A (闭卷)》参考答案和评分标准
一、填空题(每空1分,共20分)
1.10010111、11101001
2.10001.01B,0001 0111.0010 0101BCD 3.200AH 4. 8 , 3 5. 2 , 5 6.256
7.I/O端口读操作
8.数据信息、状态信息和控制信息(或命令信息) 9.64KB
10.‘5’或35H或53 11.操作码
12.0FFH或11111111B或255 13.缓冲,锁存
二、简答题(共37分)
1.微型计算机由哪几部分组成?简述各部分功能。(4分)
答:微型计算机系统主要由微处理器(CPU)、存储器、I/O接口和总线组成。(2分) 其中微处理器为微型计算机的核心,主要完成取指令、指令译码、简单的算术逻辑运算及程序控制等;存储器主要用来存储程序和数据;I/O接口用于外设与CPU之间的信息协调;总线是CPU与存储器和I/O接口之间传送数据信息、地址信息和控制信息的通道。
(2分) 2. CPU与外设之间的数据传送方式包括程序控制方式、中断方式和DMA方式,请问程序控制方式又分为哪两种方式?这两种方式在与外设进行数据传送时有什么区别?(4分) 答:程序控制方式分为无条件传送方式和有条件传送方式(或查询式传送方式)(2分) 无条件传送方式在进行数据传送时不需要查询外设的状态,可根据需要随时进行输入或输出操作。 (1分)
有条件传送方式在进行数据传送前,必须先确认外设已处于准备传送数据的状态,才能进行输入或输出操作。 (1分)
第6页/共5页
3.8086CPU从内部结构上分为哪两部分?并简述各部分功能?(4分)
答:8086CPU从内部结构上分为总线接口单元(BIU)和执行单元(EU)。 (2分) 总线接口单元(BIU)负责物理地址形成、取指令、指令排队、读写操作数和总线控制。 (1分) 执行单元(EU)负责指令译码和执行执行。 (1分) 4.某程序数据段中存放了2个字,1234H和5060H,已知DS=7850H,数据存放的偏移地址为3121H及285AH。试画图说明它们在存储器的存放情况,若要读取这两个字,需要对存储器进行几次操作?(5分)
答:(1)计算2个字的物理地址
第1个字:7850H×10H + 3121H = 7B621H (1分) 第2个字:7850H×10H + 285AH = 7AD5AH (1分) (2)画存储器分布图 (2分,每字存储1分)
7B621H 7AD5AH
…… 60H 50H …34H 12H
…… 注:不计算物理地址,直接用逻辑地址表示存储单元也可以。
(3)操作次数 (1分) 从7B621H这个奇地址单元读取一个字需要访问2次存储器,从7AD5AH偶地址单元读取一个字需要访问1次存储器,所以共需要对存储器进行3次操作。
5.写出下列指令中源操作数的寻址方式。(4分,每题1分) (1) MOV AX,BX 答:寄存器寻址 (2) MOV AX,[2000H] 答:直接寻址
(3) MOV AX,[BX+DI] 答:基址变址寻址
(4) MOV BX,OFFSET BUFF 答:立即寻址
第7页/共5页
6.判断下列指令的对错;若有错,简述原因(3分,每题1分) (1)MOV AX,[BX][BP]
答:错。对存储单元寻址时,BX和BP不能同时出现在[]中。 (2)MOV [1000H],[SI]
答:错。存储单元之间不能直接传送数据。 (3)MOV AL,0200H
答:错。原操作数和目的操作数长度不一致。
7.若对应中断类型号为30H的中断服务程序存放在2300H:3460H开始的区域中,画出该中断向量在内存中的存放形式?试编写一程序段完成该中断向量的设置。(5分)
答:
(1)画中断向量在内存中的存放图(2分)
000C0H
…
… 60H 34H 00H… 23H …
(2)中断向量设置程序段(3分) MOV AX,2300H MOV DS,AX
MOV DX,3460H (1分) MOV AL, 30H (1分) MOV AH, 25H
INT 21H (1分) 8.简述可屏蔽中断处理的过程。(3分)
答:中断请求,中断响应,保护现场,转入执行中断服务子程序,恢复现场和中断返回。
第8页/共5页
或 MOV AX,0
MOV DS,AX
MOV BX,00C0H (1分) MOV WORD PTR[BX], 3460H (1分) MOV WORD PTR[BX+2], 2300H (1分)
9.已知8255A的接口电路如下图所示,端口地址分别为:80H~83H,编写程序段实现用4个LED反映4个开关的状态。要求:开关合上灯亮,开关断开灯灭。(5分) 答: 程序片段: MOV AL,90H
OUT 83H,AL (1分) IN AL,80H (1分) MOV CL,4
SHR AL,CL (1分) NOT AL (1分) OUT 81H,AL (1分)
D7-0 IOW IOR A1 A0 80H~83H 8255A D7-0 WR RD A1 A0 CS PB3 PB2 PB1 PB0 PA7 PA6 PA5 PA4 L3 L2 L1 L0 +5v K3 +5v K2 +5v K1 +5v K0
三、程序分析题(共8分)
1.设CPU各个标志位的初始状态均为0,执行指令:
MOV AX,0 DEC AX
后,请问AX=?,SF=?,CF= ?(3分)
答:AX=FFFFH或-1 (1分), SF=1(1分), CF=0(1分)
2.下面程序段的功能是从240H端口读取数据,测试其是否为20H,若不是则将241H端口清0,否则转向NEXT,请将程序补充完整。(5分)
MOV
DX , 240H
IN AL, DX CMP AL, 20H _JZ(或JE) NEXT__ MOV MOV OUT …… NEXT: ……
第9页/共5页
DX,241H AL, 0 DX,AL
A卷
2010—2011学年第一学期 《微机原理》试卷(开卷)
(适用专业:电子08、自动化08、电气08、测控08、物理08)
专业班级 姓 名 学 号 开课系室 电子信息工程系 考试日期 2011年1月7日
题 号 一 二 三 总分 得 分 阅卷人
第10页/共5页
一、(13分)已知8253的通道0~2和控制端口的地址分别为360H、362H、364H和366H,下图为8253对外连接信号示意图,按要求完成下述功能:
1. 在CLK1端输入5kHz的连续时钟脉冲,要求发光二极管亮1秒鈡,灭1秒钟,然后再亮1秒,灭1秒,不断循环下去。
2. CLK2端连接生产流水线的产品计数脉冲,要求每生产1000件产品输出1个装箱脉冲。
(1)说明通道1和通道2应分别工作在 哪种方式?并简述理由。
(2)计算通道1和通道2的计数初值。
(3)编写通道1和通道2的初始化程序片断。
(4)在装箱过程中需要了解箱子中已经装了多少件产品,如何编程实现。
8253 5kHz CLK1 GATE1 OUT1 CLK2 GATE2 OUT2 产品计数脉冲 +5V 装箱脉冲 +5V 第11页/共5页
二、(12分)下图为某CPU的最小系统和某存储芯片的框图,已知该CPU共有8位数据总线,最大可以访问1MB的存储空间,其内部结构与8086相同,请回答以下问题:
1.将图中CPU的相关信号线与存储器相连。
2.要求1#存储器的起始地址为32000H,2#存储器的起始地址为38000H,且各存储单元的地址唯一。根据需要选择合适的门电路与138译码器一起完成译码,画出译码电路图。
3.编写程序片段把1#存储器内容的绝对值按顺序存储到2#存储器。 A12~0 CPU WR 最小
RD 系统
D7~0
A12~0 A12~0 WE 1# CS1 WE 2# CS2 OE
DOE
7~0
D7~0
A Y0 B Y1 C Y2 Y3 Y4 G1 Y5 G2A Y6 G2B Y7 74LS138
第12页/共5页
三、(10分)设在内存缓冲区中有一数据块DATA,存放着20个带符号的字节型数据,对这20个数据进行以下处理:去掉其中的最大值,然后对剩余的19个数求和,并将和送入SUM单元。要求画出程序流程框图,编写完整的汇编语言源程序。注:不考虑求和是否溢出。
第13页/共5页
2010—2011年《微机原理A (开卷)》参考答案和评分标准
一、(13分)
(1)说明通道1和通道2应分别工作在哪种方式?并简述理由。
答:通道1工作方式为3,因为方式3的门控信号要求为高电平,且输出的波形是方波信号。 (1分)
通道2工作方式为0,因为方式0门控信号要求为高电平,且计数结束后,输出一个上升沿。 (1分)
(2)计算通道1和通道2的计数初值。(1分) 答:N1=5KHz/(1/2s)=10000 N2=1000-1=999
(3)编写通道1和通道2的初始化程序片断(参考程序如下,但不唯一)。 答:通道1初始化: MOV AL,01110110B MOV DX,366H
OUT DX,AL (1分) MOV DX,362H MOV AX,10000
OUT DX,AL (1分) MOV AL,AH
OUT DX,AL (1分) MOV AL,10000000B MOV DX,366H
OUT DX,AL (1分) MOV DX,364H IN AL,DX
MOV AH,AL (1分) IN AL,DX
XCHG AL,AH (1分) MOV BX,1000
SUB BX,AX (1分)
注:参考程序不唯一
第14页/共5页
通道2初始化: MOV AL,10110000B MOV DX,366H
OUT DX,AL (1分) MOV DX,364H MOV AX,999
OUT DX,AL (1分) MOV AL,AH
OUT DX,AL (1分) (4)在装箱过程中需要了解箱子中已经装了多少件产品,如何编程实现。
二、(12分)
(1)正确连接CPU相关信号(2分) (2) A16 A17 A18 A19 & A13 A14 A15 A Y0 B Y1 C Y2 Y3 Y4 G1 Y5 G2A Y6 G2B Y7 74LS138
CS2
CPU 最小 系统 A12~0 WR RD D7~0 A12~0 WE OE 1# CS1 D7~0 WE OE A12~0 2# CS2 D7~0 CS1 评分标准:
1.、地址译码输入连接,译码电路不唯一(2分) 2.、存储器片选连接(2分)
+
(3)程序片段(参考程序,不唯一)
MOV AX,3000H MOV DS,AX MOV SI,2000H
MOV DI,8000H (1分) MOV CX,2000H (1分) L1: MOV AL,[SI]
CMP AL,0
JGE L2 (1分) NEG AL
L2: MOV [DI],AL (1分)
INC SI
INC DI (1分) LOOP L1 (1分)
第15页/共5页
三、(10分)
程序流程框图 (3分); 完整程序 (7分) 数据块DATA定义 开始 DATA DATA SUM DATA
SEGMENT
DB 20 DUP(?)
0
ENDS (1分) DB
数据块首地址→BX 数据块长度→CX 初值0送SUM [BX]→AL SUM=SUM+[BX] AL>[BX]? N [BX]→AL BX+1→BX N 20个数判断完了? Y SUM=SUM-AL 结束
CODE START:
Y
L1: L2:
CODE
SEGMENT
ASSUME CS:CODE, DS:DATA MOV AX,DATA
MOV DS,AX MOV BX, OFFSET DATA
MOV CX, 20
MOV AL, [BX] MOV AH,0 ADD AH,[BX] CMP AL,[BX] JG L2 (或JGE L2) MOV AL,[BX]
INC BX DEC CX
JNZ
L1 SUB AH,AL
MOV SUM,AH MOV AH,4CH
INT 21H
START (1分)
(1分)
(1分)
(1分)1分)
(1分)
第16页/共5页
( ENDS END
A卷
2011—2012学年第一学期 《微机原理》试卷(闭卷)
(适用专业:电子09、自动化09、电气09、测控09、应物09)
专业班级 姓 名 学 号 开课系室 电子信息工程系 考试日期 2012年1月12日
题 号 一 二 三 总分 得 分 阅卷人
第17页/共5页
说明:所有问题除特别指出外,均针对8086; 所有问题均可用自己的语言回答。
本题得分
一、填空题(每空1分,共20分) 1.十进制数189对应的二进制数是 ,对应的压缩BCD码是 。
2.采用补码表示的某个8位二进制整数由3个“0”和5个“1”组成,则其可表示的最小真值是 。
3.已知两个BCD数18H和23H,先将18H送入寄存器AL中,再将23H送入BL中,当执行指令ADD AL,BL后,请问寄存器AL中的值为 。
4.8086CPU在执行MOV AL, [SI]指令的总线周期内,若SI中存放的内容为1234H,则BHE和A0的状态分别为 。
5.任何一个逻辑地址均由段基址和偏移地址两部分组成,当进行取指令操作时,段基址由寄存器 提供,偏移地址由寄存器 提供。
6. 8086CPU对外的数据线是 根,地址线 根,可寻址的内存单元数为 ,可寻址的I/O端口数为 。
7.内存是位于计算机内部的主存储器,用于存放 。 8.微机系统中,CPU与外设间的数据传送方式主要包括 , 和 。
9.若某中断源的中断类型号为09H,则CPU响应该中断后会自动从物理地址为 开始的四个单元中取出相应的中断向量。
10.每片8259A可管理 级中断,若3片8259A进行级联,最多可连接 个可屏蔽中断源。
11.若AX=2000H,BX=3000H,则执行指令SUB AX,BX后,标志寄存器中的OF= ,CF= 。
本题得分 二、简答题(共37分) 1.条件传送接口电路中至少应包括什么端口?并简述条件传送的工作过程。(3分)
第18页/共5页
2.画出微型计算机的组成框图,并简述各部分功能。(4分)
3.画图说明下面语句所分配的存储空间及初始化的数据值。(3分) BUF DW 2 DUP(1),-1,‘AB’
4.给定一个堆栈存储区,其地址为1270H:0000H~1270H:0100H,SS=1270H,SP=0052H,问:(1)栈顶的逻辑地址是多少?(2)栈底的物理地址是多少?(3)若压入数据1234H,数据在内存中如何存放?此时SP的值是多少?(4分)
第19页/共5页
5.已知DS=3000H,在物理地址为34780H的内存单元中存放有字节数据20H,要求采用3种不同的寻址方式将该字节数据送入寄存器AL中,试写出寻址方式的名称及相应的程序片段。(4分)
6.简述一般子程序调用过程和矢量中断服务子程序调用过程的主要异同。(4分)
7.判断下列指令的对错;若有错,简述原因(3分) (1)MOV [DI],[BX]
(2)PUSH AL
(3)JMP 0100H
8.CPU响应可屏蔽中断请求的条件是什么?(4分)
第20页/共5页
9.简述指令性语句和伪指令语句的主要差别,并列出汇编语言中常用的伪指令。(4分)
10.下图为8088最小系统与某存储芯片构成的RAM存储器系统。(4分)(1)说明一片RAM芯片的存储容量为多少? (2)计算该存储器区的总容量为多少? (3)说明每片RAM芯片的地址范围? 10:1024 10 Y1 A10-19 M/IO D Y0 0-788088 最小 DCS 0-7 DCS 0-7 系统 1#A2#0-9 A0-9 WE WE A0-9 WR 10 第21页/共5页
三、程序分析题(共8分)本题得分
1.设初值为AX=1234H,BX=5678H,DX=0ABCDH,则下面一段程序: MOV CL,4 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL
执行后,请问AX=?,BX=?,DX=?(3分)
2.下面程序段的功能是求5到50之和,并将结果存放到SUM单元中,请将程序补充完整。(5分) SUM DW 0 ……
MOV CX, MOV BX, MOV AX, L1: ADD AX,BX INC BX
MOV ,AX
第22页/共5页
2011—2012年《微机原理A (闭卷)》参考答案和评分标准
一、填空题(每空1分,共20分)
1.10111101B、189H或000110001001BCD 2. -113或-1110001B 3. 3BH 4. 1 , 0 5. CS , IP
6.16 、20 、1M或220 、 64K或65536或216 7.当前正在使用的程序和数据 8.程序控制方式、中断方式和DMA方式 9.00024H 10. 8 , 22 11. 0 ,1
二、简答题(共37分)
1.条件传送接口电路中至少应包括什么端口?并简述条件传送的工作过程。(3分) 答:(1)至少包括状态端口和数据端口。 (2分) (2)条件传送工作过程:先读取状态端口的信息,检测是否准备好交换数据,若
已准备好,则与数据端口进行数据交换;否则继续读取状态端口,直到数据准备好。(1分)
2. 画出微型计算机的组成框图,并简述各部分功能。(4分) 答:组成框图如下图所示:(2分)
第23页/共5页
各部分功能: (1)
微处理器为微型计算机的核心,主要完成取指令、指令译码、简单的算术逻辑运算及程序控制等。 (0.5分)
(2) (3) (4)
存储器主要用来存储程序和数据。 (0.5分) I/O接口用于外设与CPU之间的信息协调。 (0.5分) 总线是CPU与存储器和I/O接口之间传送数据信息、地址信息和控制信息
的通道。 (0.5分)
3.画图说明下列语句所分配的存储空间及初始化的数据值。(3分) BUF DW 2 DUP(1),-1,‘AB’ 答:
4.给定一个堆栈存储区,其地址为1270H:0000H~1270H:0100H,SS=1270H,SP=0052H,问:(1)栈顶的逻辑地址是多少?(2)栈底的物理地址是多少?(3)若压入数据1234H,数据在内存中如何存放?此时SP的值是多少?(4分)
答:(1)栈顶的逻辑地址为:1270H:0052H (1分) (2)栈底的物理地址为:12800H (1分) (3)内存存放形式如下图所示: (1分)
… … BUF 01 00 01 00 FF FF 42或‘B’ 41或‘A’ … 1分
1分 1分
34 12 … 1270H:0050H 1270H:0051H
SP=0050H (1分)
第24页/共5页
5.已知DS=3000H,在物理地址为34780H的内存单元中存放有字节数据20H,要求采用3种不同的寻址方式将该字节数据送入寄存器AL中,试写出寻址方式的名称及相应的程序片段。(4分)
答:由于物理地址=34780H,且DS=3000H,所以EA=34780H-3000*10H=4780H (1分) (1)直接寻址 (1分)
MOV AL,[4780H] (2)寄存器间接寻址 (1分) MOV BX,4780H MOV AL,[BX]
(3)寄存器相对寻址 (1分) MOV BX,4700H MOV AL,[BX+80H]
注:每种寻址方式和对应的指令各0.5分,答案不唯一。
6. 简述一般子程序调用过程和矢量中断服务子程序调用过程的主要异同。(4分) 答:
同:都要保护断点,程序流程转向相应的子程序去执行且执行完后都要返回。(2分) 异:一般子程序入栈保护的是IP或CS和IP,中断服务子程序入栈入栈保护的是Flags、CS和IP;一般子程序的返回指令为RET,中断服务子程序的返回指令为IRET。 (2分)
7.判断下列指令的对错;若有错,简述原因(3分) (1)MOV [DI],[BX]
答:错,两个存储单元之间不能直接传送数据。(1分) (2)PUSH AL
答:错,PUSH指令是以字为单位进行操作的。 (1分) (3)JMP 0100H
答:正确。 (1分) 8.CPU响应可屏蔽中断请求的条件是什么?(4分) 答:(1)外设提出请求 (1分) (2)本级中断未被屏蔽 (1分)
(3)本级中断优先级最高 (1分) (4)CPU允许可屏蔽中断请求,即IF=1 (1分)
第25页/共5页
9. 简述指令性语句和伪指令语句的主要差别,并列出汇编语言中常用的伪指令。(4分) 答:(1)主要差别 (2分)
指令性语句:有对应的机器码,在程序运行时执行指令性语句; 伪指令语句:没有对应的机器码,汇编过程中执行伪指令语句 (2)常用的伪指令 (2分)
DB、DW、EQU、SEGMENT……ENDS、ASSUME、PROC……ENDP、ORG、END 注:每条伪指令0.5分,最多2分。
10.下图为8088最小系统与某存储芯片构成的RAM存储器系统。(4分) (1)说明一片RAM芯片的存储容量为多少? (2)计算该存储器区的总容量为多少? (3)说明每片RAM芯片的地址范围?
答:(1)存储容量为:1K×8或1KB (1分) (2)总容量为:2K×8或2KB (1分)
(3)1#芯片地址范围:00000H~003FFH (1分) 2#芯片地址范围:00400H~007FFH (1分)
三、程序分析题(共8分)
1.(3分)
AX=2340H (1分) BX=5601H (1分) DX=BCD1H (1分)
2.下面程序段的功能是求5到50之和,并将结果存放到SUM单元中,请将程序补充完整。(5分) SUM DW 0
MOV CX, 46 或 MOV CX, 45 (1分) MOV BX, 5 MOV BX, 6 (1分) MOV AX, 0 MOV AX, 5 (1分) L1: ADD AX,BX INC BX
LOOP L1 (1分) MOV SUM ,AX (1分)
第26页/共5页
A卷
2011—2012学年第一学期 《微机原理》试卷(闭卷)
(适用专业:电子09、自动化09、电气09、测控09、应物09)
专业班级 姓 名 学 号 开课系室 电子信息工程系 考试日期 2012年1月12日
题 号 一 二 三 总分 得 分 阅卷人
第27页/共5页
说明:所有问题除特别指出外,均针对8086; 所有问题均可用自己的语言回答。
本题得分
一、填空题(每空1分,共20分) 1.十进制数189对应的二进制数是 ,对应的压缩BCD码是 。
2.采用补码表示的某个8位二进制整数由3个“0”和5个“1”组成,则其可表示的最小真值是 。
3.已知两个BCD数18H和23H,先将18H送入寄存器AL中,再将23H送入BL中,当执行指令ADD AL,BL后,请问寄存器AL中的值为 。
4.8086CPU在执行MOV AL, [SI]指令的总线周期内,若SI中存放的内容为1234H,则BHE和A0的状态分别为 。
5.任何一个逻辑地址均由段基址和偏移地址两部分组成,当进行取指令操作时,段基址由寄存器 提供,偏移地址由寄存器 提供。
6. 8086CPU对外的数据线是 根,地址线 根,可寻址的内存单元数为 ,可寻址的I/O端口数为 。
7.内存是位于计算机内部的主存储器,用于存放 。 8.微机系统中,CPU与外设间的数据传送方式主要包括 , 和 。
9.若某中断源的中断类型号为09H,则CPU响应该中断后会自动从物理地址为 开始的四个单元中取出相应的中断向量。
10.每片8259A可管理 级中断,若3片8259A进行级联,最多可连接 个可屏蔽中断源。
11.若AX=2000H,BX=3000H,则执行指令SUB AX,BX后,标志寄存器中的OF= ,CF= 。
本题得分 二、简答题(共37分) 1.条件传送接口电路中至少应包括什么端口?并简述条件传送的工作过程。(3分)
第28页/共5页
2.画出微型计算机的组成框图,并简述各部分功能。(4分)
3.画图说明下面语句所分配的存储空间及初始化的数据值。(3分) BUF DW 2 DUP(1),-1,‘AB’
4.给定一个堆栈存储区,其地址为1270H:0000H~1270H:0100H,SS=1270H,SP=0052H,问:(1)栈顶的逻辑地址是多少?(2)栈底的物理地址是多少?(3)若压入数据1234H,数据在内存中如何存放?此时SP的值是多少?(4分)
第29页/共5页
5.已知DS=3000H,在物理地址为34780H的内存单元中存放有字节数据20H,要求采用3种不同的寻址方式将该字节数据送入寄存器AL中,试写出寻址方式的名称及相应的程序片段。(4分)
6.简述一般子程序调用过程和矢量中断服务子程序调用过程的主要异同。(4分)
7.判断下列指令的对错;若有错,简述原因(3分) (1)MOV [DI],[BX]
(2)PUSH AL
(3)JMP 0100H
8.CPU响应可屏蔽中断请求的条件是什么?(4分)
第30页/共5页
9.简述指令性语句和伪指令语句的主要差别,并列出汇编语言中常用的伪指令。(4分)
10.下图为8088最小系统与某存储芯片构成的RAM存储器系统。(4分)(1)说明一片RAM芯片的存储容量为多少? (2)计算该存储器区的总容量为多少? (3)说明每片RAM芯片的地址范围? 10:1024 10 Y1 A10-19 M/IO D Y0 0-788088 最小 DCS 0-7 DCS 0-7 系统 1#A2#0-9 A0-9 WE WE A0-9 WR 10 第31页/共5页
三、程序分析题(共8分)本题得分
1.设初值为AX=1234H,BX=5678H,DX=0ABCDH,则下面一段程序: MOV CL,4 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL
执行后,请问AX=?,BX=?,DX=?(3分)
2.下面程序段的功能是求5到50之和,并将结果存放到SUM单元中,请将程序补充完整。(5分) SUM DW 0 ……
MOV CX, MOV BX, MOV AX, L1: ADD AX,BX INC BX
MOV ,AX
第32页/共5页
2011—2012年《微机原理A (闭卷)》参考答案和评分标准
一、填空题(每空1分,共20分)
1.10111101B、189H或000110001001BCD 2. -113或-1110001B 3. 3BH 4. 1 , 0 5. CS , IP
6.16 、20 、1M或220 、 64K或65536或216 7.当前正在使用的程序和数据 8.程序控制方式、中断方式和DMA方式 9.00024H 10. 8 , 22 11. 0 ,1
二、简答题(共37分)
1.条件传送接口电路中至少应包括什么端口?并简述条件传送的工作过程。(3分) 答:(1)至少包括状态端口和数据端口。 (2分) (2)条件传送工作过程:先读取状态端口的信息,检测是否准备好交换数据,若
已准备好,则与数据端口进行数据交换;否则继续读取状态端口,直到数据准备好。(1分)
2. 画出微型计算机的组成框图,并简述各部分功能。(4分) 答:组成框图如下图所示:(2分)
各部分功能:
第33页/共5页
(5) 微处理器为微型计算机的核心,主要完成取指令、指令译码、简单的算术逻辑运算及程序控制等。 (0.5分)
(6) (7) (8)
存储器主要用来存储程序和数据。 (0.5分) I/O接口用于外设与CPU之间的信息协调。 (0.5分) 总线是CPU与存储器和I/O接口之间传送数据信息、地址信息和控制信息的通道。 (0.5分)
3.画图说明下列语句所分配的存储空间及初始化的数据值。(3分) BUF DW 2 DUP(1),-1,‘AB’ 答:
4.给定一个堆栈存储区,其地址为1270H:0000H~1270H:0100H,SS=1270H,SP=0052H,问:(1)栈顶的逻辑地址是多少?(2)栈底的物理地址是多少?(3)若压入数据1234H,数据在内存中如何存放?此时SP的值是多少?(4分)
答:(1)栈顶的逻辑地址为:1270H:0052H (1分) (2)栈底的物理地址为:12800H (1分) (3)内存存放形式如下图所示: (1分)
… … BUF 01 00 01 00 FF FF 42或‘B’ 41或‘A’ … 1分
1分 1分
34 12 … 1270H:0050H 1270H:0051H
SP=0050H (1分)
第34页/共5页
5.已知DS=3000H,在物理地址为34780H的内存单元中存放有字节数据20H,要求采用3种不同的寻址方式将该字节数据送入寄存器AL中,试写出寻址方式的名称及相应的程序片段。(4分)
答:由于物理地址=34780H,且DS=3000H,所以EA=34780H-3000*10H=4780H (1分) (1)直接寻址 (1分)
MOV AL,[4780H] (2)寄存器间接寻址 (1分) MOV BX,4780H MOV AL,[BX]
(3)寄存器相对寻址 (1分) MOV BX,4700H MOV AL,[BX+80H]
注:每种寻址方式和对应的指令各0.5分,答案不唯一。
6. 简述一般子程序调用过程和矢量中断服务子程序调用过程的主要异同。(4分) 答:
同:都要保护断点,程序流程转向相应的子程序去执行且执行完后都要返回。(2分) 异:一般子程序入栈保护的是IP或CS和IP,中断服务子程序入栈入栈保护的是Flags、CS和IP;一般子程序的返回指令为RET,中断服务子程序的返回指令为IRET。 (2分)
7.判断下列指令的对错;若有错,简述原因(3分) (1)MOV [DI],[BX]
答:错,两个存储单元之间不能直接传送数据。(1分) (2)PUSH AL
答:错,PUSH指令是以字为单位进行操作的。 (1分) (3)JMP 0100H
答:正确。 (1分) 8.CPU响应可屏蔽中断请求的条件是什么?(4分) 答:(1)外设提出请求 (1分) (2)本级中断未被屏蔽 (1分)
(3)本级中断优先级最高 (1分) (4)CPU允许可屏蔽中断请求,即IF=1 (1分)
第35页/共5页
9. 简述指令性语句和伪指令语句的主要差别,并列出汇编语言中常用的伪指令。(4分) 答:(1)主要差别 (2分)
指令性语句:有对应的机器码,在程序运行时执行指令性语句; 伪指令语句:没有对应的机器码,汇编过程中执行伪指令语句 (2)常用的伪指令 (2分)
DB、DW、EQU、SEGMENT……ENDS、ASSUME、PROC……ENDP、ORG、END 注:每条伪指令0.5分,最多2分。
10.下图为8088最小系统与某存储芯片构成的RAM存储器系统。(4分) (1)说明一片RAM芯片的存储容量为多少? (2)计算该存储器区的总容量为多少? (3)说明每片RAM芯片的地址范围?
答:(1)存储容量为:1K×8或1KB (1分) (2)总容量为:2K×8或2KB (1分)
(3)1#芯片地址范围:00000H~003FFH (1分) 2#芯片地址范围:00400H~007FFH (1分)
三、程序分析题(共8分)
1.(3分)
AX=2340H (1分) BX=5601H (1分) DX=BCD1H (1分)
2.下面程序段的功能是求5到50之和,并将结果存放到SUM单元中,请将程序补充完整。(5分) SUM DW 0
MOV CX, 46 或 MOV CX, 45 (1分) MOV BX, 5 MOV BX, 6 (1分) MOV AX, 0 MOV AX, 5 (1分) L1: ADD AX,BX INC BX
LOOP L1 (1分) MOV SUM ,AX (1分)
第36页/共5页
A卷
2011—2012学年第一学期 《微机原理》试卷(开卷)
专业班级 姓 名 学 号 开课系室 电子信息工程系 考试日期 2012年1月12日
题 号 一 二 三 总分 得 分 阅卷人
第37页/共5页
一、(10分)本题得分
已知8253各端口地址分别为360H、362H、364H和366H,下图为8253对外连接信号示意图,按要求完成下述功能:
1. CLK0端连接生产流水线的产品计数脉冲,要求每生产30件产品输出1个装箱脉冲。 (1)为通道0选择合适的工作方式并简述理由。
+5V 产品计数脉冲 CLK0 GATE0 OUT0 CLK1 GATE1 OUT1 CLK2 GATE2 OUT2 1MHz
8253
(2)为通道0编写初始化程序片段。
装箱脉冲 2.已知现有的时钟信号频率为1MHz,若在不增加硬件电路的情况下,要求利用剩余通道产生周期为5S的对称方波:
(1)为剩余通道选择合适的工作方式,并画出各通道相应的硬件连线。
(2)计算各通道的计数初值,并给出计算步骤。
第38页/共5页
本题得分 二、(13分) 已知8255A的接口电路如下图所示,端口地址分别为:90H、92H、94H和96H,请按要 求完成下述功能:
(1)利用74LS138译码器和逻辑门搭建地址译码电路,要求8255A各端口地址唯一。 (2)画出8255A与8086最小系统的硬件接口连接线。
(3)编写完整的汇编源程序,使开关K接到位置1到2时,数码管显示相应的数字1 到2,当开关K接至位置3时,退出程序。
(本页的空白若不够用,可在下页接着书写)
第39页/共5页
a D0-7 PB WR RD A1 A0 CS PA3 3 8255A PA 2PA1 2 1 开关K f e g d b c 8086最小 系统
+5V
(本页用于答题,不是草稿纸)
第40页/共5页
(本页用于答题,不是草稿纸)
本题得分 三、(12分) 设在内存缓冲区中有一数据块BUF,存放着100名学生某门课程的考试成绩(满分为100分,最低为0分),求出成绩不低于90分以及成绩低于60分的学生个数,并将它们分别存于符号地址为GOOD和FAIL的2个内存单元中。要求画出程序流程框图,编写完整的汇编语言源程序。
第41页/共5页
2011—2012年《微机原理A (开卷)》参考答案和评分标准
一、(10分)
1. CLK0端连接生产流水线的产品计数脉冲,要求每生产30件产品输出1个装箱脉冲。 (1)为通道0选择合适的工作方式并简述理由。
答:通道0工作方式为0。 (1分)
理由:因为方式0门控信号要求为高电平,一般用于对外部事件进行计数且
计数结束后,输出一个上升沿。 (1分)
(2)为通道0编写初始化程序片段。 (每条指令0.5分,共3分) MOV AL,00010001B (不唯一) MOV DX,366H OUT DX,AL MOV DX,360H MOV AL,29H OUT DX,AL 注:参考程序不唯一
2.已知现有的时钟信号频率为1MHz,若在不增加硬件电路的情况下,要求利用剩余通道产生周期为5S的对称方波:
(1)为剩余通道选择合适的工作方式,
并画出各通道相应的硬件连线。 答:通道1——方式2或方式3 (1分) 通道2——方式3 (1分)
各通道相应的硬件连线:GATE1 GATE2接+5v(0.5分) OUT1接CLK2 (0.5分) (2)计算各通道的计数初值,给出计算步骤。
答:设总的计数初值为N,通道1的计数初值为n1,通道2的计数初值为n2,则: 1MHz/N=1/5S N=1M*5=5M,即N=5*106 (1分) 又N=n1* n2且n1和n2都不能大于65535,所以这里:
第42页/共5页
n1=5000; n2=1000 (1分) 注:n1和n2值不唯一。
第43页/共5页
二、(13分)
(1)(4分)硬件接口参考连接线如下:
A7=1、A6=0、A5=0、A4A3A0 接138输入端CBA (0.5分/根) A8~A15=0 (0.5分) 片选信号CS接Y4 (0.5分) (2)(3分)
数据线连接 (1分)
读写控制线连接 (1分) A2——A1
A1——A0
(1分)
注:译码电路见下图,不唯一。 A 6A 8
第44页/共5页
D7-0 WR RD 8086A2 最小 A1 系统 A4 A3 A0 A7 Y0 C Y1 B Y2 A 138 Y3 G1 Y4 G2A Y5 G2B Y6 Y7 A5 ≧1 D7-0 WR RD A1 A0 CS PA3 PB a f e g d b c 3 8255A PA 2PA1 2 1 开关K +5V A9 A10 A11 A12 A13 A14 A15 M/IO (3)(6分)
DATA SEGMENT BUF DB 3F,06H,5BH
DATA ENDS (1分) CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA
MOV DS,AX (1分) MOV AL,10010000B(或90H);不唯一 OUT 96H,AL (1分) IN AL,90H TEST AL,02H JZ L1
TEST AL,04H JZ L2
TEST AL,08H
JZ EXIT (1分)
L1:MOV AL,1 JMP SHOW
L2:MOV AL,2 (1分) SHOW:LEA BX,BUF
XLAT
OUT 92H,AL (1分) EXIT:MOV AH,4CH INT 21H
CODE SEGMENT END START
第45页/共5页
三、(12分)
DATA SEGMENT BUF DB 100 DUP (?) GOOD DB 0
初始化设置循环次数CX=100 FAIL DB 0
设置地址指针BX DATA ENDS
设置优秀和不及格的计数器DH,DL
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START :MOV AX, DATA
BUF取数据 MOV DS, AX
MOV BX, OFFSET BUF
MOV CX,100
Y MOV DX,0 分数>=90? DH+1 L1 : MOV AL, [BX]
CMP AL,90
NJB L2
YINC DH 分数<60? DL+1 JMP L3
NL2: CMP AL,60
JAE L3
地址指针BX+1 INC DL
循环次数CX-1 L3: INC BX
LOOP L1 MOV GOOD, DH
N MOV FAIL, DL
CX=0?
MOV AH, 4CH
Y INT 21H CODE ENDS
送结果 END START 结束
评分标准: 流程图4分,
其中初始化1分,判断>90分并计数的分支1分,判断<60分并计数的分支1分,循环控制1分。
源程序8分,
其中数据段定义1分,分段结构、段分配1分,初始化1分,判断>90分并计数2分,判断<60分并计数1分,循环控制1分,送结果1分。
第46页/共5页
开始
第47页/共5页
第48页/共5页
因篇幅问题不能全部显示,请点此查看更多更全内容