問題タブ [lc3]

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.

0 投票する
1 に答える
431 参照

c - C で 16 進文字列の最後の 5 桁を 2 の補数に変換する

私の前の質問からの続きで、C でファイルから文字列を読み取る際に問題が発生し、それらを lc3 disassmbler として操作する

ADD & AND を使用して、lc3 逆アセンブラーで即時アドレッシング モードを実装する必要があります。

たとえば、ファイルに次のものが含まれているとします。

1283

5105

1df7

506f

印刷したいのは:

r1、r2、r3を追加

および r0、r4、r5

r6、r7、-9を追加

およびr0、r1、15

-9 と 15 を出力するにはどうすればよいでしょうか。2 の補数に変換する必要があることは理解していますが、その方法がわかりません。

これは、ADD命令を参照するIfステートメントのコードです。出力の 3 行目と 1 行目

参照用の lc3 命令セットのコピーを次に示しますhttp://ece224web.groups.et.byu.net/reference/LC3_Instructions.gif

0 投票する
1 に答える
753 参照

c++ - LC-3 から C への変換

出力を取得したい:

私のコード:

しかし、タイプとstncmpであらゆる種類のエラーが発生しています。エラー: 警告: 'long' から 'int' への暗黙的な変換により、値が 68738383881 から 18907145 に変更されます [-Wconstant-conversion]

警告: 関数 'stncmp' の暗黙の宣言は C99 では無効です [-Wimplicit-function-declaration] if(stncmp(add, binary, 4) == 1)

誰か助けてくれませんか?

参照用の lc3 命令セットのコピーを次に示しますhttp://ece224web.groups.et.byu.net/reference/LC3_Instructions.gif

0 投票する
1 に答える
5029 参照

branch - LC-3 文字列全体を読み取り、Enter キーを押すと出力する

私は LC-3 をいじるのが初めてで、問題が発生しています。「こんにちは、私の名前はコナーです」などの文字列全体を入力できるようにしたいのですが、Enter キーを押すと、コンソールにエコーされます。文字を読み取り、スペースが押されるまで継続的にエコーする前に問題を解決しましたが、文字列全体を作成して入力時にエコーする方法がよくわかりません。始めるための助けはありますか?

最終的には次のようになります (すべての .fill コマンド):

0 投票する
1 に答える
317 参照

assembly - LC-3 アセンブリ言語 - 入力の特定の部分だけを出力する

デッキからカードの入力を求めてから、フェイス カードのみを出力するプログラムを作成する必要があるため、5JKQ894 と入力すると、JKQ だけがエコーされますが、フェイス カードだけを出力する方法がわかりません。 .

0 投票する
5 に答える
4515 参照

binary - バイナリでビットシフトを行うにはどうすればよいですか?

うまくいけば、これは簡単な質問ですが、バイナリでビットシフトを行う方法を理解することはできません。これは LC3 環境で行われています。2 で算術除算して右にシフトする方法を知る必要があるだけです。バイナリ値をそれ自体に追加するだけで左に行くのは簡単ですが、右にビットシフトする場合は反対のことを試しました(それ自体から減算、NOTしてから減算など)。

または、x00A0 を x000A に移動するより良い方法があれば、それも素晴らしいでしょう。ありがとう!

0 投票する
2 に答える
1579 参照

assembly - アセンブラー・プログラムには、HALT と .END をいくつ表示する必要がありますか? (私たちのプログラムが永久に実行されるべきではないと仮定します)

アセンブラー・プログラムには、HALT と .END をいくつ表示する必要がありますか? (私たちのプログラムが永久に実行されるべきではないと仮定します)

少なくとも 1 つの HALT と 1 つの .END ですか?