主题:哪位高手帮我详细的用中文解释一下这个程序的每一句指令 感激不尽
这个是一个在网上的朋友帮我做的一道题
高手帮我详细的用中文解释一下这个程序的每一句指令 感激不尽
DATAS SEGMENT
PRINT DB 'PLEASE INPUT:',13,10,'$'
OUTPUT DB 13,10,'THE RESULT IS:',13,10,'$'
N EQU 100
BUF DB N+1
COUNT DB 0
M DB N+1 DUP(?)
M1 DB N DUP(?)
M2 DB N DUP(?)
DATAS ENDS
STACKS SEGMENT
DB 256 DUP(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
LEA DX,PRINT
MOV AH,9H
INT 21H
LEA DX,BUF
MOV AH,0AH
INT 21H
XOR BX,BX
XOR DI,DI
XOR SI,SI
MOV CL,COUNT
L: CMP M[SI],30H
JB TOM2
CMP M[SI],3AH
JB TOM1
TOM2:MOV AL,M[SI]
MOV M2[DI],AL
INC DI
JMP NEXT
TOM1:MOV AL,M[SI]
MOV M1[BX],AL
INC BX
NEXT:INC SI
LOOP L
MOV M1[BX],'$'
MOV M2[DI],'$'
LEA DX,OUTPUT
MOV AH,9H
INT 21H
LEA DX,M1
MOV AH,9
INT 21H
MOV DL,','
MOV AH,2
INT 21H
LEA DX,M2
MOV AH,9
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START
高手帮我详细的用中文解释一下这个程序的每一句指令 感激不尽
DATAS SEGMENT
PRINT DB 'PLEASE INPUT:',13,10,'$'
OUTPUT DB 13,10,'THE RESULT IS:',13,10,'$'
N EQU 100
BUF DB N+1
COUNT DB 0
M DB N+1 DUP(?)
M1 DB N DUP(?)
M2 DB N DUP(?)
DATAS ENDS
STACKS SEGMENT
DB 256 DUP(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
LEA DX,PRINT
MOV AH,9H
INT 21H
LEA DX,BUF
MOV AH,0AH
INT 21H
XOR BX,BX
XOR DI,DI
XOR SI,SI
MOV CL,COUNT
L: CMP M[SI],30H
JB TOM2
CMP M[SI],3AH
JB TOM1
TOM2:MOV AL,M[SI]
MOV M2[DI],AL
INC DI
JMP NEXT
TOM1:MOV AL,M[SI]
MOV M1[BX],AL
INC BX
NEXT:INC SI
LOOP L
MOV M1[BX],'$'
MOV M2[DI],'$'
LEA DX,OUTPUT
MOV AH,9H
INT 21H
LEA DX,M1
MOV AH,9
INT 21H
MOV DL,','
MOV AH,2
INT 21H
LEA DX,M2
MOV AH,9
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START