binoct

dane segment

zb db 'zmienna bin=$'

zo db 'zmienna osc=$'

d1 dw 0

dane ends

sts segment stack 'stack'

db 512 dup(0)

sts ends

clrscrn macro

mov ah,0

mov al,3

int 10h

endm

ustaw macro x,y

mov bh,0

mov dh,y

mov dl,x

mov ah,2

int 10h

endm

wysw macro txt

mov dx,offset txt

mov ah,9

int 21h

endm

wczytbin macro dana

mov cx,15

wb:

mov ah,8

int 21h

cmp al,'1'

ja wb

cmp al,'0'

jb wb

mov dl,al

mov ah,2

int 21h

mov ah,0

sub al,30h

shl [dana],1

add [dana],ax

loop wb

endm

wco macro da ;wyswietlenie cyfry osemkowo

mov cx,3 ;petla 3 razy

mov ax,0

mov dx,0

wo:

shl dl,1

rcl [da],1

jc jeden

jmp nie

jeden:

add dl,1

nie:

loop wo

add dl,30h

mov ah,2

int 21h

endm

prog segment

assume cs:prog, ds:dane, ss:sts

start:

mov ax, seg dane

mov ds,ax

clrscrn

ustaw 2,10

wysw zb

ustaw 2,12

wczytbin d1

ustaw 2,15

wysw zo

ustaw 2,17

mov cx,5

wpco: ;wyswietlenie 5 cyfr osemkowo

push cx

wco d1

pop cx

loop wpco

mov ah,4ch

int 21h

prog ends

end start


Wyszukiwarka

Podobne podstrony:
binoct

więcej podobnych podstron