計算機の基礎知識
  (C) 2001 A c t o r .N e t Soft Ware



 以下に公開するソースなどの著作は 篠田直樹 に復帰します。
原則として無許可で使用する事が出来ますが、ここに書かれている内容を
直リンクや引用などであたかも第三者が作成した様に見せたり如何なる事情でも金銭が発生する行為を禁止します。




計算機は0と1で動いている、良く聞く話で大抵の人は知っている事だろう。
では、なぜ0と1なのか、これを知らない人は実に多い。
結局の所、計算機の中身は殆どスイッチで構成されている、故にオンとオフの世界だ。
だから計算機は本来、マシン語のレベルでは二進数しか扱う事が出来ない。
この類がアセンブラやマシン語に値する、いわゆる低級言語と称される言語だ。

C言語を初めとするVBやJAVAといった言語は全て高級言語に相当する。
そして、それらで扱われる私達が一般的に見ている文字は16進数で管理されている。
つまり、0〜9、A〜Fまでの16文字となる。
ASCII文字はこの文字桁を二つのペアにして縦横のマトリクス状にしたものを文字として扱っている。
半角文字については、二桁を一つのペアとし、全角は拡張4桁を一つの文字とする。

マシンが扱える一番都合の良いビット幅は2の乗数になる。
これは本来がオンとオフの二進数で扱っている事から起因するものであって、
これを乗数として扱う事で計算の拡張が出来る。
関連する話として計算機はInteger(整数型)での処理が一番都合が良い。
現在、主流のパソコンは大半が32Bit、最新のもので64Bitのものがある。
Integer型はこういったパソコンのCPUという部品と密接に関わっている。
例えば32BitCPUは32Bit長でパイプラインに渡されるのでIntegerの領域は32Bit長になる。
こういったマシンに対して16BitのShortを受け渡すと直接、パイプラインに
渡す事が出来ないので裏でわざわざ32Bitに変換して演算装置(CPU)に渡さなければならない。
結果として、ハードウェアの制約が緩くなって高性能になった今では逆にパフォーマンスを落とすので
敢えてオーバーフローの枠を作って意図的に転けさせたい時にしか使わない。



Copyright (C) 2001 A c t o r .N e t Soft Ware All Right Reserved