跪求1+2+3+……+99+100用汇编语言

emu8086

assume cs:code
code segment
start:
mov ax,0;ax中将保存求和的结果
mov cx,100
s: add ax,cx
loop s
mov ax,4c00h
int 21h
code ends
end start

采用的是MASM5.0的编译器测试通过,下面是调试截图:

注意AX中的13BA,转化为十进制就是5050

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-27
DSEG SEGMENT
RESULT DW ?;存放和
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START:
MOV AX,DSEG
MOV DS,AX
MOV AX,1;从1开始加
MOV RESULT,0;和的初值赋0
MOV CX,100;循环100次
NEXT:
ADD RESULT,AX;每次向和中累加AX
INC AX;然后AX加1
LOOP NEXT
MOV AX,4C00H;结束程序
INT 21H
CSEG ENDS
END START

参考:百度知道本回答被提问者采纳