アーカイブ

‘プログラミング講座’ カテゴリーのアーカイブ

2進数とは(2) 〜 数字ですからもちろん計算できます 〜

2008 年 11 月 26 日

2進数は0と1で表現できる数字であることは、前回お伝えしました。
そして、数字なら算数で計算できるわけです。
ちょっとやってみましょう。

■足し算(加算)
一番大切な計算です。
なんとファミコンに搭載されているCPUは足し算、引き算、掛け算、割り算のうち、足し算しか出来ません。
じゃどうやって計算するの?と言う疑問がでれば、あなたの脳は2進数に興味が出てきた証拠です。
10ー5を計算するとき、10から5を”引く”から引き算になるのですが、10からー5を”足す”ことに発想を
変えると、足し算だけでできるのです。
そして、掛け算は足し算の繰り返しだし、割り算では、引き算の繰り返しでできるのです。
しかし、そんな重要な足し算も、実は論理演算というさらに基本的な演算の組み合わせでできていることになります。
その話は次回。

では、さっそく足し算してみましょう。
普段足し算とほとんど同じですが、気をつけなければならないのは、この2進数の世界では、「2」以上の数字は
使えません。0と1だけです。

1+0=1
0+1=1

簡単ですね!

では、1+1の時はどうなるのでしょうか?
10進数の計算では、5+5の時、1桁繰り上がって10となりますね。
これとまったく同じです。

1+1=10

これだけ知っていれば、2進数の計算はできたも同然です。
下の問題はどうでしょうか?

1010+0101=?

答えは、1111です。桁上がりがないため、簡単です。
では、次はどうでしょう?

0011+0110=?

桁上がりしましたよね。
答えは1001です。

最後の問題です。
1111+1111=?

全部の桁に1があるので、桁上がりしっぱなしです。
答えは、4桁に収まりません。
11110です。

どうでしょうか?
重要な計算ですので、マスターしてください。

admin プログラミング講座

2進数とは(1) 〜 考え方をシンプルにします 〜

2008 年 11 月 21 日

人に「プログラム書けます」と言うには、まず2進数を知らなければなりません。
これをしっかり理解できてないままJavaScriptやVBScriptなどを書く人が急増し、困った状況になっています。
ちゃんと2進数を理解しましょう。
普段私たちが物を数えるときは10進数を使います。

0、1、2、3、4、5、6、7、8、9、10

はい、ここで10だけが2桁あります。
進数とは、1桁だけで表せる数字の種類に相当します。
0〜9までが1桁ですので、数字は10種類あり、つまり10進数と言えます。
9を越えると桁が増え、また0〜9の繰り返しになります。さらに99を越えると桁が増え、ずっと続きます。
つまり、2進数とは、1桁で表せる数字の種類が2種類しかないってことです。
2種類で表せることは身の回りにいっぱいあります。

コインの
スイッチの ON OFF
チョコレートが 好き 嫌い
問題が 分かる 分からない
AとBを足した結果が 10以上 10未満

こんな風に2種類で表すことを数字で使うと、2進数となります。
実際コンピュータの世界では、2進数を使用します。
物事を2つに分けるために、電圧の違いによって2進数を表現しているからです。
上の例では、スイッチのON/OFFというのを、電圧の高さの違いによって2つに分けています。
2進数を知ることは、コンピュータの動作原理を知ることにつながるわけです。

では、2進数についてもう少し勉強を進めましょう。
たとえば、コインの表は0、裏は1として使えそうです。
この様に実生活の「2種類の事柄」を数字に置き換えて利用できるようになると、
「コンピュータが分かってきた!」と言う実感を得られます。
「2種類の事柄」はコンピュータを理解するために一番大切なことですから、死ぬまで覚えておいてください。
では0、1だけで何をするのでしょうか・・・
もちろん数字として扱うことは出来ます。

0、1、10、11、100、101、110、111、1000

0と1しか使わないため、すぐに桁が上がっていきますね。
不便なので、私たちは普段の生活では、2進数は使いません。
よって、数として使うだけでは、別に数字にしなくても言い訳ですが、
コンピュータは2進数を使います。これについては、次回説明します。
2進数は、いくつかの事柄の組み合わせをまとめて考えるときに威力を発揮します。

性格について考えてみましょう。
今、性格の分類が4種類あるとします。

1.外交的・内向的
2.短気・気長
3.冷静的・情熱的
4.思考派・行動派

それぞれ左側を0、右側を1とします。
すると、内向的で、気長、冷静的で思考派の人は上から順に1100となります。
よって、影のリーダー格的な人物は、1100と表現することが出来ます。
逆に目立ちたがりのリーダーは、その逆に0011と表現出来るのではないでしょうか。
正反対のことは何も考えずに0と1を逆にすれば良いことになります。
やっと、2進数の良さが見えてきましたね!
ここで重要なポイント。1100のそれぞれの桁の意味を知っていなければ意味がありません。
0と1でしか表現していないため、別の意味の数字になることもあるということです。
ここも非常に重要です!それぞれの桁に意味があり、それは数字だけでは分からないということです。
しかし、意味さえ知っていれば、大変短い情報で様々な組み合わせをまとめることが出来ます。

admin プログラミング講座