Juz w kilku programach znalazłem coś takiego (lub dword ptr), ale niezbyt mogę opis co do tego.To jest jakaś konwersja?
0
0
variable dw 1234h
;...
;al=34h
mov al, byte ptr [variable] ;formatow zapisu byte/word/dword ptr jest mnogo
;...
Chodzi o to , ze zaklaracja variable dw (data word) powoduje, ze przy odwolaniach do niej uzywa sie odwolan 2bajtowych (word), a np. zaladowac do al mozesz tylko jeden bajt...
procedure proc(p:pointer);
assembler;
asm
mov ax,word ptr [p] {ax=offset}
mov bx,word ptr [p+2] {bx=segment}
end;
A tu masz tak samo nierówne rozmiary ax/bx i p (2 i 4 bajty), stąd rowniez potrzeba dokladnego zapisu, do czego sie odwolujesz, bo standardowe dowolanie do p, to odwolanie 4-bajtowe.
... i tak dalej i tak dalej (dword/qword - dla kompilatorów 64-bitowych- niedaleka już przyszlość).