Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .MODEL SMALL
- .STACK 100H
- .DATA
- PROMPT_1 DB 'Enter a single-digit number: $\'
- PROMPT_2 DB 0DH,0AH,'Number of zeros: $\'
- .CODE
- MAIN PROC
- MOV AX, @DATA
- MOV DS, AX
- LEA DX, PROMPT_1
- MOV AH, 9
- INT 21H
- XOR BX, BX
- MOV CX, 16
- MOV AH, 1
- @INPUT:
- INT 21H
- CMP AL, 0DH
- JE @END
- AND AL, 0FH
- SHL BX, 1
- OR BL, AL
- LOOP @INPUT
- @END:
- MOV CX, 16
- XOR AX, AX
- @LOOP:
- ROL BX, 1
- JNC @NEXT
- INC AX
- @NEXT:
- LOOP @LOOP
- MOV BX, 8
- SUB BX, AX
- MOV AX, BX
- MOV CX, AX
- LEA DX, PROMPT_2
- MOV AH, 9
- INT 21H
- MOV AH, 2
- CMP CL, 10
- JAE @TWO_DIGIT
- OR CL, 30H
- MOV DL, CL
- JMP @DISPLAY
- @TWO_DIGIT:
- MOV DL, 31H
- INT 21H
- SUB CL, 10
- OR CL, 30H
- MOV DL, CL
- @DISPLAY:
- INT 21H ; display the value
- MOV AH, 4CH
- INT 21H
- MAIN ENDP
- END MAIN
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement