0

問題:

次のアルゴリズムを使用して、キーボードから入力された 8 ビットの 2 進数を同等のグレイ コード 2 進数に変換するプログラムを作成します。

[壊れた画像: http://www.harborlandings.com/images/grayAlgm.jpg ]

アセンブリ (8086、クラスで必要) を学習していますが、これを行う方法がわかりません。

キーボードから受け取った各文字 (1 または 0) を変換しますか? それとも、8 ビットの 2 進数全体を読み込んでループし、変換しながら進めるのでしょうか?

私は Perl/Java 出身なので、アセンブリでこれがどのように機能するかを視覚化するのは少し大変です。また、上記のアルゴリズムでシンボルが何であるかわかりませんか?

あなたの助けと批評をありがとう!

4

2 に答える 2

1

アセンブリ コードを書いてから長い時間が経ちましたが、質問はより哲学的なものに思えます。より大きな目標を知らなくても、いくつかのアイデアがあります。

入力されたすべてのキーの変換: 多くの場合、プログラムは、プログラムの実行中に個々のキーストロークに応答する必要があります (つまり、動的コマンド、上、下、左など)。この場合、キーストロークは個別に変換する必要があります。それ以外の場合は、データまたは文字列のブロックを変換する必要があり、この操作は通常、より大きなデータ ブロックのエンター キーの最後に行われます。これらのケースでは、文字を「ループ」して変換する必要があります。

ただし、どちらの場合でも、「作業」は、どちらのタイプの状況からでも呼び出すことができる汎用サブルーチンで実行する必要があります。

これが役に立てば幸いです。

エド

于 2009-06-12T20:15:46.397 に答える