📄 h212.asm
字号:
stack segment stack'stack'
dw 32 dup(?)
stack ends
data segment
IBF DB 11,0,11 DUP(?)
OBF1 DB 10 DUP(?)
OBF2 DB 10 DUP(?)
data ends
code segment
begin proc far
assume ss:stack,cs:code,ds:data
push ds
sub ax,ax
push ax
mov ax,data
mov ds,ax
MOV DX,OFFSET IBF
MOV AH,10
INT 21H
MOV BL,IBF+1;if mov bx,word ptr ibf+1,it's wrong.becaus now bh is not 00
MOV BH,0
MOV CX,BX
DEC BX
ADD BX,BX
MOV OBF2[BX+1],'$'
MOV DI,0
MOV SI,OFFSET IBF+2
AGAIN:MOV AL,[SI]
MOV OBF1[DI],AL
INC DI
MOV OBF1[DI],';'
INC DI
MOV OBF2[BX],AL
DEC BX
MOV OBF2[BX],';'
DEC BX
INC SI
LOOP AGAIN
DEC DI
MOV OBF1[DI],'$'
MOV DX,OFFSET OBF1
MOV AH,9
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
MOV DL,0DH
MOV AH,2
INT 21H
MOV DX,OFFSET OBF2
MOV AH,9
INT 21H
ret
begin endp
code ends
end begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -