📄 3.asm
字号:
.model small
.stack 10
.data
INROOT DB 'THE ROOT: ','$'
INLEFT DB "'S LEFT: ",'$'
INRIGHT DB "'S RIGHT: ",'$'
ent DB 10,13,'$'
ETREE DB 'This is an empty tree!!!','$'
FROOT DB 'PRE_ORDER IS: ','$'
MROOT DB 0ah,0dh,'IN_ORDER IS: ','$'
LROOT DB 0ah,0dh,'POST_ORDER IS: ','$'
TISHI DB 'Result:',0ah,0dh,'$'
TREE_PRE db 33 DUP(' '),'$'
TREE_IN DB 33 DUP(' '),'$'
TREE_POST DB 33 DUP(' '),'$'
.code
main proc far
mov ax,@data
mov ds,ax
mov ax,0600h
mov bh,71h
mov cx,0000h
mov dx,184fh
int 10h
sub di,di
sub si,si
sub bx,bx
mov ax,23h
push ax
mov ah,02h
mov bh,00h
mov dx,0000h
int 10h
mov ah,09h
lea dx,inroot
int 21h
mov ah,01h
int 21h
cmp al,13
jz ppp
mov TREE_PRE[di],al
mov ah,0
push ax
call enter
mov ah,02h
mov dl,TREE_PRE[di]
int 21h
mov ah,09h
lea dx,inleft
int 21h
inc di
jmp input
ppp: jmp end2
main endp
;=====================================
input:
mov ah,01h
int 21h
cmp al,13
jz outenter
mov TREE_PRE[di],al
mov ah,0
push ax
call enter
mov ah,02h
mov dl,TREE_PRE[di]
int 21h
mov ah,09h
lea dx,inleft
int 21h
inc di
jmp input
;=====================================
outenter:
call enter
jmp inputr
;=====================================
inputr:
pop ax
cmp ax,23h
jz output
cmp ah,0
jz setinorder
mov TREE_POST[bx],al
inc bx
jmp inputr
;=====================================
setinorder:
mov TREE_IN[SI],al
inc SI
mov ah,1
push ax
mov ah,02h
mov dl,al
int 21h
mov ah,09h
lea dx,inright
int 21h
jmp input
;=====================================
enter proc near
mov ah,09h
lea dx,ent
int 21h
ret
enter endp
;=====================================
output:
mov ax,0600h
mov bh,71h
mov cx,0000h
mov dx,184fh
int 10h
mov ah,02h
mov bh,00h
mov dx,0000h
int 10h
lea dx,TISHI
mov ah,09h
int 21h
call enter
mov ah,09h
lea dx,FROOT
int 21h
mov ah,09h
lea dx,TREE_PRE
int 21h
call enter
mov ah,09h
lea dx,MROOT
int 21h
mov ah,09h
lea dx,TREE_IN
int 21h
call enter
mov ah,09h
lea dx,LROOT
int 21h
mov ah,09h
lea dx,TREE_POST
int 21h
jmp end0
end2:
mov ah,02h
mov bh,00h
mov dx,0000h
int 10h
lea dx,ETREE
mov ah,09h
int 21h
end0:
mov ax,4c00h
int 21h
end main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -