2011-01-10 8 views
1

正確に1つのアセンブリ命令のコードを取得するには?正確に1つのアセンブリ命令のマシンコードを取得するだけですか?

たとえば、「mov eax 0x14」です。 gccまたはgdmを使用してlinux端末で取得したいのですが。 radare2パッケージから

+1

するのではなく、 "GDM" よりも "GDB" を意味しましたか?また、言語を指定していません。 Cでインラインasmをしたいのですか? –

+0

私はそれをまったく手に入れません。 – fancyPants

+0

私はもちろんgdbを意味していました。 私は例えばintel notationをマシンコードに変換したいと思っています。 "nop" - > "0x90" gdbでメモリを調べることができますが、私が期待する最も単純な方法ではありません。 出力には、(1つ以上の)16進数のシーケンスまたは類似のものを指定できます。 – ninjaaa

答えて

6
$ echo "mov eax, 0x14" | as -o /dev/null -al -msyntax=intel -mnaked-reg 
GAS LISTING    page 1 


    1 0000 B8140000 mov eax,0x14 
    1  00 
+0

ありがとう、私は悪いOSの下で働いています;)しかし、私は数時間後にそれをチェックします – ninjaaa

+0

(gdb)disas/rメインは私のアプリケーションではかなりうまく動作しますが、mingwからgdbでこれを試してみました。/r "はうまくいかなかった - 興味深い - なぜ? linuxではこの問題はありません。 – ninjaaa

関連する問題