微机原理试题集题库(带答案)

内容发布更新时间 : 2025/6/25 1:56:23星期一 下面是文章的全部内容请认真阅读。

ADD DI, 2 ADD BX, 2 POPF

LOOP AA HLT

7.要求编写完整源程序实现:求1+2+3+····+100的和,并将累加和保存在AX中。(7分)

答:程序如下:

; ------堆栈段定义,本段定义可省略 S1 SEGMENT STACK

DB 100 DUP(0) S1 ENDS

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

ASSUME: CS:C1, SS:S1

START: MOV CX, 64H ;即将100给CX

XOR AX,AX CLC

A1: ADC AX,CX

LOOP A1 MOV AH,4CH INT 21H C1 ENDS

END START

8. 以NUM为首址的存储区中存有若干个字型数,其长度存于NUM1字节单元。求

出数据中的最大值,存入NUM2字单元。

41

MOV SI, OFFSET NUM MOV CX, NUM1 AA2: MOV AX, [SI] AA3: INC SI

CMP AX, [SI] JC AA2 LOOP AA2 HLT

9.设AX寄存器中有一个16位二进制数,编一程序,统计AX中“1”的个数,统计结果送CX中

解答: START :MOV CX ,0 LOOP: SUB AX,0 JZ STP SAL AX,1 JNC NOD INC CX NOD:JMP LOOP STP:HLT

10.编一程序段,完成符号函数(-128≤x≤127):

1 (x.>0)

y= 0 (x=0) -1 (x<0)

假设x的值存放在DATAl中,y的值存放在DATA2中。 解答: START :MOV AL ,DATA1 AND AL,AL JGE BIGR MOV AL,0FFH MOV DATA2.AL HLT BIGR:JE EQUL MOV AL,1 MOV DATA2,AL

42

HLT

EQUL:MOV DATA2,AL HLT

9-1.编一程序段,实现下列功能

?1?Y??0?10?

MOV AX, X CMP AX, 0 JGE AA1 MOV BL, 0AH JMP AA3 AA1: JZ AA2 MOV AL, 01H JMP AA3 AA2: MOV AL, 0H AA3: MOV Y, AL HLT

x?0x?0 x?0

>>灞曞紑鍏ㄦ枃<<
12@gma联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4 ceshi