[解決済み】LEALアセンブリ命令は何をするのですか?
2022-01-30 07:50:09
質問内容
との違いについて、少し混乱しています。
leal -4(%ebp), %eax
そして
movl -4(%ebp), %eax
どなたか説明してください。
どのように解決するのですか?
LEA (ロード・エフェクティブ・アドレス) を計算するだけです。 アドレス のオペランドを参照し、実際にそれを参照解除するわけではありません。 ほとんどの場合、例えば配列のインデックス付けのための乗算と加算を組み合わせたような計算を行うだけです。
この場合、単純な数値の引き算をしています。
leal -4(%ebp), %eax
に代入するだけです。
%eax
の値をレジスタに登録します。
%ebp - 4
. これは、1つの
sub
命令で、ただし
sub
は、送信先が送信元の1つと同じであることが必要です。
は、その
movl
のメモリ位置にアクセスします。
%ebp - 4
に格納し、その値を
%eax
.
関連
-
[解決済み】0LLや0x0ULの意味は何ですか?
-
[解決済み] '{'トークンの前に期待される式
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 要素ごとの加算は、結合ループよりも分離ループの方がはるかに高速なのはなぜですか?
-
[解決済み] なぜGCCはa*a*a*a*aを(a*a*a)*(a*a*a)に最適化しないのでしょうか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] ++iとi++の違いは何ですか?
-
[解決済み] Collatz予想の検証を行うC++のコードは、なぜ手書きのアセンブリよりも高速に動作するのでしょうか?
-
[解決済み】C/C++の"-->"演算子とは何ですか?
-
[解決済み] Intel CPU の _mm_popcnt_u64 で、32 ビットのループカウンターを 64 ビットに置き換えると、パフォーマンスが著しく低下します。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] c - 初期化がキャストなしでポインタから整数を作る、さらに2つのコンパイラーエラー
-
[解決済み】strcmpが機能しない
-
[解決済み] (.text+0x20): `main'への未定義の参照と関数への未定義の参照
-
[解決済み】「構造体でもユニオンでもないものにメンバー'*******'を要求する」とはどういう意味ですか?
-
[解決済み】エラー:不明な型名'bool'
-
[解決済み] テスト
-
[解決済み】C言語のフォーマット文字列でデータ引数が使用されない [重複]。
-
[解決済み】.axfファイルとは何ですか?
-
[解決済み】シンプルなC言語のscanfが機能しない?重複
-
[解決済み】whileループの時間複雑性(Big O)はどうやったらわかるの?