ЕК
Напишешь
mov ax,[bx], не будет префиксов.Напишешь
mov eax,[ebx], будет 2 префикса.Он сам поймёт, раз используются E-регистры.
Size: a a a
ЕК
mov ax,[bx], не будет префиксов.mov eax,[ebx], будет 2 префикса.L
mov ax,[bx], не будет префиксов.mov eax,[ebx], будет 2 префикса.L
mov ax,[bx], не будет префиксов.mov eax,[ebx], будет 2 префикса.ЕК
ЕК
L
ЕК
RG
d
Hkeyboard:
pushad
sidt fword ptr storage
in al,0x70
bts ax,0x07
out 0x70,al
in al,0x92
btr ax,0x01
out 0x92,al
mov dx,0x0020
mov ds,dx
mov es,dx
mov fs,dx
mov gs,dx
mov ss,dx
jmp far 0x0020:set_RM
RIDTR:
dw 256
dd 0x00000000
set_RM:
mov edx,cr0
and dl,0xfe
mov cr0,edx
jmp far 0x0000:REAL16
use16
REAL16:
xor dx,dx
mov ds,dx
mov es,dx
mov ss,dx
mov fs,dx
mov gs,dx
lidt fword ptr RIDTR
mov ah,0x02
mov ch,byte ptr x
mov cl,byte ptr y
int 0x10
mov ah,0x02
int 0x16
mov ah,0x0a
int 0x10
mov edx,cr0
or dl,0x01
mov cr0,edx
jmp far 0x0008:Protected
use32
Protected:
mov dx,0x010
mov ds,dx
mov es,dx
mov gs,dx
add dx,0x08
mov ss,dx
add dx,0x08
mov fs,dx
mov esp,0x01000000
xor ebp,ebp
lidt fword ptr storage
mov al,0x11
out 0x20,al
out 0xa0,al
mov al,0x30
out 0x21,al
add al,0x08
out 0xa1,al
mov al,0x04
out 0x21,al
mov al,0x02
out 0xa1,al
dec al
out 0x21,al
out 0xa1,al
in al,0x70
btr ax,7
out 0x70,al
call PutChar
.return:
mov al,0x20
out 0x20,al
out 0xa0,al
popad
iretdЕК
U
ni