汇编中将运算结果十六进制数转换为ascii码显示输出,我的为啥不正确,求大佬看看
题目为: 计算S=1+2×3+3×4+4×5+……+N×(N+1)之和 ,直到N×(N+1)>200为止
结果为 038DH, 但是我转换ascii码后输出的不是这个结果,
代码如下:
STACKS SEGMENT PARA STACK 'STACK'
STA DW 64 DUP(0)
TOP EQU $
STACKS ENDS
DATA SEGMENT
RESULT DW 0H
MEM DB 4 DUP(?)
DATA ENDS
CODES SEGMENT
ASSUME CS:CODES,SS:STACKS,DS:DATA
START:
MAIN PROC FAR
MOV AX,STACKS
MOV SS,AX
MOV AX,DATA
MOV DS,AX
LEA SP,TOP
XOR AX,AX
MOV DX,01H
MOV BL,02H
A1: MOV AL,BL
INC BL
MUL BL
CMP AX,00C8H
JA A2
ADD DX,AX
JMP A1
A2: MOV RESULT,DX
MOV AX,RESULT
MOV CX,4
MOV DI,3
L1: PUSH CX
MOV CL,4
ROL AX,CL
MOV BX,AX
AND BX,0FH
ADD BX,30H
JB L2
ADD BX,7
L2: MOV MEM[DI],BL
INC DI
POP CX
LOOP L1
LEA DX,MEM
MOV AH,09H
INT 21H
;MOV AH,8
;INT 21H
;PUSH DX
MOV AH,4CH
INT 21H
RET
MAIN ENDP
CODES ENDS
END START