Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- stk segment stack
- db 128 DUP(?)
- tos label word
- stk ends
- ;
- data segment
- array db 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
- len equ $ - array
- messageNumEle db "Number of element = $"
- messageEle db "Elements are : $"
- data ends
- ;
- code segment
- assume cs:code, ss:stk, ds:data
- ;
- start:
- ;Macros
- printLn MACRO
- mov dl, 0ah
- mov ah, 2
- int 21h
- endm
- printMessage MACRO param
- mov dx, offset param
- mov ah, 9
- int 21h
- endm
- printRegister MACRO param
- mov dl, param
- add dl, 30h
- mov ah,2
- int 21h
- endm
- ;End of macros
- ;Main
- mov ax, stk ; initialize stack
- mov ss, ax
- mov sp, offset tos ; end of stack initialization
- mov ax, data ; initialize data segment
- mov ds, ax ; end of data initialization
- printMessage messageNumEle
- mov ax, len ;store length for division
- mov dx, 0 ;clear dx which is used to store remainder
- mov bx, 10d ;mov 10 to bx used for division
- div bx ;divide ax by bx(10)
- mov cx, dx
- printRegister al
- printRegister dl
- ;Exit
- exit:
- mov ah,4ch
- int 21h
- code ends
- end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement