微机原理试题及答案

  • 格式:doc
  • 大小:128.50 KB
  • 文档页数:5

试 题

一、计算题

1. 将下列各二进制数转换成为十进制数

(1)1101.101B (2) 0101.0111B

13.625D 5.4375D

2. 将下列各十进制数转换成为二进制数(最多保留三位小数)

(1)102.625D (2)13.72D

1100110.101B 1101.110B

3. 将下列各二进制数转换成为16进制数

(1)0101.101B (2) 11001.1001B

5.AH 19.9H

4. 将下列各16进制数转换成为二进制数

(1)E7.C8H (2)D2.43H

11100111.10101000B 11010010.01000011B

5.求下列数的原码 反码和补码

(1)+117, -117 (2)+25, -25

(1)原码:+117=01110101B -117=11110101B

反码:+117=01110101B -117=10001010B

补码:+117=01110101B -117=10001011B

(2)原码:+25=00011001B -25=10011001B

反码:+25=00011001B -25=11100110B

补码:+25=00011001B -25=11100111B

6. 求下列有符号数补码的真值

(1)11101010 (2)10111001

-22D -71D

二、程序分析题

1.现有下列程序段:

MOV AX,2211H

MOV BX,4433H

PUSH AX

PUSH BX

DEC AX

IN BX

POP AX

POP BX

试回答:

①上述程序段执行后(AX)=__4433h__,

(BX)=__2211h__,

②设执行前SP=200H,执行后SP=_200h___

2.现有下列程序段:

STC

MOV AL,60H

MOV BL,30H

MOV DL,40H

ADC DL,AL

SHR BL,1

MOV CL,3

ROL AL,CL

则执行上述程序段后:(AL)= 03H

;(BL)= 18H

;(DL)= A1H ;(CF)= 1 ;

3.假定(DS)=6000H, (SS)=1000H, (SI)=0200H, (BX)=0010H, (BP)=00A0H,常数VAL=0050H, 请指出下列指令中源操作数是什么寻址方式?源操作数的物理地址是多少?

1) MOV AX,0ABH 立即寻址 无

2) MOV AX,BX 寄存器寻址 无

3) MOV AX,[1000H] 直接寻址 61000H

4) MOV AX,VAL 立即寻址 无

5) MOV AX,[BX] 寄存器间接寻址 60010H

6) MOV AX,[BP] 寄存器间接寻址 100A0H

7) MOV AX,[SI+1] 变址寻址 60201H

8) MOV AX,[BX+10H] 基址寻址 60020H

9)MOV AX,VAL[BX] 基址寻址 60060H

10)MOV AX,VAL[BP] 基址寻址 100f0H

11) MOV AL,[BP+SI+VAL] 基址变址寻址 102f0H

12) MOV AL,[BX+SI+100H] 基址变址寻址 60310H

4、设8086内各寄存器的内容如下:

(DS)=6000H, (SS)=3000H, (BX)=0100H, (SI)=0002H, (BP)=1050H,

在存储器中,各个物理地址内的数据如下:

(60100H)=11H, (60101H)=22H, (60102H)=33H, (60103H)=44H,

(61200H)=55H, (61201H)=66H, (61202H)=77H, (61203H)=88H

(31050H)=AAH, (31051H)=BBH, (31052H)=CCH,

(31053H)=DDH, (31054H)=EEH, (31055H)=FFH

试说明下列各条指令执行完后AX或AL寄存器的内容:

1) MOV AX,1200H 2) MOV AX,BX

AX=1200H AX=0100H

3) MOV AX,[1200H] 4) MOV AX,[BX]

AX=6655H AX=2211H

5) MOV AL,[BP] 6) MOV AX,[BX][SI]

AL=AAH AX=4433H

7) MOV AX,1100[BX][SI] 8)MOV AL,1100[BX][SI]

AX=8877H AL=77H

9) MOV AX,[BP+SI] 10) MOV AL,[BP+4]

AX=DDCCH AL=EEH

三、程序设计题(二选一)

1.完成一个完整的简单汇编语言程序,具有数据段、堆栈段和代码段,用到分支结构或循环结构,并进行编译、链接、DEBUG单步调试操作和运行(注意不要使用除4CH以外其它的INT 21H功能)

要求用VISIO软件画出程序流程图,将程序贴入作业,关键步骤加入注释。

将编译、链接、DEBUG单步调试过程的屏幕截图贴入作业中。(注:使用DEBUG中r, t, d DS:0000三个操作)

例子:

(1)程序流程图:(VISIO模版)

开始结束条件判断 NY

(2)程序和注释

……………………………………………………… ; 注释

(3)编译和链接截图(TRY2.asm程序)

(4)DEBUG单步调试截图 (注:使用到DEBUG中r, t,

d DS:0000三个操作)

2. 编写一段程序使用DOS功能调用INT 21H中1H号功能和2H号功能,采集键盘上的按键输入,当按键输入为‘y’时,电脑屏幕显示‘R’; 键盘输入其它按键时,电脑屏幕显示‘W’,连续采集6次并显示后退出程序返回DOS。

要求用VISIO软件画出程序流程图,将程序贴入作业,关键步骤加入注释,将程序运行时的屏幕截图贴入作业。

(1) 程序流程图

(2) 程序和注释

data SEGMENT

Hello DB '??'

data ENDS

prog SEGMENT

ASSUME CS:prog,DS:data

start: MOV AX,data

MOV DS,AX

MOV CX,5 ;循环计数器置初值

label1:

MOV AH,1 ;等待键入字符

INT 21H ;结果在AL中

CMP AL,'y' ;是’Y’?

JNZ no

MOV AH, 2

MOV DL, 'r'

INT 21H

JMP yes

no: MOV AH, 2

MOV DL, 'w'

INT 21H

yes: LOOP label1

MOV AH,4CH

INT 21H ;退回DOS

prog ENDS

END start

(3) 程序运行截图