编写程序片段,求1+2+3+...+100的累加和,结果存于AX中。
AX=0
for i in range(1,101):
AX = AX + i
print(AX)
计算机原理与接口技术,这是汇编题吗?
DATA SEGMENT
SUM DW ;来存放最终的累加和
DATA ENDS
STACK SEGMENT STACK
DB 200 DUP(0)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
MOV AX,0 ;AX赋值为0,用于循环相加
MOV CX,100 ;CX为循环的次数
LOP1: ADD AX,CX ;AX记录CX每次自减的结果
LOOP LOP1 ;无条件循环并且循环一次CX自减,直到CX为0,结束循环
MOV SUM,AX ;将最后的结果赋值给SUM
MOV AX,4CH ;调用4CH号功能,返回DOS操作系统
INT 21H ;终止当前程序的运去,并返回DOS系统
CODE ENDS
END START