アセンブラ… (・∀・)イイ!
■ このスレッドは過去ログ倉庫に格納されています
0686デフォルトの名無しさん
NGNG割り込み番号は全く違うのですか?
BIOS レベルでは何等変わらないと思ってるのですが・・
後、MASM というか MS-Cのインライン asm では
asm push ds
asm mov ax, 0x80
asm mov ds, ax
asm mov ah, ds:0x00
asm pop ds
こういう書き方ができたのですが、gcc 用に
__asm__("push %eax
push %ds
xor %eax, %eax
mov $0x40, %ax
mov %ax, %ds
xor %ah, %ah
mov 0x96(%ds), %ah
pop %ds
movb $0x10, %ah
xor %al, %al
int $0x16
pop %eax
ret" );
}
こういうのを書くと
Error: `0x96(%ds)' is not a valid 32 bit base/index expression
こうなってしまいます。どうすれば %ds番地 + 0x96番地の中身を
%ah レジスタに mov できるのでしょうか。
■ このスレッドは過去ログ倉庫に格納されています