电子科大微机原理06期中

更新时间:2023-06-04 14:25:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

电子科大

电子科技大学二零零 五 至二零零 六 学年第 二 学期 期中 考试

课程考试题卷 (分钟) 考试形式: 考试日期 年日

期中 100 分,

注意:请将第一、二、三题答案填入本页指定位置。

一、单选题答案(每题1分,共10分)

注:第7小题的选项“B.AC” 和“C.TF”都是正确答案,此题选中这两个答案都算正确; 第10小题的选项“A.参数”的定义不清晰,但此题可用排除法选择,还是按标准答案给分。

二、填空题答案(每空1分,共10分) 1. OFFFF , 0000 2. 基址(或寄存器间接) , 堆栈段 3. 偏移量 , 类 型 4. 62CB7 , 610A:1C2A

5. 16 , 10 (此空考察内容还未讲到,无论答对与否都给1分)

三、判断题答案(每题1分,共10分。正确打√,错误打×。)

注:第1小题中考察的“普通存储器的存取方式”还未讲到,无论答对与否都给1分

******************************************************************************************************************************************************************

一、 单选题题目(每题1分,共10分)

1. 若11001110为8位二进制补码数,则该数的十进制真值为( )。

A.+206

B.-206

C.+50

D.-50 D.地址线宽度 D.内部寄存器

2. CPU的字长通常与其( )一致。

A.寄存器个数 A.地址线宽度 A.T1

B.IO端口数 C. 数据线宽度 B.数据线宽度

C.寻址方式

3. 8086CPU与8088CPU )。

4. 8086CPU的地址/数据复用线可在总线周期的( )时刻分离地址信号。

B.T2

C.T3

D.T4

5. 8086CPU系统中采用存储器分段组织的主要原因是( )。

A.其内存容量一般为64KB的整数倍 C.其内部寄存器为16bit结构 A.4

B.2

B.便于与8位CPU系统兼容 D.其内部分为EU和BIU两部分

D.不一定

6. 8086CPU )个总线周期。

C.1

电子科大

7. 8086宏汇编源程序中可用作标识符的字符串是( )。

A.NOP B.AC C.TF A.偶地址处存放的8位数据 C.奇地址处存放的8位数据 A.RET 5

B.INTO

D.SEG

8. 8086CPU的引脚信号/BHE = 1、A0 = 0时,表示CPU正在读写( )。

B.偶地址处存放的16位数据 D.奇地址处存放的16位数据

9. 8086CPU系统中,下列指令执行时不一定会改变IP值的是( )。

C.INT 2 D.CALL NXT

10. 8086宏汇编语言中主程序和子程序之间不能通过( )来传送数据。

A.参数

B.堆栈 C.寄存器 D.变量

二、 填空题题目(每空1分,共10分)

1. 8086CPU复位后,段寄存器CS的值为( )H、DS的值为( )H。

2. 8086CPU系统中,指令“MOV AL, [BP]”中的源操作数采用( )寻址方式,该操作数应该存放在( )段中。

3. 8086宏汇编语言中,变量具有段基址属性、( )属性和( )属性。

4. 8086系统中,某数据区中存有10个字数据,若该数据区的起始地址为610A:1C17H,则该数据区起始单元的物理地址为( )H,末单元的逻辑地址为( )H。

5. 8086CPU提供( )条地址线寻址IO端口,而PC机实际只使用了( )条。

三、 判断题题目(每题1分,共10分)

1. 8086系统中,堆栈通常以“先进后出”的方式存取数据,指令队列以“先进先出”的方式存取数据,而普通存储器则以“随机”的方式存取数据。

2. 8086CPU内部的标志寄存器主要用于检查当前指令的执行结果是否出错。 3. 8086CPU工作在最小模式下时,系统控制总线需由总线控制器产生。 4. CPU的寻址空间主要与其地址线宽度有关。

5. 8086系统中,非规则字指存放在偶地址单元的字数据。

6. 8086系统中,指令“LEA AX,BUF”和“MOV AX,OFFSET BUF”可以完成相同的功能。 7. 8086系统中,伪指令经汇编后将生成相应的机器码。

8. 8086CPU内部只有4个段寄存器,故其最多可同时使用内存中的四个逻辑段。 9. 8086宏汇编语言中,每条指令都必须具有操作码和操作数。 10. IRET语句既可用于子程序的返回,也可用于中断服务程序的返回。

******************************************************************************************************************************************************************

注意:以下各题答案填入题下空白处。 四、 简答题(共25分)

1. 简述冯·诺依曼型计算机“程序存储和程序控制”原理的实质。(4分)

电子科大

答:“程序存储和程序控制”是冯·诺依曼型计算机的基本工作原理,它从本质上描述了这类计算机的工作过程,

即:程序预先存放在存储器中,CPU自动地从存储器中取出指令,并分析和执行指令,然后再取下一条指令,如此周而复始。

2. 什么是总线?微机中典型的三总线是什么?微机系统采用总线结构有哪些优点?(6分)

答:总线通常是指系统与系统之间、系统各模块之间或模块内部各部分之间用来传送信息的公共通路。 (2分) 微机中典型的三总线包括数据总线、控制总线和地址总线。 (2分) 采用总线结构,微机系统的构成更加方便,并且具有更大的灵活性和更好的可扩展性、可维修性。 (2分)

3. I/O端口的编址方式有哪两种?PC机采用的是哪种方式?这种方式有什么优缺点?(7分)

答:I/O端口通常有存储器映像编址和独立编址两种编址方式。 (2分)

PC机采用的是独立编址方式。这种编址方式的优点是存储器可寻址空间和I/O端口可寻址空间都比较大,只取决于CPU地址总线的宽度;缺点是需要不同的指令和控制信号来区分CPU发出的是存储单元地址还是端口地址,因此系统相对比较复杂。 (5分)

4. 简述8086宏汇编源程序的上机调试过程。 (8分)

答:汇编源程序的上机调试主要包括以下步骤: (每个步骤2分) 1.编辑:利用纯文本编辑软件从键盘输入汇编源程序,并以.ASM为扩展名存盘。

2.汇编:利用宏汇编程序MASM对.ASM文件进行汇编。如无语法错误则生成.OBJ文件;否则应对.ASM文件进行修改后重新汇编,直至没有语法错误。

3.链接:利用链接程序LINK将程序各模块连接在一起,并对程序中浮动的段地址定位。如无链接错误则生成.EXE文件;否则应修改.ASM文件后重新汇编、链接。

4.调试:若.EXE文件运行时出错,则需利用调试程序(如DEBUG、TURBO DEBUG或CODEVIEW等)查错,直至程序运行完全正确。调试程序可以提供单步运行和断点运行等手段对程序错误进行定位。

五、 读程序并填空(共25分)

1、 根据要求完成下列程序指令。 (5分)

① AND AX, 00FFH ② OR BX, 00FFH ③ MOV CL, 2

;将寄存器AX的高8位清0,低8位保持不变; ;将寄存器BX的低8位置1,高8位保持不变; ;将寄存器DX中的字数据乘4

DX,CL

2、 说明下列程序段完成的功能,并画出流程图。代码中的循环体部分(第4至8行)可以用哪一条指令替代?(6分)

CLD

MOV SI, OFFSET TAB1 MOV DI, OFFSET TAB2 MOV CX, 50

N1: MOV AL, [SI]

MOV [DI], AL INC SI

INC DI

LOOP N1

答: 该程序段完成的功能是:将存放在TAB1处的50个字节数据复制到表TAB2处。 (2分)

程序流程如左图所示。 (3分) 循环体部分可用指令“REP MOVSB”替代。 (1分)

电子科大

3、 根据下列程序段运行后的结果回答问题。(8分)

MOV AX, 80H MOV BX, 45H CMP AX, BX

① 寄存器AX和BX中的结果值。 ② CF、ZF、OF、SF标志位的状态。 ③ 若AX、BX中为无符号数,标志位的状态说明什么?若为带符号数呢?

答:①(AX)=0080H, (BX)=0045H; ② (CF)=0、(ZF)=0、(OF)=0、(SF)=0; ③ 若为无符号数说明(AX)大于(BX), 若为带符号数说明(AX)大于(BX);

(2分) (4分) (2分)

地 址

0017H 0018H 0019H 001AH 001BH 001CH 001DH 001EH 001FH 0020H

栈顶 栈底

4、 设(SS)=2300H,(SP)=0020H,画出程序段执行后堆栈段的示意图。(6分)

① 在右图中标明堆栈段中已用单元的偏移地址及内容。 ② 在右图中标明栈顶和栈底单元。

MOV AX, 1234H PUSH AX MOV BP, SP PUSH BP

CALL FAR PTR SUB1 ;该指令存放地址为3100:0114H

AGN: ;该指令存放地址为3100:0118H

六、 编程题(共20分)

1. 请使用8086宏汇编语言定义如下数据段:(8分)

① 在数据段中偏移量为100H处的单元里定义字变量VARW1; ② 接着保留50个字节单元,并初始化为01H; ③ 接着存放字符串“1234”; ④ 接着定义常量LEN,其值为该数据段中已定义数据的长度(字节数)。

DATA DATA

SEGMENT ORG 0100H VARW1 DW DB DB LEN EQU ENDS

? 50 DUP(01H) ‘1234’ $-VARW1

(1分) (2分) (2分) (2分) (1分)

2宏汇编语言程序,统计从BUF处连续存放的100个无符号字数据中奇数和偶数的个数,并分别存入变量ODD和EVEN中。 (12分)

DATA SEGMENT BUF DW 100 DUP ( ? ) ODD DB 0 EVEN DB 0 DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA

MOV DS,AX MOV SI,OFFSET BUF MOV CX,100 CLD

L1: LODSW

TEST AX,1 JNZ L2 INC EVEN JMP AGAIN

;数据段定义(3分)

;代码段结构、初始化及返回(3分)

;循环初始化(2分)

;统计(3分)

电子科大

L2: INC ODD AGAIN: LOOP

L1 ;循环控制(1分)

MOV AH, 4CH INT 21H CODE ENDS END

START

本文来源:https://www.bwwdw.com/article/gvl1.html

Top