2

独自の命令セットを持つ単純なマイクロプロセッサ シミュレーションを作成するために、いくつかの Verilog コードを書いています。これまでのところ、すべてのコードを頭の中でコンパイルし、16 進エディターを使用して、プログラム メモリの開始として使用できるバイナリ ファイルを生成してきました。現在、いくつかの一般的な言語 (C や BASIC など) を自分の命令セットにコンパイルできるようにする必要があります。独自のコンパイラを作成するのは非常に難しく、時間のかかる作業であるため、何らかの方法で拡張できるコンパイラを探しています。 ■ ソース コードは、異なる命令用に簡単に書き直すことができます。

これを行う方法はありますか?そのようなコンパイラは存在しますか?

4

2 に答える 2

2

C のようなものでは、非常に複雑な作業になります。単純な言語のコンパイラを書くよりもさらに複雑です。ただし、この方法を使用する場合は、GCC を参照してください。これはオープン ソースであり、新しいプラットフォームに拡張できるように設計されています。さらに、複数のフロントエンド (プログラミング言語) とバックエンド (ターゲット プラットフォーム用のジェネレーター) の組み合わせをサポートします。

しかし、あなたの活動が何かを学ぶことであり、実際に新しい量産用マイクロプロセッサを設計することではない場合、単純な言語 (Pascal など) のサブセットを選択して、単純なコンパイラを作成したいと思います。最終的には 10,000 ~ 20,000 行のコードになる可能性がありますが、これもまた楽しいものです。

于 2013-11-09T10:33:06.800 に答える