0および1ビットスタイル/構造の代替


9

私はどこでもこの答え、または少なくともこのような質問を探しました(tomのハードウェアでさえ、これに「明示的に」関連していませんでした)。

私の質問は簡単です:

コンピュータアーキテクチャでデータを処理する現在の方法(0と1を使用)に代わるものはありますか?

購入する新しいPCを探すときにこの質問に出くわし、Intelや他のプロセッサの連中がチップにトランジスタを追加するために何十億ドルも費やす方法などを調べました(ただし、これは私の質問に部分的にのみ関連しています)。

一部の人々は、「0と1はデータを表現する最も低い形式」であると言うかもしれません。これは、そのようなコンピューターがそのようなシステムを使い始めたときに真実でした。今日もそうですか?現在直面している処理ニーズを削減できる可能性のある処理の代替案を検討するために、設計図に戻っていないのですか?

この質問にはあなたが正しいと思う簡単な答えがあるかもしれないことを知っている人もいますが、それについて考えて0と1に戻り、トランジスタ自体にさえ戻ると、すべての選択肢に代わるものかどうか疑問に思われるでしょう。アーキテクチャのメソッドまたはステップが存在します(0と1の表現だけではありません)。

私の個人的な意見は、 「現在のPCには複雑な性質があるため、最低レベルで0 | 1処理よりも複雑な処理を実行する能力は、単にそのタイプの処理は、PCが設計された複雑な解法の目的に反するようです。」


2
0/1を超えるレベルを追加すると、状況はさらに複雑になります。
レナン、2013

3
ドローイングボードに戻ることをお勧めしますので、(0と1のように)単純なことが悪いまたは非効率である理由を説明できますか?
Karan 2013


1
これがどのように意見に基づいているかはわかりません。おそらくCS.SEに適していますが、これは具体的な回答を持つ興味深い質問です。
terdon 2013

あるかもしれませんが、すべての顧客レベルのハードウェアはそうではありません。バイナリの代替について話します。
ラムハウンド2013

回答:


12

実際、0/1構造は、データを表現して格納する最も簡単な方法です。ただし、デジタル技術(ストレージ用)が導入される前は、デバイスはアナログストレージソリューションを使用していました。また、量子コンピューティングは現在研究および実装されています(ただし、ごく初期の段階です)。これは他の種類のデータ表現および処理です。


現在の日常のコンピューティングでは、現在のテクノロジーはデジタル(2状態)ストリームを中継するため、0/1アーキテクチャ(またはtrue / false、on / offなど)が必須であることに注意してください。最も基本的なレベルで物事をより複雑しようとすると、最終的にはシステムを維持し、その仕組みを理解することが難しくなります。不可能だと言っているわけではありません。これについては、「次の大きなこと」が近づいていると言いましたが、混乱しないように注意深く行う必要があります。理由もなく物事をより複雑にすることは良い考えではありません。しかし、私の前の例である量子コンピューティングは例外です。なぜなら、それは探究すべき科学の新しい領域であり、何よりも-デジタルテクノロジーと比較してより効率的だからです。


さらに、3 元コンピューター(2ステートテクノロジーではなく3ステートテクノロジー)のアイデアが提案されていますが、いくつかの理由により広く実装されていません。

3つ以上の状態/レベル/ものを使用するコンポーネントを構築することははるかに困難です。たとえば、ロジックで使用されるトランジスタは、閉じていてまったく導通していないか、ワイドオープンです。それらを半分開いていると、はるかに高い精度が必要になり、追加の電力を使用します。それでも、より多くの状態がより多くのデータをパッキングするために使用されることがありますが、まれです(たとえば、最新のNANDフラッシュメモリ、モデムの変調)。

3つ以上の状態を使用する場合は、バイナリが互換性を持つ必要があります。これは、世界の他の国が使用しているためです。バイナリへの変換には、剰余を伴う高価な乗算または除算が必要になるため、3つはアウトです。代わりに、4またはそれ以上の2の累乗に直接移動します。

これらはそれが行われない理由ですが、数学的には三元論理でコンピューターを構築することは完全に可能です。

参考文献/参考文献:

ウィキペディア

自然

その他の


1
ありがとう!あなたの答えは素晴らしかった。私はあなたのリンクから他の2つのリンクを見つけました、そして私は今言及された他のビューのいくつかを見ます。ここで指摘したいのは、stackoverflow.com / questions / 764439 /…と「rbud」による投稿です。彼の最後のパラグラフは、「明らかに、それらは構築するのにはるかに低コストであり、動作するのにはるかに少ないエネルギーを使用する」と述べています。これは私には重要なようですが、精度に関する反論も述べられています。
Joe

3

追加するものが残っていないときではなく、取り除くものが残っていないときに、デザイナーは完璧を達成したことを知っています。-アントワーヌドサンテグジュペリ

0と1は数値を表す最も単純な方法であり、私たちが知っているコンピュータはすべて数値に関するものです。0〜9の数字を使用して記述できる数値は、0と1に相当します(Wikipediaの2進数を参照)。計算にコンピューターを使用している限り(これが現在行っていることです)、2桁以上は必要ありません。実際には、次の数字を導入すると、物理的な0-1アーキテクチャ上で抽象化の別のレイヤーが必要になるため、計算がより複雑になります。

また、0と1は論理状態(falseとtrue)であることにも注意してください。ロジックに固執している限り、別の数字はあまり役に立ちません(ただし、3番目の状態が必要で、ファイルが見つからないという人もいます ;))現在使用しているようなコンピューターでは必要ありません0/1以上。

だが。ロジックのカテゴリで考えるのをやめると、それはまったく別の話になります。量子コンピューターが研究されています。量子力学では、何かが真または偽である可能性があり、実際の状態はその中間にあります。量子コンピューターがどのように機能するかについての少なくともいくつかの一般的な考えを持っていると言える人は世界に非常に少なく、その背後にある科学はまだ完全には理解されていません。しかし、このように、すでに実装されている量子コンピュータ関連のアイデアはほとんどありません。


ありがとう!あなたの答えも素晴らしかったです。あなたとmatan129の両方があなたの知識を詳細な回答と共有するのに時間を割いてよかった 量子コンピューティング、アナログコンピューティング、三元コンピューティングについては調べますが、これは間違いなく私の考えの一部に答えるものです。存在する可能性を見るために興味深い。
Joe

「0〜9の数字を使用して記述できる数値は、0と1で同等です」ええ、それは正確には当てはまりません。10進数を考えてください。一部は自明にバイナリに変換されます(特定の表現を使用して)、他は変換しません。これはバイナリ表現自体の問題ではありませんが(常に別のバイナリ表現形式を選択することができます)、これは私たちの問題であり、浮動小数点数を使用したプログラミングが重要な場合もあります。そして、一般的なケースでは不正確です。
CVn 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.