Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;16 bit addition-subtraction
- .model small
- .data
- x dw 1234h
- y dw 555Ah
- output db ?,?,?,?,'$'
- .code
- mov ax,@data
- mov ds,ax
- mov ax,x
- add ax,y
- mov bx,ax
- mov cl,04h
- call print
- lea dx,output
- mov ah,09h
- int 21h
- mov ah,4ch
- int 21h
- .exit
- print proc near
- ;displaying higher order bits
- mov ah,bh;
- and ah,0f0h;
- ror ah,cl
- cmp ah,09h
- jnc ad1
- add ah,30h;
- jmp go1
- ad1:add ah,37h;
- go1:mov [output+0],ah
- mov ah,bh;
- and ah,0fh;
- cmp ah,09h
- jnc ad2
- add ah,30h;
- jmp go2
- ad2:add ah,37h;
- go2:mov [output+1],ah
- ;displaying lower order bits
- mov ah,bl;
- and ah,0f0h;
- ror ah,cl
- cmp ah,09h
- jnc ad3
- add ah,30h;
- jmp go3
- ad3:add ah,37h;
- go3:mov [output+2],ah
- mov ah,bl;
- and ah,0fh;
- cmp ah,09h
- jnc ad4
- add ah,30h;
- jmp go4
- ad4:add ah,37h;
- go4:mov [output+3],ah
- ret
- print endp
- end
Add Comment
Please, Sign In to add comment