最新閲覧日:

はじめて質問します。
言葉足らずでわかっていただけるかどうか不安ですが…。
同じMHzの16ビットのCPUと32ビットのCPUとでは、
処理速度って違うのでしょうか?
16ビットのCPUと32ビットのCPUとの違いを書いているページは
多々見かけたりするのですが、周波数とからめてかかれたページがなく、
実際、何がどう違うのかわかりません。
一度にそれぞれ16ビットや32ビットアクセスするのだと思うのですが、
そうなると、同じ周波数ならずいぶん速度が違ってしまうような…。
一度にアクセスできるというのも、1回の振動で16ビット、または
32ビットの処理をするということなのでしょうか?
どなたか、教えてください。
お願いいたします。

A 回答 (9件)

おもしろいところで、日立のSHシリーズのCPUがあります。

(セガサターンやドリキャスのCPUです)
これらは32ビットなのですが、わざわざCPUの一つ一つの命令を16ビットにしてあります。
16ビットになることで処理負荷は増すのですが、そのかわり二つの命令を同時にCPUに取り込むことで高速処理を実現しようとしています。
ビット数を減らすことで処理速度を上げるという面白い反例ですね。
したがって、他の方の質問にもあるとおり、CPUのどこが何ビットなのかで処理速度が変わってくるんですねぇ。
Pentium等は32ビットCPUですが、CPUへのデータと命令の受け口をそれぞれ64ビットで持ってます。

結論からいうと、処理速度に影響するのは以下の5つの要素があります。
1.CPUがデータや命令にアクセスできるビット数
2.CPUがひとつの計算に使用できるビット数
4.CPUが1回の計算にかかる振動(クロック)数
3.CPUが同時にできる処理数
5.CPUが1秒間に何回の処理工程をこなせるかの振動(クロック)数
  (通常の600MHzとかのあれですね)
となります。
当然、すべて多いにこしたことはないのですが、コスト的な問題がありますので、どこを重視しているかがCPUの個性でもあり、メーカーの手腕でもあります。
以上、よけい混乱させてしまったようでしたらごめんなさい。(^^;
ご参考までに。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
ポイントが押さえてくれてあるので、
とてもわかりやすいです。
CPUを買う場合は、使用内容に応じて
CPUの個性が生かせるものを選ばないといけませんね。
参考にさせていただきます。
どうもありがとうございました。

お礼日時:2001/01/24 11:12

> はじめて質問します。



ん? 初めてじゃないですよね? まったく同じ質問を
されてますもんね?(^^;

同じ質問を(カテゴリは違っても)複数書き込むことは
やめましょう。マルチポスト(多重投稿)といって、回答が
分散するなどの理由からマナー違反とされています。

管理者さんにメールで連絡して、2つの同じ質問と、それらに
ついた回答を、1つのツリーにまとめてもらうようにお願い
されることをお勧めします。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
質問後にカテゴリーが間違っていたので
取り消そうと思ったのですが、方法がわからず
もう一回同じ質問をしてしまいました。

ツリーにまとめてもらうよう連絡してみます。

お礼日時:2001/01/24 10:37

まずCPUの1命令で操作できるデータの単位が倍になります。

16bitだったら1度に16ビットつまり2バイト、32ビットだったら一度に32ビット=4バイトです。

また一度に取り扱えるメモリ領域も大きくなります。
そして命CPUの命令自体も1度に出来ることが多くなり一度に複雑な処理が出来ます。

また周波数というのはbit数とはまた違うところにあります。
周波数とは1秒間に何回CPUに処理をさせるかという物を決めています。
300Mhzと600Mhとでは1秒間に出来る命令が倍違うということです。

このように同じ土俵卯のように見えていてもちょっと違いますのでビット数と周波数を絡めて評価しにくいのです。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
周波数とbit数とは違うところにあるから
一緒にからめて書かれてあることも少ないわけですね。
確かに、一緒に考えるのは難しいですよねぇ。

参考になりました。
ありがとうございました。

お礼日時:2001/01/24 10:41

> 一度にそれぞれ16ビットや32ビットアクセスするのだと思うのですが、


> そうなると、同じ周波数ならずいぶん速度が違ってしまうような…。

一度に処理できるデータの大きさは倍になります。内部の構造も新しい設計の
方(この場合32bit)が工夫されているので高速であると予想されます。
但し、ソフトウェアのほうも32bitでの処理に最適化されていないと
真価を発揮できない場合があります。

# 例 Windows 95等 (^_^;


> 一度にアクセスできるというのも、1回の振動で16ビット、または
> 32ビットの処理をするということなのでしょうか?

そうです。ただし、intel の x86系のように互換性を保つように
設計されたものもあるので32bitCPUでも16bitモードで動作している
プログラムがある場合は足を引っ張られます。

# 雑駁な説明ですが大体こんな所かとおもいます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
大変参考になりました。

ハードが32bitのものでも、ソフトが対応していなければ、
32bitCPUでも常にフルの状態で動作できるわけではないのですね。
勉強になりました。
どうもありがとうございました。

お礼日時:2001/01/24 10:45

いい忘れてましたが、16ビットCPUと32ビットCPUの定義にはあいまいな部分もありますので覚えておいてください。


例として
インテル社製 386SXは内部処理32ビットですが外部へのアクセスは16ビットです。インテルとしてはこれを32ビットCPUとして出荷していました。
モトローラ社製 MC68000も同じく内部処理32ビットで外部へのアクセスは16ビットです。モトローラはこれを16ビットCPUとして出荷していました。
つまり、16ビットと32ビットの混在のシステムもあるのです。この場合はメーカーによって見解が違うようです。
最近出荷されているCPUにも似たようなものはあると思います。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございました。
参考にさせていただきます。

しかし、見解がそれぞれ違うとは…。
購入時にはちゃんと確認とかしないといけないですね。
どうもありがとうございました。

お礼日時:2001/01/24 11:08

bitというのは、binary digitの略で、(0または1の)二進数字ということです。


2進数の1桁をあらわします。16bitというのは、2進数の16桁ということです。
10進数になおすと、2の16乗で、2^16=65536になります。
32bitは、10進数に直すと、2の32乗で、2^32=4294967296となります。
16bitの2の16乗倍です。(2^32=2^(16+16)=2^16*2^16)
16bitCPUのころは、文字情報だけしか扱えず、フォントを使い分ける代わりに、倍角、縦倍角、4倍角などで誤魔化すしかなかったのですが、32bitCPUになって、WYSIWYG(What You See Is What You Get)が実現し、Windows環境を享受できるようになりました。(8bitでは、カタカナしか扱えませんでした。2^8=256では、漢字は表現できない)
下に挙げたようなCPUの変遷とともに、動作スピードも速くなってきていますが、CPUの処理能力ほど飛躍的には伸びていません。せいぜい数倍程度です。
それで、周波数の違いを比べたくなるのでしょうが、まったく比較の対象になりません。16bitと32bitでは、一度に処理するデータ量がまるで違います。
また、32bitCPUで16bitのアプリケーションを動かせば、格段に速く動くかというと、そういうことはなく、アプリケーションが32bitに対応していなければ意味がありません。
なお、16bitカラーでは、32,768色を表現し、24bitカラーは、16,777,216色を表現します。24bitカラーは、デジタル処理におけるもっとも標準的な色表現になっており、フルカラー(full color)あるいはトゥルーカラー(true color)と呼ばれています。

PentiumII ... CISC(RISC), 32bit, {...400Mhz,etc.}
Pentium ... CISC(RISC), 32bit, {...400Mhz,etc.}
Sparc ... RISC, 32bit, ...
PowerPC ... RISC, 32bit, 64bit.
SH ... RISC, 32bit,
i486 ... CISC, 32bit,
MC68040 ... CISC, 32bit, ...
i8086 ... CISC, 16bit, パソコン搭載で大ヒット
MC68000 ... CISC, 16bit, 初期の Mac, EWS でよく使われた。
Z8000 ... CISC, 16bit, コンピュータグラフィクス等で よく使われた。
Z80 ... CISC, 8bit, 大ヒット CPU
    • good
    • 0
この回答へのお礼

大変、丁寧な回答ありがとうございます。
フォントやカラーのことまで書いていただいて…。
とても勉強になりました。
あまりにも詳しく書いてくださっているので
びっくりしました。

しかし、高性能のCPUをフルに生かすためにも、
他の要素がそれに対応していないと宝の持ち腐れに
なってしまうのですね。
難しいものですねぇ。

お礼日時:2001/01/24 11:06

書かれている「1回の振動で16ビット、または32ビットの処理をするということ」でだいたい合ってます。


ただ一度に16ビットしか計算する必要がない場合もあるので、
必ずしも速度比が2倍とはなりません。
もちろんそれ以外にも処理速度に影響する条件はありますし。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
大体、合っているということで
ホッとしました。
どうも、ありがとうございました。

お礼日時:2001/01/24 11:01

仰有るようなご理解で。

基本的にはいいかと思います。
つまり、同一クロックなら、32ビットのCPUは16ビットのCPUの倍の能力がある、という事です。
つまり、16車線の道路と、32車線の道路の(こんなの無いですが)処理能力の違いと思ってください。
実際には、その他の問題や新しい技術の導入或いは他の要因によって、倍以下であったり、以上であったりします。
ただ、CPUの処理能力のみで言えば、概ね正解だと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
16車線の道路と、32車線の道路ですか…。
ユニークでわかりやすいですね。
説明するときに使わせていただこうかしら。
しかし、CPUの種類やその他の要因で、
同じ周波数、ビット数のものでも
同じ処理能力とはいえないのですね。
簡潔でわかりやすい説明ありがとうございました。

お礼日時:2001/01/24 10:59

1回の振動で16ビット又は32ビットの処理をするということです。


画像データなどの莫大なデータを処理する場合はビット数が大きく影響してきます。
周波数が多少低くてもビット数が多ければ一度にたくさんのデータを処理できるからです。
ただ、データ量がほとんど無いプログラムコードでしたら
ビット数より周波数により処理速度に影響してきます。
また、32ビットCPUで16ビット用のプログラムを動かした場合は同一周波数の16ビットCPUより遅くなることもあります。それは32ビットCPUが32ビットで動作させたときに最大限の能力を発揮できるように最適化されており、16ビットの作業では効率が悪い為です。
    • good
    • 0
この回答へのお礼

回答していただき、ありがとうございます。
影響するものが
データ量が多い場合はビット数
データ量が少ないときは周波数
と変わるなんてまったくしりませんでした。
やはり、データが多いときは一度にたくさんの量が処理できる方が良くて、
データが少ないときは早く処理が進むほうが良いってことですよね?
勉強になりました。
ありがとうございました。

お礼日時:2001/01/24 10:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ