code
ワードは see
で逆アセンブルできます(see Debugging)。
以下を使用してメモリーのセクションを逆アセンブルできます
discode
( addr u – ) gforth-0.2 “discode”
逆アセンブラーのフック: addr から u バイトのコードを逆アセンブルします。
Gforth には 2 種類の逆アセンブラーがあります。 Forth 逆アセンブラー(一部の CPU で利用可能) と gdb
逆アセンブラー(gdb
および mktemp
を備えたプラットフォームで利用可能)です。
両方が使用可能な場合は、 Forth 逆アセンブラがデフォルトで使用されます。 gdb 逆アセンブラーを使いたい場合は、 以下のようにします
' disasm-gdb is discode
どちらも使用できない場合は、discode
が dump
を実行します。
Forth 逆アセンブラーは通常、 アセンブラーに入力できる出力(つまり、同じ構文など)を生成します。 コメントには追加情報も含まれます。 特に、 命令のアドレスは命令の前のコメントで示されます。
gdb 逆アセンブラーは、 デフォルトの形式(flavour)(386 および AMD64 アーキテクチャの AT&T 構文)で、 gdb
disassemble
コマンドと同じ形式で出力を生成します(see Source and
machine code in Debugging with GDB)。
see
は、 コードの終わりの認識が信頼できないため、 ワードの実際のコードより多めに表示したり少なめに表示したりする場合があります。
十分に表示されない場合は、 discode
を使用できます。 コード・ワードの直後に名前付きワードが続かない場合は、
さらに表示される可能性があります。 他に何かがある場合は、 ワードの後に align latest ,
を付けると、
末尾が認識されるようになります。