PythonプログラムをIEEE-694のようなマイクロプロセッサ標準アセンブリ言語に変換することはできますか?アセンブリの構文はthis one またはこの他の1に近い:http://www.ethicalhacker.net/content/view/152/2/標準アセンブリへのPythonプログラム?
答えて
Compile python to C、その後、アセンブリにそれを得るためにあなたの好みのCコンパイラを使用しています。
また、PyPyを使用して、ターゲットとしてLLVMを指定し、LLVM Static Compilerを使用してターゲットアーキテクチャのアセンブリ言語を生成します。
私はLLVMを使ってIEEE-694のような非常に標準的で基本的なアセンブリを得る方法を知らない。 – Academia
私は「標準アセンブリ」の考え方を理解していますが、本質的にLLVMのバイトコードは何ですか? –
Pythonは動的に型指定された言語なので、アセンブリプログラムがPythonのランタイム環境/ライブラリを使用してオブジェクトを動的に取得する場合にのみ可能です。
したがって、オーバーヘッドがある場合にのみ可能です。
しかし、PyPyプロジェクトのRPythonがあります。これはPython言語の制限されたサブセットです(これはもはや動的に型指定されず、Pythonの標準ライブラリからほとんどのモジュールが欠けています)。 RPythonプログラムはマシンコードに変換できます(AFAIKはCコードを中間コードとして生成します)。
Python自体が仮想マシンの中間コードを生成します。このコードを見たい場合は、Python標準ライブラリのdisモジュールを使用してください。これにより、Python関数のアセンブリのような表現が生成されます。 「実際の」マイクロプロセッサーはこれを使用できず、使用しているPythonバージョンで結果が変わる可能性があることに注意してください。
私は非常に基本的で低レベルのアセンブリ(マクロなし)を得たいです。私は実際のマイクロプロセッサー上で実行しません。 – Academia
C、FORTRAN、COBOLなどと同じ方法ではありません。ラムダ計算または自動メモリ管理をサポートする言語は、アセンブリに直接コンパイルすることはできません。しかし、コンパイルされたPython、LISPなどを許可するために、インタプリタをマイクロコードまたはブートストラッププログラムで提供することができます(ガベージコレクションなどのいくつかの操作は、まだ組み込まれているインタープリタ内で実行されます)。
infありがとうございます。実際には、私はPythonをCにコンパイルし、GDBで逆アセンブルすることを考えています。しかし、まだ何かを見つけようとしています。 – Academia
- 1. 標準へのアップグレードSQL Server 2005 Expressの標準へのアップグレード
- 2. .NET標準ライブラリのXamarin.Androidアセンブリの参照
- 3. MSBuildインラインタスク - 非標準Microsoftアセンブリの参照
- 4. python標準ライブラリ
- 5. Python MySQLの標準
- 6. Python MixInの標準
- 7. 標準DotNetNukeログインへのカスタムコード?
- 8. Javaの標準入力から標準出力へのGZIP
- 9. 標準入力[Pythonの]
- 10. Pythonの:標準出力
- 11. Pythonのシステム標準サウンド
- 12. Pythonの標準ライブラリでオーバーライドメソッド
- 13. Python標準ライブラリのドキュメント例
- 14. のpythonロギングモジュール - ターミナル、標準出力、標準エラー出力
- 15. POSTマルチパート/フォームデータのコード化されたデータへのPython標準ライブラリ
- 16. Pythonのサブプロセス読み取り標準出力/標準エラー出力<10秒でプログラムがクラッシュし
- 17. 標準Python array.arrayへのリスト(NumPyではなく)
- 18. Pythonロギング:標準出力への出力を無効にする
- 19. Python:標準関数とコンテキストマネージャ?
- 20. .Net標準ライブラリへのbindingRedirectの追加
- 21. 標準偏差の公式へのダイナミックレンジ
- 22. LokiJSと標準のJavascriptオブジェクトへのアクセス
- 23. .NET標準2.0 Nugetパッケージへの更新
- 24. "標準" RGBからグレースケールへの変換
- 25. 標準のPythonライブラリの場所?
- 26. Pythonの標準括弧( "()")のオーバーロード
- 27. Python標準ライブラリの配送部分
- 28. 非標準Pythonインストールの使用
- 29. 自然は、Pythonの標準ライブラリに
- 30. Pythonの標準正規分布
私はたくさん試しました。私はLLVMのようなソフトウェアを見つけましたが、結果は期待通りでした。 – Academia
[Python on a chip](http://code.google.com/p/python-on-a-chip/)プロジェクトを見てください。 –
実際に解決しようとしている問題は何ですか? – SingleNegationElimination