問題タブ [nand2tetris]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
memory - nand2tetris. メモリの実装
nand2tetri講座でデータメモリ実装を実現しました。しかし、実装のいくつかの部分が本当にわかりません:
- ここで何をロードするかを担当します。load が 0 の場合 - いずれにしても Dmux4Way から 0 0 0 0 になることを理解しています。つまり、メモリにデータをロードしない方法です。
少なくとも、Screen で address[0..14] の代わりに address[0..12] を入力した理由は理解できません - 完全なアドレスです。私の意見では、スクリーン メモリ マップは RAM メモリ マップの後にとどまるため、秒を使用する必要があります。また、スクリーン メモリ マップを要求する場合は、範囲 (16 384 - 24 575) - 10 進数または (100000000000000 - 101111111111111) - バイナリを使用する必要があります。しかし、その範囲を 13 幅のバス (アドレス [0..12]) だけで表現するにはどうすればよいでしょうか??? それは不可能だ。
したがって、画面のメモリ マップを表現したい場合は、上に示した範囲を使用する必要があります。そして、その範囲には15の幅またはアドレス[0..14]がありますが、アドレス[0..12]ではありません(幅13)。しかし、なぜ address[0..12] だけで機能し、address[0..14](full address) が機能しないのですか?
DMux4Way(in=ロード、sel=アドレス[13..14]、a=RAM1、b=RAM2、c=scr、d=kbr);
assembly - コードの 2 行目で比較エラーが発生し続けるのはなぜですか? これを修正するにはどうすればよいですか?
CPU シミュレータ Add4.asm のハック アセンブリ言語で、2 行目でテストが失敗し続けます。これを修正するためにさまざまな形式を試しましたが、わかりません。どうすれば0に設定できますか、それが問題でない場合、コードを修正するにはどうすればよいですか? ADD4 ハック アセンブリ言語のヘルプ
.asm ファイルを実行するたびに、2 行目で比較エラーが発生します。この問題の解決を手伝ってください。これが私の .asm コードで、その後に ADD4.tst が続きます。Add4.asm の行番号には明確な注釈が付けられています。
Add4 は 4 つの数値 (RAM[0]、…、RAM[3] または R0、…、R3 にある) を加算し、結果を RAM[0] (別名 R0) に格納します。プログラムは 30 サイクル以下で終了する必要があります
Add4.asm:
Add4.tst: