2009-11-03 3 views
2

오프라인 참조가 없으므로, gpcasm.zip입니다.하지만 내 뎁에 따라 인라인 어셈블리 예제를 시도하면 debian.The gpc에 만족스럽지 않습니다.gnu 파스칼에 인라인 어셈블리를 쓰는 방법은 무엇입니까?

 
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 파스칼에서 인라인 어셈블리에 대한 예제.

감사합니다.

답변

1

문제는 파스칼 파트가 아니라 어셈블러 파트 일 수 있습니다.

비슷한 문제는 this을 참조하십시오.

자세한 내용은 대상 컴퓨터 및 컴파일 옵션에 대한 정보를 참조하십시오.

관련 문제