2
我與若Alt鍵按鍵在Linux引導程序檢查ALT鍵被按下裸機BIOS PC上
int 0x16
mov ah, 0x0e
int 0x10
上面的代碼打印的ASCII字符就好了檢查掙扎,但我該怎麼辦檢查替代關鍵?
我與若Alt鍵按鍵在Linux引導程序檢查ALT鍵被按下裸機BIOS PC上
int 0x16
mov ah, 0x0e
int 0x10
上面的代碼打印的ASCII字符就好了檢查掙扎,但我該怎麼辦檢查替代關鍵?
您測試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:
你能舉個例子嗎? – c4rrt3r
慚愧,我不能用nasm編譯這個。謝謝你! – c4rrt3r
@ c4rrt3r增加了與nasm –