Cファイルのアセンブリファイルで定義された変数の読み書きはできますか?私は自分でそれを理解することができませんでした。たとえば、Cファイルは次のようになります。アセンブリから定義された変数にCからアクセスできますか?
int num = 33;
と、このアセンブリ・コード生成:私はアセンブリ学ぶために始めたので、私はスピードは私が組み立てADN下のファイルを選択する必要が理由であることが多い聞い .LONG 33
:
.file "test.c"
.globl _num
.data
.align 4
_numをWindows7の
防御的ではない:) – UmNyobe
*アセンブリを学ぶようになったので、スピードが頻繁に聞こえたので、アセンブリサイズとそのすべてのものを選ぶ必要があります。*可能な人コンパイラが適切なタイミングを正確に把握している場合とそうでない場合がある場合があります。あなたはまだそこにいるようではありません。あなたのコンパイラはあなたよりも優れたアセンブリを出力します(しかし、それは学習をやめることを意味するものではありません)。 \t '.GLOBAL NUM \t NUM: \t \t彼らは、私はそれを試してみましたが、いくつかのリンカーの問題を持っていた –
がまさにそれである、ここでは組立片があります。 int 13'と私のCファイル: '#include extern int num; int main(){ \t printf( "%d \ n"、num); } 'リンカの問題があります:' math.c :(。text + 0xf):未定義の 'num''への参照何が間違っていますか? –
orustam