- ベストアンサー
マイコンのビット数とクロック数について
- マイコンのビット数とは、レジスタの幅や内部データバスの幅を表します。
- ビット数が大きいマイコンは、より大きなデータを処理できる可能性があります。
- クロック数は処理速度を示し、クロック数が大きいほど処理が速くなります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
通常言う 8ビット 16ビット 32ビット とは、CPU内部のALU(加算ようレジスタ) のビット数で、マシン語1命令で扱えるビット数になります。 何ビットでもCPUは、作れますが、アルファベットは、8ビットで構成されていますので、 8ビットの倍数での処理が便利なので、8,16,32ビットのCPUが作られます。 処理するデーターが、文字(アルファベットなら8ビット、日本語なら16ビット)なのか、 数字なのかによって処理のフローが異なりますので、何倍になるとは言えませんが、 文字を扱う場合で16ビットが、8ビットの2倍の処理が出来ることは、ありません。 (アルファベットの場合は、16ビット,32ビットでも8ビットでの扱いになります) (日本語の場合は、8ビット,32ビットでも16ビットでの扱いになります) 数字を扱う場合でも8ビットは、0~256まで、16ビットは、0~65536まで、 (符号付計算の場合は、8ビット=-128~+127,16ビット=-32768~+32767) の計算しか出来ないので複数回の計算によって処理しています。 8ビットで2回処理すれば、16ビットで1回処理したのと同じですから 16ビットが、8ビットの2倍強の処理が出来る程度になると思います。 グラフィックなどについては、不明です(ごめんなさい) パソコンでの処理時間の多くは、入出力装置の処理速度によって左右されますので、 グラフィックや、写真などの処理が無ければビット数が2倍になっても処理速度が2倍には、 ならないと思ってください。
その他の回答 (2)
有り得ませんが、全く同じ条件で比較した場合、16ビットマイコンは8ビットマイコンの2倍の処理速度となります。 ただし、16ビットマイコンに1命令当たり8ビットの情報しか処理させないのなら意味がありません。 例えば1バイト=8ビットとして、100バイトのデータを全てビット反転する処理が課せられたとします。 これを8ビットマイコンなら100回の命令でこなします。 16ビットマイコン向けに、1命令あたり2バイト(=16ビット)ずつ処理するようにプログラムを組んで処理させれば、50回の命令でこなすことができます。 つまり処理能力は2倍なのですが、その能力を発揮するには、プログラムがそのように作られていないといけません。
お礼
ハードだけでなくてソフトの処理も重要になってきますね.32ビット処理出来ても,意味的に8ビット分しか入ってなければ速くなることはないですもんね.ありがとうございます.
- Tacosan
- ベストアンサー率23% (3656/15482)
「256倍」なんて極端な違いには (普通は) なりません. 扱えるデータの「値の範囲」は 256倍だけど, 実際に扱ってるデータの大きさそのものは結局「ビット数」なので 2倍しか違わない. といっても, 「このnビットマイコンのnを,何と定めるかの厳格な定義はない」わけだから結局は実際の処理を実際のモノで試してみるしかないわねぇ. 事実, 「同クロックなら 16ビットプロセッサより速い」とすら言わしめた 8ビットプロセッサもあったわけだし.
お礼
確かに処理の時に何通りの数字が表せるかが重要であることはほぼ無いですね!ビット数なので2倍ですね.ありがとうございます.
お礼
なるほど.1文字が1バイトで,その処理に便利だから8の倍数だったんですね.日本語の文字を扱うプログラムは書いたことがないので,2バイトだとは知りませんでした.情報も多く入れて下さったのでベストアンサーにします.ありがとうございました.