Advertisement
AVONnadozie

PROGRAM TO DISPLAY A MULTIPLE DIGIT NUMBER IN 8086 ASSEMBLY

Mar 6th, 2013
2,586
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;AUTHOR: ANUEBUNWA VICTOR O.
  2. ;PROGRAM TO DISPLAY A MULTIPLE DIGIT NUMBER IN 8086 ASSEMBLY LANGUAGE
  3. ;ASSEMBLER: MASM611
  4.  
  5. .MODEL SMALL
  6. .STACK
  7. .DATA
  8.  MSG DB 'The multiple digit number is: ','$'
  9. .CODE
  10.  
  11. START:  MOV AX, @DATA
  12.          MOV DS, AX
  13.  
  14.         MOV AH, 09H
  15.         LEA DX, MSG
  16.         INT 21H          
  17.  
  18.         MOV AX, 1234  ;Number to be displayed
  19.         CALL display            ;Calls procedure display to display number
  20.  
  21.         MOV AH, 4CH
  22.         INT 21H
  23.  
  24. display         proc                ;Procedure TO DISPLAY AVERAGE
  25.             MOV BX, 10          ;Initializes divisor
  26.             MOV DX, 0000H           ;Clears DX
  27.             MOV CX, 0000H           ;Clears CX
  28.                
  29.                             ;Splitting process starts here
  30. .Dloop1:        MOV DX, 0000H           ;Clears DX during jump
  31.             div BX              ;Divides AX by BX
  32.             PUSH DX             ;Pushes DX(remainder) to stack
  33.             INC CX              ;Increments counter to track the number of digits
  34.             CMP AX, 0           ;Checks if there is still something in AX to divide
  35.             JNE .Dloop1         ;Jumps if AX is not zero
  36.                
  37. .Dloop2:        POP DX              ;Pops from stack to DX
  38.             ADD DX, 30H         ;Converts to it's ASCII equivalent
  39.             MOV AH, 02H            
  40.             INT 21H             ;calls DOS to display character
  41.             LOOP .Dloop2            ;Loops till CX equals zero
  42.             RET             ;returns control
  43. display     ENDP
  44.  
  45. END START
  46.  
  47. ;OUTPUT
  48. ;The multiple digit number is: 1234
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement