2
既然沒有官方的參考資料,我只有一個教程 gpcasm.zip。但是當我試圖按照tut並嘗試debian上的內聯彙編示例時,gpc並不滿意它。如何在gnu pascal中編寫內聯彙編?
gnu_asm.pas : In procedure 'MyStupidDelay': gnu_asm.pas:3: error : can't find a register in class AREG while reloading asm
下面是代碼
program gnu_asm;
Procedure MyStupidDelay(time : integer);
Begin
Asm("0 : pushl $0xfffff
1 : decl(%%esp)
jnz 1b
addl $0x4, %%esp
decl %%eax
jnz 0b"
:
: "a" (time)
: "eax");
end;
begin
write("only for test");
end.
另一個問題,是否有任何其他refernece,教程,內聯彙編在GNU帕斯卡例子。
謝謝。