[解決済み] asm("nop");はどのように動作するのですか?
2022-02-12 16:52:28
質問
の定義を再確認しました。 http://en.wikipedia.org/wiki/NOP しかし、もっと簡単な定義が必要だ。
あるコードを偶然見つけたのですが、それが何をするものなのかよくわかりません。
switch (Something)
{
case this_one:
asm ("nop");
break;
case other_one:
asm ("nop");
break;
default:
asm ("nop");
break;
}
解決方法は?
nop
は、何もしないアセンブリ命令で、まあ限りなく何もしないに近いのですが、それでもマシン命令を実行します。
この場合、ステートメント
asm("nop");
は、プログラムにとって意味上の違いはありません。この文が存在する唯一の理由は、コンパイラがコードパスを折り返さないように強制することで、オブジェクトコードを見たり、マシンコードをディスアセンブルしたり、デバッガで表示したりすると、switch文のマシン構造が見えるようにするためだと考えられます。
関連
-
[解決済み】「複数の定義」「最初に定義されたのはここです」エラーについて
-
[解決済み] テスト
-
[解決済み] Cプログラムで「配列の添え字が整数でない」。
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] C言語における「static」の意味とは?
-
[解決済み] Cプリプロセッサはなぜ "linux "という単語を定数 "1 "と解釈するのですか?
-
[解決済み] Intel CPU の _mm_popcnt_u64 で、32 ビットのループカウンターを 64 ビットに置き換えると、パフォーマンスが著しく低下します。
-
[解決済み】C言語の関数ポインタはどのように機能するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】変数の警告が設定されているが使用されていない
-
[解決済み】単項演算子「*」の型が無効(「int」がある)C言語でのエラー
-
[解決済み】 `S_ISREG()` とは何ですか、そして何をするのですか?
-
[解決済み] Connect: ソケット以外でのソケット操作
-
[解決済み】Cygwin - Makefile-error: ターゲット `main.o' のレシピに失敗しました。
-
[解決済み】LinuxのI_PUSHに相当するもの
-
[解決済み】「複数の定義」「最初に定義されたのはここです」エラーについて
-
[解決済み】int型配列へのポインタのスカラ・イニシャライザの過剰要素
-
[解決済み】宣言指定子で2つ以上のデータ型がある場合のエラー【非公開
-
[解決済み】エラー:呼び出されたオブジェクトは、関数または関数ポインタではない