DATAS SEGMENT ;数据段
TISHI DB 'Please enter an integer ',13,10,'$'
SUM DW 0
DATAS ENDS
CODES SEGMENT ;代码段
ASSUME CS:CODES,DS:DATAS
START: MOV AX,DATAS ;初始化
MOV DS,AX
MOV DX,OFFSET TISHI
MOV AH,09H
INT 21H
PART1:
MOV CX,10
MOV AH ,01H ;键盘输入1~361任意数
INT 21H
CMP AL,0DH ;如果是回车,表示输入结束
JZ PART2
SUB AL,30H ;将ASCII码转换成十进制数
PUSH AX
MOV AX,SUM
MUL CX
MOV SUM,AX
POP AX
AND AL,0FH ;取低四位
XOR AH,AH ;高位清零
ADD SUM,AX ;合并本次输入
JMP PART1
PART2: MOV AX,SUM
PART3: MOV CX,AX ;求和
DEC AX
ADD SUM,AX ;合并本次输入
LOOP PART3
MOV AX,SUM
MOV CX,0
MOV BX,10
PART4: MOV DX,0
DIV BX
ADD DL,30H ;将十进制转换成ASCII码
PUSH DX
INC CX
CMP AX,0
JNZ PART4
PART5: POP DX
MOV AH,2 ;输出DL中的字符
INT 21H
LOOP PART5
PART6: MOV AH,01H
INT 21H
CMP AL,0DH ;回车结束
JZ EXIT
LOOP PART6
EXIT: MOV AH,4CH ;退出程序
INT 21H
CODES ENDS
END START
@北极幻狐 除了输入那里 其他基本都懂了