2

マインクラフトでパソコンを作っていきます。二項演算を実行できるコンピューターを構築する方法は理解していますが、出力を標準の整数として表示したいと考えています。バイナリを標準の数字に「変換」する方法は? そのためのチャートはありますか?また、数字は古い電卓のように表示されます。7行で。

 --
|  |
 --
|  |
 --
4

5 に答える 5

3

電子機器では、必要なものは「2 進数から 2 進数への 10 進数」コンバーターと呼ばれます。「2 進化 10 進数」は、7 セグメント ディスプレイで数値を生成するために必要なビットのセットです。 これは、これらのチップの 1 つがどのように機能するかを説明する PDFです。PDF の 3 ページには、変換を行うために必要な真理値表と、それをハードウェアに実装するすべての NAND ゲートの図が示されています。真理値表を使用して、プログラムに必要な一連のブール式を作成できます。

于 2010-10-07T18:26:53.570 に答える
1

問題には2つの部分があります。

  1. 2進数を数字に変換します。つまり、2進数からBCDへの変換を行います。

  2. 数字をセグメントのセットに変換してアクティブにします。

後者の場合、アクティブなセグメントのビットマップを各桁に割り当てるテーブルを使用できます。

于 2010-10-07T18:38:30.787 に答える
1

探しているのは、BCD または Binary Coded Decimal と呼ばれるものかもしれません。何十年にもわたって使用されてきたチャートとカルノーマップがあります. Googleで簡単に検索すると、この技術ページが表示されました http://circuitscan.homestead.com/files/digelec/bcdto7seg.htm

どのようにコンピュータを構築しようとしていますか? おそらく、そのキーワードは、少なくとも必要なものを見つけるのに役立ちます。:)

于 2010-10-07T18:26:36.300 に答える
1
0 = 0
1 = 1
10 = 2
11 = 3
100 = 4
101 = 5
110 = 6
111 = 7
...

パターンが見えますか?式は次のとおりです。

number = 2^0 * (rightmost digit)
       + 2^1 * (rightmost-but-1 digit
       + 2^2 * (rightmost-but-2 digit) + ...
于 2010-10-07T18:24:10.987 に答える
1

それは2つの異なる質問だと思います。

「0/1 のバイナリ文字列」から整数への変換は組み込まれていません。通常は、文字列をループして 2 の累乗を検出する独自の文字列を作成するだけです。

また、独自の 7 セグメント LED ディスプレイを作成することもできます。これは複数の行にまたがるので少し難しいですが、興味深い演習問題になるでしょう。

または、ほとんどの GUI には LCD フォントがありますが、Qt には確かにあります

于 2010-10-07T18:24:18.990 に答える