满意答案
queen露娜S
2013.05.31
采纳率:52% 等级:11
已帮助:4092人
DATASEGMENT
MAXLEN DB 200
ACTLEN DB ?
DB 200 DUP(?)
INFO1DB 0AH,0DH,'input the string:','$'
INFO2DB 0AH,0DH,'string length:'
N DB 20H,20H,20H,'$'
DATAENDS
STACKSEGMENT STACK
DB 200 DUP(0)
STACKENDS
CODESEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START:MOV AX,DATA
MOV DS,AX
LEA DX,INFO1
MOV AH,09H
INT 21H
LEA DX,MAXLEN
MOV AH,0AH;输入字符
INT 21H
;*************
MOV SI,2
MOV BL,10
MOV AH,0
MOV AL,ACTLEN
NEXT:DIV BL
ADD AH,30H;将数字转化为ASCII
MOV N[SI],AH
DEC SI
CMP AL,9
JLE FIN
MOV AH,0
JMP NEXT
FIN:ADD AL,30H
MOV N[SI],AL
LEA DX,INFO2
MOV AH,09H
INT 21H;输出最终结果
MOV AH,4CH;程序结束
INT 21H
CODEENDS
END START
程序运行结果:
00分享举报