[解決済み] objdumpの出力にあるdata16とはどういう意味ですか?
2022-02-28 21:07:43
質問
objdumpコマンドを使用しています。
$ objdump -M att -d wrapping_counters_test
このリストを制作した(これはリスト全体からの抜粋である)。
100000ae5: 31 ed xor %ebp,%ebp
100000ae7: 31 d2 xor %edx,%edx
100000ae9: 49 89 c4 mov %rax,%r12
100000aec: b8 00 ca 9a 3b mov $0x3b9aca00,%eax
100000af1: 66 66 66 66 66 66 2e data16 data16 data16 data16 data16 nopw %cs:0x0(%rax,%rax,1)
100000af8: 0f 1f 84 00 00 00 00
100000aff: 00
100000b00: 8d 75 01 lea 0x1(%rbp),%esi
の行は何を意味しているのでしょうか?
data16
に続く
mov
というのは?
どのように解決するのですか?
それは、単なるマルチバイトの
nop
アライメントパディングのために挿入されます。最後の行がアドレス
100000b00
であり、16バイトアライメントである。
data16
はオペランドサイズオーバーライドの接頭辞です。通常は1つだけ使用され、別にディスアセンブルされることはなく、命令のサフィックスに含まれます。6つの
66
インスタンスが5つだけ
data16
が出現し、6番目は
w
の中に
nopw
と、通常はそれしか出てきません。命令を長くするために挿入された余分な接頭辞だけが別に表示されます。
関連
-
[解決済み】andiとoriはこのプログラムで何をするのですか?
-
[解決済み] MIPS: スタックポインタ($sp)とスタックの関連した使用法
-
[解決済み] MIPSのコードのこの部分で、oriはどのように使われているのですか?
-
[解決済み] なぜSet on Less ThanはALU演算なのか?
-
[解決済み] .quadディレクティブはアセンブリでどのように機能するのですか?
-
[解決済み] オブジェクトファイルのシンボルテーブルとリロケーションテーブル
-
[解決済み] SRLとSRAの違いは何ですか?[重複しています]。
-
[解決済み] MIPSアセンブリ言語では、なぜ.globl mainを使うのですか?
-
[解決済み] cmp命令の理解
-
[解決済み] インテルアセンブリの%ripレジスタを理解する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】andiとoriはこのプログラムで何をするのですか?
-
[解決済み】MARIEアセンブリ言語で`Skipcond`はどのように動作しますか?
-
[解決済み] Binary Bomb Phase_6 Node Order?
-
[解決済み] cmovlオペコードの中で何と何が比較されるのですか?
-
[解決済み] ループ内で配列の個々の要素にアクセスするにはどうしたらよいですか?
-
[解決済み] ARMv8でリテラル0ではなく、xzrレジスタを使用するのはなぜですか?
-
[解決済み] objdumpの出力にあるdata16とはどういう意味ですか?
-
[解決済み] アセンブリの追加要求の明確化
-
[解決済み] ワードptrとは何ですか?
-
[解決済み] CS:IPの組み立ての意味と仕組みについて教えてください。