用汇编语言编写程序:把一串字符从键盘输入,然后逆序输出。
;================================================
满意回答
;
DSEG SEGMENT
SHOW DB 'Please input a string: $'
NAM DB 200
DB ?
DB 200 DUP(0)
DSEG ENDS
SSEG SEGMENT STACK
DB 200 DUP(?)
STACK_TOP LABEL WORD
SSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG, DS:DSEG, SS:SSEG
START:
MOV AX, DSEG
MOV DS, AX
MOV AX, SSEG
MOV SS, AX
MOV SP, OFFSET STACK_TOP
MOV DX, OFFSET SHOW
MOV AH, 09H
INT 21H
MOV DX, OFFSET NAM
MOV AH, 0AH
INT 21H
MOV DL, 0AH
MOV AH, 02H
INT 21H
MOV DL, 0DH
MOV AH, 02H
INT 21H
MOV CL, NAM + 1
MOV CH, 0
CMP CX, 0
JE EXIT
MOV SI, OFFSET NAM + 2
ADD SI, CX
MOV AH, 02H
L1:
DEC SI
MOV DL, [SI]
INT 21H
LOOP L1
EXIT:
MOV AH, 4CH
INT 21H
CSEG ENDS
END START
;================================================
本程序执行结果如下:
输入:ABCD
输出:DCBA
;================================================
回答者: 做而论道 | 十六级 2012-3-20 20:02
原题网址:http://zhidao.baidu.com/question/397041159.html
;================================================