「Pythonのバイトコードの逆アセンブラ」の版間の差分

提供: Python入門
移動: 案内検索
(ページの作成:「Pythonのバイトコードは、disモジュールで逆アセンブルできます。 __TOC__ == 概要 == disモジュールは、逆アセンブラです。デバ...」)
 
(相違点なし)

2014年1月25日 (土) 09:47時点における最新版

Pythonのバイトコードは、disモジュールで逆アセンブルできます。

概要

disモジュールは、逆アセンブラです。デバッグ目的で利用します。

実行例

この例は、以下の手順です。

  1. myfunc を定義します。
  2. dis モジュールをロードします。
  3. dis.dist() で myfunc を逆アセンブルします。
% python
Python 2.7.2 (default, Feb 15 2012, 23:12:46)
[GCC 4.2.1 20070831 patched [FreeBSD]] on freebsd9
Type "help", "copyright", "credits" or "license" for more information.
>>> def myfunc(arg):
...     return len(arg)
...
>>> import dis
>>> dis.dis(myfunc)
  2           0 LOAD_GLOBAL              0 (len)
              3 LOAD_FAST                0 (arg)
              6 CALL_FUNCTION            1
              9 RETURN_VALUE

関連項目