2016年12月31日土曜日

なんで2進数!?(怒)【回路、デジタル自己満説明】

専門外の方に回路、コンピュータの動作原理を解説し興味を持ってもらうためのブログ。今回は、2進数ってなんなの?という記事です。

話の内容

○2進数も10進数も結局同じ

“0”と“1”しか存在しない通信は正確で安く小さく作れるってのは前回の話

そんな状態で使える数字ってやっぱり2進数?それがよく分からんのだ。ということで、2進数というものに関するお話です。


合計から内訳の分かる方法

前回と別のパターンを考えます。

ポク太郎A子さんB美さんにしつこく聞きます。C紀さんは化粧室、D蔵さんポク太郎が無視。)

ポク太郎は男前ですか?点数を付けてくれ。

仕方ないので、A子さんB美さん二人はそれぞれ1点づつ持ち、その合計をポク太郎の男前度として表そうとしました。民主主義国家らしい平等な方法です。

あり得るパターンは、
パターン1パターン2パターン3パターン4
A子さん0101
B美さん0011
 0112

A子さんB美さんは等価の持ち点を持っていますから、A子さんB美さんのつけた点数を足し算した合計は、0点、1点、2点の3段階で表すことになります。

実はこの平等な方法というのはややこしい方法なんです。

全部で4パターンあるのに、合計の種類は3パターンしかない(0と1と2)状態。

特に合計が1だった場合、合計を見ただけではパターン2だったのか、3だったのかA子さんB美さんのどちらが投票したのか)が分からないのです。

ここで別の方法を考えます。

ポク太郎A子さんの2倍B美さんのことが好きなので、B美さんの点数を2倍として扱いました。レイシストらしい差別的な方法です。

そうすると上の表は、
パターン1パターン2パターン3パターン4
A子さん0101
B美さん0022
 0123

どうでしょう?全部で4パターン、合計の種類も4パターン。しかもちゃーんと0~3点の1点刻みの4段階。

C紀さんが化粧室から戻ってきたので、同じ質問をして回答に入れます。
B美さんの2倍(つまりA子さんの4倍)C紀さんのことが好きなので、4倍にして計算します。
パタ1パタ2パタ3パタ4パタ5パタ6パタ7パタ8
A子さん01010101
B美さん00220022
C紀さん00004444
 01234567

全部で8パターン、合計の種類も8パターン。合計は0~7点の1点刻みの8段階。

A子さんB美さんC紀さんは完全に等価な投票権を持っているのですが、結果を見てるポク太郎が勝手に2倍、4倍、と重要視することで、1点刻みのバロメータとして見ることができます。

A子さんB美さんC紀さんは、それぞれ“0”か“1”かだけを表せる1桁の数字だとします。数字を見る人間が右から順番に1倍、2倍、4倍、8倍、…と認識すれば、それはレベルとして扱えちゃいます。(1刻みですので)
2進数
C紀さんB美さんA子さん
↑4倍好き↑2倍好き↑好き
111

この差別的な方法が2進数。A子さんB美さんC紀さんはそれぞれ等価なのに)


同じことを10進数で考える

同じことを10進数で考えると分かりやすいです。B美さんA子さんの10倍、C紀さんはさらに10倍(つまり100倍)重要視します。

10進数では0~9の10コの数値を使って表現しますので、

(組み合わせのパターンは多すぎて書けませんが。)
A子さんが合計に寄与できうる点数:
 0、1、2、3、4、5、6、7、8、9
B美さんが合計に寄与できうる点数: 
 0、10、20、30、40、50、60、70、80、90
C紀さんが合計に寄与できうる点数:
 0、100、200、300、400、500、600、700、800、900
 ------------------------------
 計: すべての組み合わせは、0~999の1000段階のうちのいづれかに1対1で対応

上の表を見ると、
A子さんは、1の位を支配、
B美さんは、10の位を支配、
C紀さんは、100の位を支配していることが分かります。

「支配」と表現してるのは、B美さんC紀さんがどの点数を付けてもA子さんのつけた点数を隠すことができない、全員互いにこの事象が成り立っている、という意味です。

A子さんB美さんC紀さんは、それぞれ“0”~“9”かだけを表せる1桁の数字だとします。数字を見る人間が右からから順番に1倍、10倍、100倍、1000倍、…と認識すれば、それはレベルとして扱えちゃいます。(1刻みですので)
10進数
C紀さんB美さんA子さん
↑100倍好き↑10倍好き↑好き
999

10倍もの差をつける差別的な方法が10進数です。A子さんB美さんC紀さんはそれぞれ等価なのに)

N進数とは

N進数
2進数012種類の数字のみ存在し、一つ上の桁は2倍の重みを持つ。
10進数0~910種類の数字のみ存在し、一つ上の桁は10倍の重みを持つ。
16進数0~9A、B、C、D、E、F16種類の数字のみ存在し、一つ上の桁は16倍の重みを持つ。

人間は指が5本、両手で10本あるので10進数(0~9ではなく1~10と数えてますが)が理解しやすかったんだと思います。

ですが、N進数を規定してみると、当然同じように扱わざるを得ません。(そうでないと連続した値がすべて表現しきれず値が飛んでしまうので。)

つまり、
N進数とは、N種類の数字のみ存在し、一つ上の桁はN倍の重みを持つ。

当たり前といえば当たり前の話なんです、これ。でもいろいろ混乱して分からなくなってしまうもんなんです。


ここから余談

0~9で10種類”などという表現が出てきましたが、専門外の方はあまり意識していないと思います。

情報系の分野では何種類あるかというのをハッキリ認識する必要があるので以下の例考えて記憶に留めてみましょ。

学校のテストは何点満点でしたでしょうか?ポク太郎の通っていた学校では、0点から100点で採点するテストを行っていました。

よく考えたらこれって生徒を101段階のレベルに分類分けしてたんですね。100段階であれば、0~99点、もしくは、1~100点で表したはず。

一つ1点の問題が100問で100点満点ですが、生徒のレベルを100段階で表すのが目的なら99問にしないといけないということですね。

人間みんなキリのいい数値を使いたいのですが、子供にキリのいい数値“100点”を見せて、先生は“101段階”というキリの悪い数値で我慢してるようです。


話の内容

こんな話でしたが内容は伝わりましたでしょうか。
○2進数も10進数も結局同じ


ポク太郎の「俺の説明聞いてくれ」-デジタルの世界って
前の記事 次の記事
“0”と“1”だけ使用する なんで16進数!?(怒)

スポンサーリンク



↓ ランキングに参加しています!(Ctrlキーを押しながら) ↓

blogramのブログランキング

ポク太郎の「俺の説明聞いてくれ」 コンテンツ
ポク太郎の「俺の説明聞いてくれ」最キラー記事 IT関連
電気回路やプログラムの記事。元々のメインコンテンツ。
UWSC奮闘記
プログラミングのできる子に
デジタルの世界って
映画・ドラマ・芸能
ハリウッドが主のエンターテイメントの記事。最近は似顔絵多し。
戦士の息抜き
ブログ運営
AnalyticsやSerchConsolなどの使い方、アクセスアップに関する話題。
アドセンス関連
他のGoogleツール
その他
アホのもくろみ
アホの雑記
取りとめもなく好き勝手に書く記事。不本意にも一番人気だったり。
役に立つかも
休むに似たり
好き勝手に書く
落書き漫画
何故人気なのか全く解らない数コマ漫画。結局最大コンテンツに。
物思いに耽る
免責事項 ホームへ戻る

スポンサーリンク





0 件のコメント:

コメントを投稿