计算机原理与接口技术 请教

编写程序片段,求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