北大匯編語(yǔ)言程序設(shè)計(jì)上機(jī)題2

字號(hào):


    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