11-12-3期中考试试卷 - 答案

2019-08-20 20:23

“微机系统与接口”测验 2012.4

学号 姓名 成绩

一、填空(40分):(除第7题外,每空1分)

1、微型计算机由___CPU_、__存储器_、__I/O口___和____系统总线__构成。其中__系统总线_____是各部分之间传送数据、地址和控制信息的传输通道。 2、8086CPU一个总线周期至少包括____4__个时钟,是否需要插入等待状态,是在___T3___时刻测量___ READY __引脚的电平。

3、8086/8088CPU由 BIU 和 EU 两个单元组成,其中,通用寄存器属于 EU 单元,20位物理地址的形成在 BIU 单元。 4、8086/8088CPU的地址线有 20 根,可以寻址 1M字节 的存储空间。地

址线和 数据线 、 状态线是分时复用的,用 ALE 信号作为地址

的锁存信号。

5、8086/8088 系统中,设当前的 DS=2000H, SS=1000H, BX=300H, BP=500H,

SP=100AH, 则指令MOV AX, [BP+100H]中源操作数的物理地址为 10600H,10601H ,指令 PUSH [BX+100H]的目的操作数物理地址为 11008H,11009H ,源操作数的物理地址为 20400H,20401H ,执行后SP的值为 10008H 。 6、8086CPU进行有符号数运算:7158H+5289H,试问运算后下列各标志位为:

SF=__1___ OF=___1__ ZF=_____0 AF=_1____ PF=___1__ CF=___1__ (每空0.5分)

7、下列数据段所占用的内存情况如下:

DATA SEGMENT

DA1 DQ 1234H, 5678H ; 16 个字节 DA2 DW 3 DUP (5H, 678H, 2 DUP(?)) ; 24 个字节 DA3 DB ‘HAPPY NEW YEAR!’,0DH,0AH ; 17 个字节 DATA ENDS

8、指出下列指令中源操作数的寻址方式: MOV CX,DISP[BX] 带偏移量的基址寻址

PUSH DS 寄存器寻址 MOV AX,6[BP+SI] 带偏移量的基址加变址寻址 LODSB 隐含寻址(串操作指令寻址) IN AL, DX 间接端口寻址 9、若下列指令为非法指令,试写出合适的指令串代替之。

OUT 2F0H, AL MOV DX,2F9H OUT DX,AL MOV ES, 2000H MOV AX, 2000H MOV ES,AX ROR BH, 3 MOV CL,3 ROR BH,CL

1

XLAT AL, BX

XLAT

NEG BL, AL MOV AH, 04H[BX][BP] DIV BX, AL POP AL NEG BL MOV SI,BX MOV AH,04H[SI][BP] DIV BX POP AX

二、(28分)分析下面程序段,说明每条指令的运行情况,并写出最后的运行结果。(每空1分) 1、 SUB BX,BX ;

MOV AX,0FFFH ; MOV SI,0AH ; MOV CX,0404H ; A: SUB DX,DX ;

DIV SI ;

OR ROR DEC JNZ HLT

BX,DX ; BX,CL ; CH ; A ; ;

程序运行结束后,AX = 0 ; BX = 4095H 2、 MOV SI, 4000H ;

MOV DI, 4100H ; MOV AL, [SI] ; ADD AL, [DI] ; DAA ; MOV [DI], AL ; MOV AL, [SI+1] ; ADC AL, [DI+1] ;

DAA MOV

[DI+1], AL

1) 根据给定的初值,写出运行结果

初值:[4000H] = 63H, [4001H] = 54H,

[4100H] = 88H, [4101H] = 29H 结果:[4100H] = 51h , [4101H] = 84h 。 2) 在以上程序段中,当第二次执行DAA指令后,AL = 84h 。

2

3)如果以上程序段去掉两条DAA指令,但初值不变,则运行结果为:

[4100H] = EBH , [4101H] = 7DH 。

三(32分)、阅读下面程序,解释带“;”的指令功能,并回答问题。(每空1分) 1、 DATA SEGMENT

NUM DB 85,121,60,52,245,108,94,75,186,250

COUNT EQU $-NUM ; RESULT DB 0 DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA ;

STR: MOV AX,DATA

MOV DS,AX * MOV

MOV DEC MOV

LOP: INC

CMP

BX,OFFSET NUM ; CX,COUNT CX

AL,[BX] ; BX AL,[BX] ;

JAE NEXT ;

MOV AL,[BX]

NEXT: LOOP LOP ;

MOV AH,4CH

INT 21H ;

CODE ENDS ;

END STR ;

回答下列问题:

1) 该程序完成什么功能__找出NUM缓冲区中10个无符号数的最大值,并将其存入RESULT单元。

2) 程序执行后RESULT单元内容为____250_____

3) 程序中打“*”的语句可用___ LEA BX, NUM _____________语句代

4) 将指令JAE改成JBE后,程序功能变为:_找出NUM缓冲区中10个无符号数的最小值,结果存入result ,RESULT单元内容变为___52______ 5) 数据中若有负数,语句JAE应如何修改_______JGE NEXT_____________

3

2、 STACK

STACK

DSEG BLOCK COUNT RESULT DESG

CODE MAIN: CON:

SEGMENT PARA STACK ‘STACK’ ; 定义堆栈段 DB 100 DUP (0) ENDS

; 为堆栈分配100字节,初始化

SEGMENT

DB 31, 56, 17, 88, 25, 67, 90 EQU $-BLOCK DB 0 ENDS SEGMENT

ASSUME CS:CODE, DS:DSEG, SS:STACK, ES:DSEG MOV AX, DSEG MOV DS, AX

MOV ES, AX

MOV SI, * ; 将BLOCK的偏移地址赋值给SI,使得SI指向该数据区 MOV CX, COUNT ; 设置计数值 MOV AL, [SI] ; 将偏移地址为[SI]的字节单元内容送到AL TEST AL, 01H ; 将AL中内容与01H相与 JZ NEXT ; 判断AL中数是否为奇数,若不是,跳转

INC RESULT ; 若是,RESULT值加1

NEXT: INC SI

LOOP CON ; CX-1,不为0跳转至CON

MOV AH, 4CH

INT 21H ; 返回DOS

CODE ENDS END MAIN

回答下列问题:

1)程序完成 统计数据段BLOCK缓冲区中奇数的个数,并存入RESULT单元 操作。

2)程序执行后RESULT单元的内容为 4 。

3) 程序(*)对应的指令, 填入源操作数后应为 MOV SI, OFFSET BLOCK 。

4)在不改变原来程序功能的情况下,程序中TEST AL, 01H可用另一条指令 AND AL, 01H 代替。 5)如果将程序中“TEST AL, 01H JZ NEXT” 改为“TEST AL, 0FFH JNP NEXT”,那么,程序执行后RESULT单元的内容为 4 。

4


11-12-3期中考试试卷 - 答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:江苏省2011年普通高校对口单独招生文化统考电子电工试卷及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: