0

system_handlerで定義されているという名前の関数がありfunc.cます。system_handler関数のアドレスをレジスタに渡し、レジスタを呼び出すことによって、別のアセンブリ プログラムから呼び出す必要があります。

これまでのところ、私はこれを書いています:

       .extern system_handler   ; Is defined in func.c
       mov system_handler, %eax
       call %eax   ; This call is making run time error in emulator 
                   ; fatal: Trying to execute code outside RAM or ROM at 0x8b1cec83

asm ファイルをアセンブルしているときに、次の警告が表示されます。

Warning: indirect call without '*'

使用するコンパイラとアセンブラ: i586-gnu-{gcc/as}、asm ファイルで AT&T 形式を使用。

4

1 に答える 1