Turbo CのCコードにアセンブリコードを含める方法
-
04-07-2019 - |
質問
アセンブリコード行をCプログラムに含める方法
Turbo cでは、アセンブリコードファイル(.asm)を少数の.cファイルのプロジェクトに追加する可能性はありますか?
解決
アセンブリコードを含める1つの方法は、以下の例に示すように、ラッパー関数を追加してasmブロックにアセンブリコードを記述することです。
void wrapper_function()
{
asm
{
/* your assembly code */
}
}
他のヒント
メイクファイルを使用して、さまざまなターゲットタイプのアクションを定義できます。 Cタイプ(foo.cなど)の場合、Cコンパイラーを呼び出します。 ASMファイルの場合は、アセンブラーを呼び出します。どちらかからの出力は、リンカーによってすべて一緒にコンパイルできるオブジェクトファイル(.oなど)である必要があります。
アセンブリが少しある場合は、インラインに進みます。それ以外の場合は、すべてを管理する最善の方法として、個別のモジュールと機能分解をお勧めします。特に、異なるターゲットをサポートする必要がある場合(クロスプラットフォーム開発など)。
オブジェクトファイルをリンクすることもできます。ただし、インラインアセンブラのメンテナンスははるかに簡単です。
void func()
{
asm://assembly statements...
asm://assembly statements...
...
}
所属していません StackOverflow