微机原理试题集题库(带答案) 下载本文

2.某外部可屏蔽中断的类型码为12H,它的中断服务程序的入口地址为1000H:2000H,请将中断服务程序入口地址填在中断向量表中.

37

七、程序题

1. 编制程序段,要求实现:将0404H单元开始的256单元清零。 ( 6分)

答: CLD ;清方向标志 LEA DI,0404H ;DI指向字串地址 MOV CX,256 ; 共256个字节 XOR AX,AX ;AX清零 REP STOSB HLT

2.程序分析题。现有下列程序段:(6分) MOV SP, 2000H MOV AX, 3000H

MOV BX, 5000H :

PUSH AX PUSH BX POP AX

试回答:上述程序段执行后SP=___1FFEH______

(AX)=_____5000H______,(BX)=_____5000H______

3.程序分析题。现有下列程序段: (6分) MOV AX,6540H MOV DX,3210H MOV CL,04

SHL DX,CL ;DX=2100H MOV BL,AH ;BL=65H

38

SHL AX,CL ;AX=5400H SHR BL,CL ;BL=06H

OR DL,BL ;DL=06H,故DX=2106H 试问上述程序段运行后,

(AX)=__5400H___________ (BL)=____06H_________ (DX)= _____2106H________

4.请完成如下程序段,使它完成求|AX-BX|,结果放在AX的功能。 CMP AX,BX(1分) JC AA (1分) SUB AX,BX

JMP AA1(2分)

AA:SUB BX(1分) , AX(1分)

MOV AX,BX AA1:HLT

5. 要求从外设71号中取一个数M,判断其值是否在10和20之间,即10≤M<20.如果M≥20H,则送0FFH给外设73H;如果M<10,则送00H给外设73H; 如果10≤M<20,则送88H给外设73H.

。要求编写完整源程序实现上述功能(9分) 答:程序如下:

; ---------程序段定义,不可省略 C1 SEGMENT

START: IN AL, 71H CLC

CMP AL, 10

39

JC LP1 CMP AL, 20 JC LP2 MOV BL, 0FFH LP3: MOV AL, BL

OUT 73H, AL

INT 21H

MOV AH, 4CH LP1: MOV BL, 00 JMP LP3 LP2: MOV BL, 88H JMP LP3 C1 ENDS

END START

6. 编一程序段,要求实现:求两个多字节数之和,这两个数在10050H地址开始的内存单元中,连续存放,低位在小地址一端,结果放在 这两个数之后。设这两个多字节数均为8个字节。(8分)

答: MOV AX, 1000H MOV DS, AX MOV SI, 50H MOV DI, 58H MOV BX, 60H MOV CX, 4 CLC

AA: MOV AX, [SI] ADC AX, [DI] MOV [BX], AX PUSHF

ADD SI, 2

40