📄 3_2.asm
字号:
DATA SEGMENT
ARRAY DB 8,7,6,5,4,3,2,1
RESULT DB 8 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE
MAIN PROC FAR
PUSH DS
SUB AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV AL,65H
MOV AH,35H
INT 21H
PUSH ES
PUSH BX
PUSH DS
MOV DX,OFFSET PRINT
MOV AX,SEG PRINT
MOV DS,AX
MOV AL,65H
MOV AH,25H
INT 21H
POP DS
MOV SI,8
XX:MOV CL,ARRAY[SI-1]
MOV AL,CL
CBW
MOV CX,AX
MOV AX,0
MOV BX,1
X:ADC AX,BX
INC BX
LOOP X
MOV RESULT[SI-1],AL
DEC SI
JNZ XX
CALL PRINT
POP DX
POP DS
MOV AL,65H
MOV AH,25H
INT 21H
RET
MAIN ENDP
PRINT PROC NEAR
PUSH AX
PUSH DX
PUSH CX
PUSH BX
PUSH SI
MOV BX,0
MOV CX,8
MOV DX,0
KK:MOV DL,RESULT[BX]
MOV SI,0
CMP DL,09H
JLE GG
CMP DL,0FH
JLE MM
NN:SBB DL,0AH
INC SI
CMP DL,0FH
JG NN
CMP DL,0AH
JG MM
PUSH DX
MOV DX,SI
ADD DL,30H
MOV AH,02H
INT 21H
POP DX
JMP GG
MM:SUB DL,0AH
INC SI
PUSH DX
MOV DX,SI
ADD DL,30H
MOV AH,02H
INT 21H
POP DX
JMP GG
GG:ADD DL,30H
MOV AH,02H
INT 21H
INC BX
LOOP KK
POP AX
POP DX
POP CX
POP BX
POP SI
RET
PRINT ENDP
CODE ENDS
END MAIN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -