2010-01-02 (土)
*もしもコンピュータを再設計して良いなら
とりあえず,記憶領域の最小単位を10ビットとかにしたい.
現在は8ビットが最小単位で管理されていて,その倍数の32ビットや64ビット単位でCPUも計算を行っています.これらは,2のn乗ビットになり,CPUの回路やアルゴリズムの実装が綺麗になるという利点がありますが,今となっては弊害の方が多い気がします.
8ビットCPU時代ならともかく,128ビットのレジスタが普通に存在できるCPUにおいて,8ビットを10ビットにしたところで,効率は下がらない気がします.それよりも,現実社会の事象を扱うソフトを書くときは,10ビット単位の方が効率よく計算や格納ができそうです.
8ビットだと足りないけど,10ビットなら足りるという問題は結構あります.マイコンを使ってて,よく使うA/D変換器なども10ビットです.でも,マイコンのレジスタは8ビットだったりするので2ビット捨ててしまうか,6ビットと計算時間を犠牲にしてそのまま格納するかでかなり迷います.256段階のデータは少し荒すぎるので10ビット欲しいのは確かなのですが,何かが犠牲になってしまいます.
タッチパネルに触れる時や,デジタル温度計を見かけたときに,自分だったら作るとき何を思うかが一瞬だけ脳裏をよぎります.
Unicodeを策定するときも,文字数を少なくするために中国や日本の漢字の似たものを統合するというような乱暴なことをしなくて済んだと思います.この問題のしわ寄せは,現在も問題が出ていますし,かなり先の将来まで引きずると思います.
あと,これから迎える2038年問題も考える必要は無かったかも.
とにかく,8ビットという単位のせいで発生している損害はかなり大きいと思う.