Глючат процедуры побитового сдвига shl shr в применении к LongInt

Можно поставить фикс BP7.0 -> BP7.01, или же использовать свои процедуры. Вот пример (работают на 386+):

function LongShl(A: LongInt; B: Byte): LongInt; assembler; asm mov cl,[B] db $66 {код опеpаций с 32-битными pегистpами} mov ax,word ptr [A] db $66 shl ax,cl db $66 push ax pop ax pop dx end; function LongShr(A: LongInt; B: Byte): LongInt; assembler; asm mov cl,[B] db $66 mov ax,word ptr [A] db $66 shr ax,cl db $66 push ax pop ax pop dx end;

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: