LoginSignup
7
5

More than 5 years have passed since last update.

Pythonで逆アセンブラする

Posted at

disモジュールを使って、関数のアセンブラコードのようなものを表示できます。

import dis
dis.dis(lambda x, y, z: x + y * z)
  1           0 LOAD_FAST                0 (x)
              3 LOAD_FAST                1 (y)
              6 LOAD_FAST                2 (z)
              9 BINARY_MULTIPLY     
             10 BINARY_ADD          
             11 RETURN_VALUE        

dis.dis(lambda x, y, z: (x + y) * z)
  1           0 LOAD_FAST                0 (x)
              3 LOAD_FAST                1 (y)
              6 BINARY_ADD          
              7 LOAD_FAST                2 (z)
             10 BINARY_MULTIPLY     
             11 RETURN_VALUE        

アセンブラを理解していないし、どういう場面で役立つか分かってないが、Qiitaのテストかねてポスト。

リファレンス

7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5