2進数とコンピュータ
問「2進数1001に1100を加算した値を答えよ」
この記事は上の問題が全く分からない人に向けて書いています。
n進数とは
(ざっくり言ってしまうと)このなんとか進数というのは、「1桁ごとに何種類の数字を使えるか」という、要は数え方のこと。
情報処理の世界では2進数を基本として、8進数,16進数などが使われます。僕たちが日常生活で使っている0〜9で数える数は10進数です。
なぜ10進数じゃなくて2進数で?ということですが、それはコンピュータさんの都合。高速な処理を実現するために回路を単純にして...。
まあ要は、「人間は10進数使ってるけどコンピュータは2進数の方が得意だから、そっちに合わせないとコミュニケーションとれないよ」という認識で良いと思います。
抽象的で分かりにくいですね。ゆっくり書いていきます。
2進数で数えよう
繰り返しますが、基本は2進数です。2進数が分かれば8進数も16進数も怖くはありません。まずは2進数に慣れましょう。
実際に2進数で数えてみます。
0, 1, 10, 11, 100, 101, 110, 111, 1000...
横に並べると分かりづらいですね。縦にしましょう。
0000 0001 0010 0011 0100 0101 0110 0111 1000
このように縦で見ると、増え方が分かりやすいのではないでしょうか。
9の次が10、99の次が100になるのと同じです。1の次が10になって11の次は100になって...これが2進数の繰り上がりです。
数字が2種類しか使えないだけあって、繰り上がりが早いですね。
ゼロの次がイチ、イチの次がイチゼロ、イチイチ、イチゼロゼロ...。気持ち悪いけど、こういうものなのです。
2進数で足し算をしよう
0011 + 1000 1011
1000 + 0001 1001
1011 + 0011 1110
上のように筆算をしてみましょう。数字の種類が少ないだけで、10進数と何ら変わりないのが分かるはずです。
(次回) 基数変換
2進数に慣れてきたら、今度は2進数を10進数、8進数、16進数、それぞれに変換することも必要となってきます。
次回はこの10進数を2進数に変換する基数変換の話から入ります。
問題の答え
1001 +1100 10101
>> 1-2 2,8,16進数 基数変換 -基本情報技術者試験-