Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- getNum proc
- push ax
- push bx
- push cx
- push dx
- mov cl, 0 ;How many digits
- mov bx, 0 ;Holds the number
- nextDigit:
- mov ah, 1 ;Get char
- int 21h
- cmp al, 13 ;If enter end
- je return
- sub al, 48
- jc noDigit
- cmp al, 9
- jbe yesDigit
- noDigit:
- call delete
- jmp nextDigit
- yesDigit:
- inc cl
- mov dx, 10
- mov ah, 0
- push ax ;Save ax
- mov ax, bx
- mul dx
- mov bx, ax
- pop ax
- add bx, ax
- cmp cl, 4
- jne nextDigit
- return:
- mov answer, bx
- pop dx
- pop cx
- pop bx
- pop ax
- ret
- getNum endp
- delete proc
- push ax
- push dx
- mov ah, 2
- mov dl, 08h ;Backspace
- int 21h
- mov ah, 2
- mov dl, 00h ;null
- int 21h
- mov ah, 2
- mov dl, 08h ;Backspace
- int 21h
- pop dx
- pop ax
- ret
- delete endp
Advertisement
Add Comment
Please, Sign In to add comment