私は組み込みアプリケーション用の仮想マシンで動作する単純なソフトCPUをC言語で書こうとしています。私はこれに新しいので、私と一緒に熊。仮想マシンのソフトCPUを書き込むためのパーティション化されたメモリ
私はこれをIDEで実行しようとしていましたが、メモリをmallocする必要があり、レジスタを割り当てるための一貫したメモリアドレスが得られないという問題が発生しました。デバッグ。実際のハードウェアでは、ドキュメントによって特定のレジスタ、メインメモリ、およびハードディスクのアドレスが正しいことがわかりました。私は私のレジスタのマクロを定義して読み書きできるようにしたいと思っていますが、静的メモリアドレスがなければ不可能です。
これは、静的アドレスを持つ静的なチャンクをIDEまたはテキストエディタを使用して自分のマシンに割り当てるのに適しているようです。これを行う最善の方法は何でしょうか?参考までに、私はCloud9 IDEを使用していますが、このプラットフォームでそれを行う方法を理解することはできません。
ありがとうございます!
あなたは間違っていると思っています...あなたの仮想CPU上で実行されているコードは、I/Oレジスタなどの固定アドレスを必要とするかもしれません。あなたのコードは*アドレスを翻訳することになっています。例えば。 RAMの場合、 'malloc'で割り当てられたチャンクにオフセットとして使うことができます。 –