我想抓住FreeBSD中的彙編程序。在handbook's code example for a UNIX filter中,寄存器esp會在每次系統調用後重置。有問題的代碼是: %include 'system.inc'
section .data
hex db 'ABCDEF'
buffer db 0, 0, ' '
section .text
global _start
_st
所以我必須編寫一個調用extern C函數的彙編程序。所以我寫了簡單的pow函數,我用這個C代碼編譯我的彙編程序。一切正常。但正如我從gcc的-S命令看到的那樣,編譯器爲局部變量創建了一個空間。我認爲它會是這樣的: int func(int number)
{
int a = 10;
int b = 5;
int c = 0;
}
我們有3個局部變量,所以編譯