回答受付が終了しました

ID非公開

2021/1/16 19:06

66回答

古いゲーム機は16bitと書かれています。ファミコンは8bit?これらのbitはどう言う意味ですか?ネオジオの100メガショックと関係がありますか?

回答(6件)

0

基本はご存知のようなので飛ばしまして、 普通は汎用レジスタのビット幅だと思っておけばよいと思うのですが、データバスのビット幅がレジスタより狭い場合そちらを取るものも見受けられ、どちらを取るかはいきあたりばったりで統一した基準などはありません。多分にメーカーの自称に依ります。 32bitのレジスタを持ちながらデータバスが16bitだからと16-BITを名乗るものや、 対抗してデータバスは8bitなのにレジスタが16bitだから16bitを標榜するものがありますね。 あとはISAを変えずにデータバスだけ16bitから8bitに切り詰めて低コストで流行ったCPUがありますが、ISAが同じためか16bitCPUと考えられています。 対照的にISAが同じなのにデータバスの違いだけで8bit/16bitマイコンと区別されている製品が日本にあったりもします。 また、レジスタと一口に言っても、浮動小数点数レジスタは64bitや80bitあっても整数演算が32bitのCPUは普通32bitと呼ばれますし、 SIMDレジスタが例えば128bitだからといって128bitゲーム機と称することは(まあ当時そう称していたようですが…少なくとも現在の考え方では)一般的ではありません。 他に、8bitレジスタを2本繋げた16bitとしても扱えるCPUは非常に一般的ですが、これを16bitCPUと呼ぶことはまず無く、たぶんその理由付けとして言われているのが演算器のbit数です。1命令で16bitの加算ができても中で8bitのALUを2回回しているなら8bitCPUという考え方ですね。 しかしこれ、4bitALUを内部的に2回回して8bit演算をしているCPUを4bitと呼ぶことは、まあほとんど無いのではないかと思いますので、この辺またちょっと不統一感が出ています。 2つ繋げて16bitレジスタなやつを除く理由付けは「16bitを扱える演算は少ない」とする手もありますが、これ明確に切れないんですよね。64bitCPUと呼ばれていても64bitのロード命令に大きな制限があるなどザラですし。 あ、あとたまに誤って言われるのがアドレスバスのビット幅と命令のビット幅ですが、どちらもその幅で言われるのを見たことがありません。

0

CPUの性能ですね。 ネオジオのそれはソフトの容量で、CPUの性能とは直接の関係はありません。

0

CPUの処理性能の値です。 単純にファミコンは8、 PC-Enjineも8、 メガドライブとスーパーファミコンは16… PSは32、 セガサタンは32ですがDual CPUです!

ID非公開

質問者

2021/1/16 20:32

処理性能ではないと思います。CPUのbit数は処理性能に関係はしますが、処理性能自体ではないでしょう。

0

一度に扱えるデータの量のことです。 1bit=8byteになります。

ID非公開

質問者

2021/1/16 20:33

誤っては無さそうですが詳しくお願いします。あと、bitとbyteが逆です。

0

CPUのbit数です。 16bitと本体に書かれているゲーム機はセガのメガドライブです。 ファミコンは8bitでした。 スーパーファミコンは16bit、 プレステやセガサターンは32bitです。 ネオジオの100メガショックは、カセットの容量が 100メガビットあるということを表しています。 通常は容量はバイトであらわすので、バイトに変換すると、 約12.5メガバイトになります。 CPUのbit風を決めるものには様々な要因がありますが、 主な物としては、レジスタサイズとアドレスバス幅が使われています。 レジスタサイズは、レジスタというCPU内部で計算を行う時に使う数値を一時的に記録する装置があり、 そのレジスタに記録できるデータのサイズをさします。 8bitであれば、最大255までの数値を、16bitであれば65535までの数値、 32bitであれば、約42億までの数値が一度に計算できます。 アドレスバス幅とは、CPUがメモリにアクセスする際に どのメモリにアクセスするのか?と言うことを アドレスバスという専用の信号線を使って指定するのですが、 その信号線の本数の事です。 信号線の本数が多ければ多いほど、沢山の数を表現できるため、沢山のメモリを扱うことができます。 8bitであれば、最大255バイトまでのメモリを、 16bitであれば64キロバイトまでのメモリを、 32bitであれば、約4ギガバイトまでのメモリを扱うことができます。 ただし、255バイトや64キロバイトでは、あまりに少ないので、 いろいろな工夫をして実際に使えるメモリの量はもっとあります。 また、32bit以上の多くのCPUは、仮想記憶というメモリ管理機能を持っていて、 積んでいるメモリより多くのメモリを使えたりします。 これらの数値を元に、CPUのbit数を言うことが一般的です。 (実際には16bitCPUだけど、24bitのアドレスバスだったり、32bitCPUなのに16bitのアドレスバスだったり、 32bitだけど一部には64bitのレジスタがあったりと、絶対のルールは無く、あくまで慣習とメーカーがなんと呼ぶか次第です)

ID非公開

質問者

2021/1/16 20:30

バス幅の事ではなく、CPUが1命令で扱えるビット長の事だと思います。前者のレジスタサイズですね。最近のCPUは可変長の命令を実行できるのでその最大長ですね。昔はバス幅も狭くバンク切り替えを頻繁に行うなどの工夫が必要でしたが、最近は空間が広がり処理性能も飛躍的に上がった気がします。