📄 ex1.asm
字号:
NAME ex1
PAGE 50, 70
DAT SEGMENT PARA 'DAT'
A1 DB 12H, 34H, 56H, 78H, 9AH
DB 0BCH, 0DEH, 0F0H
B1 = $ - A1
B2 = B1 * 2
A2 DB B2 DUP(?)
DAT ENDS
STAC SEGMENT PARA STACK 'STA'
STA1 DW 100 DUP(?)
STAC ENDS
CODE SEGMENT PARA 'CODE'
ASSUME CS:CODE, DS:DAT
ASSUME SS:STAC, ES:DAT
STAR PROC FAR
PUSH DS
XOR AX, AX
PUSH AX
MOV AX, DAT
MOV DS, AX
MOV ES, AX
LEA SI, A1
LEA DI, A2
MOV CX, B1
G1: MOV BL, 2
MOV AL, [SI]
MOV BH, AL
PUSH CX
MOV CL, 4
ROR AL, CL
POP CX
G2: AND AL, 0FH
DAA
ADD AL, 0F0H
ADC AL, 40H
MOV [DI], AL
INC DI
MOV AL, BH
DEC BL
JNZ G2
INC SI
LOOP G1
MOV SI, OFFSET A2
MOV CX, B2
CALL P1
RET
P1 PROC
MOV BL, 2
G: MOV DL, [SI]
MOV AH, 2
INT 21H
INC SI
DEC BL
JNZ T
MOV DL, 48H
MOV AH, 2
INT 21H
MOV DL, ' '
MOV AH, 2
INT 21H
MOV BL, 2
T: LOOP G
RET
P1 ENDP
CODE ENDS
END STAR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -