Witam,mogl by mi ktos pomoc z programem podac jakis kod , nie potrafie zrobic wprowadzania z klawiatury 2 liczby hex osmioznakowe , programktoy wkleilem ponizej odejmuje 2 liczby single i wyswietla wynik lecz sa one juz wczsniej zadeklarowane....:)
problem w tym ze dzialanie jest na koprocesorze
dane segment
text0 db 'L1-L2 = $'
licz1 dd 41200000h ;to jest 10 )
licz2 dd 40400000h ;to jest 3 )
wyn dd 00000000h
dane ends
stosik segment stack
db 256 dup(?)
stosik ends
program segment
ASSUME ds:dane,ss:stosik,cs:program
start:
mov ax, seg dane
mov ds, ax
mov ah,9
lea dx,text0
int 21h
finit
fld licz1
fld licz2
fsub
fst wyn
push wyn
pop ax
pop bx
push ax
push bx
xor dx,dx
mov cl,2
petla1:
pop ax
push cx
mov cl,4
petla2:
push cx
clc
mov cl,4
petla3:
rcl ax,1
rcl dx,1
loop petla3
cmp dl,10
jge literka
add dl,48
jmp ascii
literka:
add dl,55
ascii: push ax
mov ah,02h
int 21h
pop ax
xor dx,dx
pop cx
loop petla2
pop cx
loop petla1
mov dl,32 ; kod literki '_'
mov ah,02h
int 21h
mov dl,104 ; kod literki 'h'
mov ah,02h
int 21h
mov dl,101 ; kod literki 'e'
mov ah,02h
int 21h
mov dl,120 ; kod literki 'x'
mov ah,02h
int 21h
mov ah,4ch
int 21h
program ends
end start