1

プログラム (Linux/FOSS 推奨) または(Intel) アセンブリ命令の 16 進法をすばやく簡単に表示できる Web サイトを探しています。

たとえば、次のように入力します。

test al, al

そしてそれは出力します

84 c0

C でインライン アセンブリを記述し、コンパイル結果を確認することは、迅速かつ便利ではありません。

4

2 に答える 2

3

私はいつもbinutilsからasを使用しています。例えば:

$ echo -e "MOV DWORD PTR [RSP+4], 0x12345678" | as -o /dev/null -64 -al -msyntax=intel -mnaked-reg
GAS LISTING             page 1


   1 0000 C7442404  MOV DWORD PTR [RSP+4],0x12345678
   1      78563412 

$ echo -e "push eax" | as -o /dev/null -32 -al -msyntax=intel -mnaked-reg
GAS LISTING             page 1


   1 0000 50        push eax
于 2013-02-25T17:35:49.140 に答える
2

NASM を NDISASM と組み合わせて使用​​できます。たとえば、次のようになります。

test.asmこれは、命令を含むアセンブリ ファイル (たとえば、という名前) です。

bits 32
test al, al

あなたはそれを組み立てます:

nasm -f bin test.asm -o test.bin

そして、それを分解します:

ndisasm -b 32 test.bin

そして、これはあなたが得るものです:

00000000  84C0              test al,al

もう 1 つの方法は、アセンブル時にリスト ファイルを生成することです。

nasm -f bin test.asm -o test.bin -l test.lst

そして、これはあなたが得るものですtest.lst

 1                                  bits 32
 2 00000000 84C0                    test al, al
于 2013-02-25T19:29:46.807 に答える