2013-01-23 21 views

回答

3

您測試0040h:0017h的第3位。

http://www.ousob.com/ng/bios/ng559a.php

像這樣的東西(在AT/T語法):

mov $0x40,%ax 
mov %ax,%es 
testb $8,%es:0x17 
jz  noAltKey 
.... ;; Alt pressed 
noAltKey: 

objdump -d -M intel,這就是它的外觀在Intel語法:

0: 66 b8 40 00    mov ax,0x40 
4: 8e c0     mov es,eax 
6: 26 f6 04 25 17 00 00 test BYTE PTR es:0x17,0x8 
d: 00 08 

UPD:以下應該爲NASM工作:

mov ax,0x40 
mov es,eax 
test [es:0x17],byte 0x8 
jz  noAltKey 
.... ;; Alt pressed 
noAltKey: 
+0

你能舉個例子嗎? – c4rrt3r

+0

慚愧,我不能用nasm編譯這個。謝謝你! – c4rrt3r

+1

@ c4rrt3r增加了與nasm –