[asm]daleki skok w COM

0

Cześć
mam skok warunkowy:

jc BLAD

ale jak kompiluje to wywala mi błąd 'Relative jump out of range by 001Fh bytes
Gdy spróbowałem:

jc near ptr BLAD

i

jc far ptr BLAD

to wywala mi ten sam błąd :-|

0
jnc hop
jmp BLAD
hop:
0

Nie pomogło - po prostu etykieta jest za daleko. W nasmie piszę:

jc near BLAD

i wszystko jest ok.

0

Nie pomogło - po prostu etykieta jest za daleko. W nasmie piszę:

jc near BLAD

i wszystko jest ok.

Nie moze byc.
jxx to skok wzgledny. Mozna maks +-128 bajtow przeskoczyc. Jezeli jest etykieta dalej to trzeba dac skok bezwzgledny. On moze juz skakac praktycznie po calym segmencie. Poniewaz jest to plik com, to tutaj nie bedzie skokow far, bo poza swoj segment nie wyskakujesz (no chyba, zeby, to wtedy sie sprawa komplikuje i trzeba z modyfikatorem far).
I moglbys napisac w jakim kompilatorze to piszesz. Np. FASM sam dobierze najbardziej optymalny kod (far/near) dla skoku.

0

Piszę w TASMIE.
jc near ETYKIETA w NASMIE naprawdę działa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1