`や` ES:: `AT&Tアセンブリ構文を使用してどのように私は` SSを付加することができます

StackOverflow https://stackoverflow.com/questions/3433916

  •  26-09-2019
  •  | 
  •  

質問

私はSS:またはES:に追加することなく、AT&Tアセンブリ構文を使用して.byte 0x36.byte 0x26を付加する方法を教えてください。

すなわち。どのように私は使用せず、AT&Tにインテルの構文からmov dword ptr ss:[esp+0x10], offset fooを変換することができるだろう。

.byte   0x36
movl    $foo, 0x10(%esp)

私はまだmovl $foo, %ss:0x10(%esp)

に追加しません、バイナリを通して見て、警告なしで組み立てSS:を試みたが、しています
役に立ちましたか?

解決

SS:ESPレジスタを使用する場合、これらのために、それはすでにデフォルトであるためIIRC、EBPプレフィックスは、必要とされていません。

このアセンブラは、単に節約スペースにそれを省略した理由かもしれません。アセンブラは、生のバイトを変更しないので、手動で、SS:バイトとして0x36プレフィックスを放出することが必要。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top