汇编语言的循环程序设计实验:编程求字数据区a中所有正数之和,结果存于字x中。

实验题目

编程求字数据区a中所有正数之和,结果存于字x中。

程序代码如下:

//一个例子
DATA SEGMENT
     A DW 1234H,2345H,0A123H,8345H,7BD0H
     X DW ?
DATA ENDS

STACK SEGMENT PARA STACK
     DW 20H DUP(?)
STACK ENDS

CODE SEGMENT
     ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
       MOV DS,AX
       MOV SI,OFFSET A
       MOV CX,X-A
POSNUM:CMP WORD PTR [SI],0
       JL ISNEGA
       ADD BX,[SI]
       ADD SI,2
       DEC CX
       LOOP POSNUM
       JMP GETSUM
ISNEGA:ADD SI,2
       SUB CX,2
       JMP POSNUM
GETSUM:MOV X,BX
REEND: MOV AH,4CH
       INT 21H
CODE ENDS
END START

运行结果如下:

汇编语言的循环程序设计实验:编程求字数据区a中所有正数之和,结果存于字x中。_第1张图片

你可能感兴趣的:(汇编语言)