問題タブ [inline-assembly]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2224 参照

visual-studio - Visual Studio 2008 でインライン アセンブラ コンパイラとして NASM を使用していますか?

NASM を別の .asm ファイルのコンパイラとして設定することはできましたが、NASM をインライン アセンブラ (__asm ディレクティブ) のコンパイラとして設定する方法が見つかりません。例えば、

コンパイルされません (アセンブラー構文エラー、"db" が見つかりました)。それを行う方法はありますか?または、MASM を使用するか、別の開発環境を使用する必要がありますか? ありがとう !

ps :ちなみに、MSDN には手がかりがありません:D

0 投票する
1 に答える
1138 参照

gcc - インライン アセンブリ エラー、gcc コンパイル試行の妨害

こんにちは。

gcc を使用してコンパイルを試みたコードがいくつかありますが、試みは阻止されました。誰かがこの件について私を助けてくれますか?おそらく私が見逃しているものがあります.

Linux Kitchen 2.6.28-15-generic #49-Ubuntu SMP Tue Aug 18 19:25:34 UTC 2009 x86_64 GNU/Linux でこのコードをコンパイルしています。

返されるエラーは次のとおりです。

みんな、ありがとう。

0 投票する
6 に答える
1671 参照

c - インラインアセンブラでCを使う初心者問題

アセンブラーがCでどのように機能するかをテストして学習しようとしているので、いくつかのチュートリアルを閲覧していて、これを見つけました:

}

私が抱えている問題は、実行できないことです.Microsoft Visual Studio 2008のメインメソッド内でコンパイルできますが、実行すると次のエラーが発生します:

Test.exe の 0x00da3660 で未​​処理の例外: 0xC0000005: アクセス違反の読み取り場所 0xffffffff。

2 行目 mov es,ax //lägg startadressen i es

プログラムが 16 ビットであり、VS 2008 がそれを 32 ビット プログラムにコンパイルする可能性はありますか? もしそうなら、VS 2008 に別の方法でコンパイルさせることはできますか?

アセンブラ内の優れたチュートリアルを知っている人はいますか?

0 投票する
2 に答える
2147 参照

gcc - Asmコードの説明

次のGCCインラインasmは、LuaJitのcocoライブラリから取得したものです。誰かがそれが何をするのかを行ごとに説明することができますか?

ありがとう

0 投票する
2 に答える
521 参照

c++ - C++ 関数のコールスタックの切り替え

これは、C コールスタックの切り替えに関する以前の質問です。ただし、C++ は別の呼び出し規約 (thiscall) を使用するため、別の asm コードが必要になる場合があります。誰かが違いを説明し、C++ コールスタック (できれば GCC インライン asm) を切り替えるいくつかのコード スニペットを指摘または提供できますか?

ありがとう、ジェームズ

0 投票する
1 に答える
8219 参照

c - 問題の変換:__ asm__ __volatile__ in/outラッパーのGNUCからMSVCへ

Linux環境でNasmとGNUCインラインasmを扱ってきましたが、この機能はうまく機能しました...しかし、今はWindows環境に切り替えており、Masm(VS2008で)を使用したいのですが、取得できないようです。これが機能する...

私がこのようなものを書くとき...

asmが認識されなくなり、volatileが「string」というエラーをスローします。_asmvolatileを書き込もうとしましたが、「「opcode」にインラインアセンブラ構文エラーがあります。「datatype」が見つかりました」というエラーが表示されます。

0 投票する
3 に答える
6909 参照

c++ - C++インラインアセンブリ内で変数を定義する

次のc++コードがあるとしましょう。

さて、私が知りたいのは、var1を__asmディレクティブの外側で定義したくない場合、それをその中に入れるために何をしなければならないかということです。それも可能ですか?

ありがとう

0 投票する
3 に答える
33999 参照

linux - Linux アセンブラ エラー「'asm' に制約がありません」

Linuxでアセンブラから始めています。次のコードを testasm.c として保存し
、コンパイルしました

この問題を解決するにはどうすればよいですか? (ここから例をコピーしました。)

Debian Lenny、カーネル 2.6.26-2-amd64
gcc バージョン 4.3.2 (Debian 4.3.2-1.1)

解決策:
受け入れられた回答を参照してください。「変更された」句はサポートされていないようです。

0 投票する
4 に答える
7948 参照

c - #includeのない単純なCプログラム

stdio.hを含めずに「printf」を直接呼び出す方法は?

ここで興味深いチュートリアルを見つけました:http:
//www.halcode.com/archives/2008/05/11/hello-world-c-and-gnu-as/

だから、これが私の試みです:

MinGW 4.4を使用していますが、コンパイル方法は次のとおりです。

gcc -c hello.c -o hello.o
ld hello.o -o hello.exe C:/mingw/lib/crt2.o C:/mingw/lib/gcc/mingw32/4.4.0/crtbegin.o C: /mingw/lib/gcc/mingw32/4.4.0/crtend.o -LC:/mingw/lib/gcc/mingw32/4.4.0 -LC:/mingw/lib -lmingw32 -lgcc -lmsvcrt -lkernel32

残念ながら、失敗します。

hello.o:hello.c:(。text + 0x26):`ss'への未定義の参照

これを修正する方法は?

0 投票する
2 に答える
506 参照

c - C でのインライン アセンブリ: 動的レジスタ

C コードでいくつかのアセンブリ コードをインライン化しようとしています。

問題: レジスタと値を動的に定義したい。「val」が C コードで記述された変数であることは知っていますが、レジスタを動的に選択する方法がわかりません (つまり、ユーザー入力レジスタ「dh」または「dl」に従って決定します)。

助言がありますか?