crlf proc
mov dl,0ah
mov ah,2
int 21h
mov dl,0dh
mov ah,2
int 21h
ret
crlf endp
whitespace proc
mov dl,20h
mov ah,2
int 21h
ret
whitespace endp
putindec proc
push cx
mov bl,0
ppp: mov ah,1
int 21h
cmp al,0dh
je putinexit
sub al,30h
mov ah,0
xchg al,bl
mov bh,10
mul bh
xchg al,bl
add bl,al
jmp ppp
putinexit:pop cx
ret
putindec endp
putoutdec proc
push cx
mov nozero,0
mov cl,100
call main
mov cl,10
call main
mov cl,1
call main
cmp nozero,0
jne ll
mov dl,30h
mov ah,2
int 21h
ll: pop cx
ret
main proc
mov al,bl
mov ah,0
div cl
mov bl,ah
mov dl,al
cmp dl,0
jne ll1
cmp nozero,0
jne ll1
jmp ll2
ll1: mov nozero,1
add dl,30h
mov ah,2
int 21h
ll2: ret
main endp
putoutdec endp
putoutbin proc
push cx
mov nozero,0
mov cl,8
rr2: mov dl,0
test bl,80h
je rr
mov nozero,1
mov dl,1
rr: cmp nozero,0
je rr1
add dl,30h
mov ah,2
int 21h
rr1: shl bl,1
loop rr2
pop cx
ret
putoutbin endp
code ends
end start