9月13日
今日は「プログラマーの日」
ロシアの公祝日だそうですが、面白いのがその理由
年初から数えて256日目だからだそうです(うるう年だったら9月12日が祝日)
コンピューターを扱う人にとっては、常識なんでしょうが
256=8bit 2の8乗、デジタルの最小単位らしいです
8ビットって…インベーダーゲーム?
さて、というわけで、きょうは2進法のお話
すべての数字を、0と1だけで表してしまおうという、ずいぶんあっさりした世界です
10進法の世界と2進法の世界…?
ちなみに、これからお話しするのはすべて0と自然数と思ってください
マイナスが入るとややこしくなって、ブログを書いている本人がついていけなくなりますので![]()
●進法のお話には、桁(ケタ)を表すために、累乗が欠かせません
同じ数字を何度か掛けるとき、その回数を右肩に乗せてあらわす、例えば、“23”みたいなヤツです
23 は、2の3乗と読みますね
中学校の数学では、0乗は扱わないのですが(…なんでだろう?)
0以外ならどんな数の0乗でも、1になりますので、2の0乗は1です
20=1…これが、2進法の1桁めです
2の1乗は2です
これが2進法の2桁め…といいうことは、10(イチレイ、ジュウではありません)ですね
10進法でも2桁めは10の位ですもんね
2の2乗は4→2進法では3桁めですから、100(イチレイレイ)です
(●乗の●ぶんだけ0をつける感じです)
ところで、10進法の4が2進法の100だったら、10進法の3は?
2が10だったので、3はそれに1(2の0乗)を足して、11です
2の3乗は、10進法で8→2進法だと0を3個つけて1000
4から8に跳んじゃったよ、途中の5,6,7はどう表したらいいの?
5は、4+1ですから、2の2乗+2の0乗…100に1を加えて101
6は、4+2ですから、2の2乗+2の1乗…100に10を加えて110
7は、4+2+1ですから、2の2乗+2の1乗+2の0乗…100に10と1を加えて111
・・・
そう、10進法を2進法で表そうと思ったら、ぜんぶ2の累乗の足し算にしてしまえばいいのです
じゃあ、10進法の100は2進法では…?
100=64(2の6乗)+32(2の5乗)+4(2の2乗)…1000000+100000+100=1100100
なんだか巨大な数字だなー
今日のお小遣いは、「2進法で10万ね」と言われて喜んだらぬか喜び![]()
たったの32円しかもらえません![]()
2進法で1000万でも10進法ならたったの128円
Wow
100億ぐらいなら、お財布に入るね(2の10乗…1000円ちょっと
)
気を取り直して、2進法で表された数字を10進法で表すには…?
さっきの計算の逆ですから、たとえば2進法の111011なんてのは、
2の5乗+2の4乗+2の3乗+2の1乗+2の0乗(2の2乗の桁は0だから、足しません)
32+16+8+2+1=59
ちょっとした、頭の体操になりそう…![]()
コンピューターって、こんな世界でできあがっているんですね
単純といえば、単純だけど…






