デジタル情報
The Journey Inside℠、インテル® Education プログラム。
機械の言語
コンピューターには、数十億個のトランジスターが内蔵されています。微細な電子スイッチが毎秒数十億回オンとオフを切り替えて、まさに今、皆さんが体験しているコンピューター体験を作り出します。コンピューターや他のデバイス (スマートフォン、タブレット PC など) は、私たちが毎日使う言葉、画像、音を処理するために数字の 0 と 1 を使って、トランジスターのオフ とオン の状態を表すシンプルなコードに変換します。0 と 1で表される情報をデジタル情報と呼びます。一見、単純に見えますが、非常に柔軟性がありテクノロジーの進化に大きな役割を果たしてきました。
レッスン 1: バイナリーコードとは何か?
人は自分自身を表現するために、あらゆる種類のシンボル、音、色、体の動きを使います。これらの表現は、私たちがお互いにコミュニケーションをとるためのコードやシグナルのようなものです。
コンピューターは、処理するデジタル情報を表現するために独自の特殊な言語を使用します。バイナリーコードと呼ばれ、バイとは 2 の意味で 0 と 1 の 2 つの記号だけで構成されてます。
では、なぜ 0 と 1 なのでしょうか?トランジスターを通る電気の流れを表すのに必要な数字はこの 2 つだけだからです。トランジスターはオンかオフのどちらかであり、オンは 1、オフは 0 を示します。コンピューターに話しかけるには、すべてこの 2 つの数字で表現しなければなりません。
レッスン 2: バイナリー・ディジット (ビット) と機械言語
コンピューターがコマンドをーー実行したり、コマンドに応答したりするには、コンピューターが理解する唯一の言語である 2 進法の 0 と 1 に変換する必要があります。0 と 1 は、トランジスターのオン とオフ を表しています。
この 0 か 1 のどちらかをビットと呼びます。単語が複数の文字で構成されているように、コンピューターも 0 と 1 を使って数字、色、グラフィクス、または音を作り出します。つまり大きなもののほんの一部 (「ビット 」) に過ぎないのです。
レッスン 3: ピクセルとは?
数十億個の電子スイッチ(トランジスター)で構成されたコンピュータを想像してみてください。スイッチはオンかオフのどちらかです。
これは、どうでしょうか。コンピュータの画面には、数百万ではないにしても数十万ものドットが行と列に配置されています。このドットの1つ1つがピクセルと呼ばれる画像の一部分であり、使用するピクセル数を解像度と呼びます。ピクセル数が多いほど解像度が高くなり、画質が向上します。例えば、1280 × 720p 解像度のハイデフィニション画面とは、横が 1280 ピクセル、縦が 720 ピクセルの画面のことです。合計で 921,600 ピクセルです。
これらのピクセルのそれぞれが、赤、緑、青の組み合わせで色を作り出します。コンピューターは、この 3 色を混ぜ合わせて、黒や白をはじめとする何百万通りもの色の組み合わせを作り出します。
次のアクティビティーでは、グリッドを白黒のコンピュータ画面の簡略化した画面と考えてみましょう。それぞれのグリッドの正方形は、ピクセルを表しています。このアクティビティーでは、正方形は実物よりもはるかに大きいですが、このアクティビティーを行うことで、オンとオフの 2 つの指示だけで画像が描写されること理解できます。
レッスン 1 のアクティビティー: 写真を使用した作業と遊び。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-3-1]
レッスン 2 のアクティビティー: ピクセルの画像。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-3-2]
レッスン 4: 2 進数
コンピューターが情報の保存と処理に使用する 2 進法では、0 と 1 の 2 つの数字しか使用しません。実際、バイナリーのバイは、2 を意味するラテン語の接頭辞に由来します。バイナリーは、基数 2 の数体系です。2 はシステムが使用する数字の数を表します。
通常使用している 10 進法システムと比較してみましょう。10 進法では 0、1、2、3、4、5、6、7、8、9 の 10 個の数字が含まれます。10 進法の英訳である decimal system の「dec 」はラテン語で 10 を意味する接頭辞に由来しており、名前からも何個の数字が含まれているかがわかります。10 進法システムは基数 10 の数体系です。
では、100 という数字を見たときに、それが 2 進法なのか 10 進法なのかをどのように知ることができるでしょうか。
数学では、数字の集合の中で一番右の数字に小さな添え字の数字を付けて、その数字の集合がどの基数系であるかを示します。1002 と書かれた数字では、小さな 2 は、この数字のセットが基数 2 またはバイナリーであることを示しています。10010と書かれた数字があれば、小さな 10 はこの数字のセットが基数 10 または 10 進法であることを示しています。
2 進数の読み方
2 進数の読み方は 10 進数の読み方とは異なります。10 進法では、すべての数字を一度にまとめて整数として読みます¬-1、10、100。しかし、バイナリーでは、数式のように数字を読みます。それぞれの数字またはビットについて計算問題を解き、個々の答えをすべて加算して、10 進数に相当する整数の合計を求めなければなりません。
例えば、10 進法では 1010 = 10ですが、2進法では 102 = 2 となります。
2 進数を読むためには、まず 1 と 0 のそれぞれの配置を見る必要があり、2 進数は常に右から左に向かって読みます。
10 進 (基数 10) 数では、1 の位、10 の位、100 の位など、値を表す位があります。各位は前の位の 10 倍の重みがあります。2 進法 (基数 2) にも位、つまり列があります。バイナリーでは数字が 2 つしかないので、それぞれの位は前の位の倍 (2 倍) の重みがあります。
バイナリーの位には、少し異なる名前がついています。2 進数では一番右の値が開始の位で、「ゼロの位」になります。そのすぐ左側の位は、スタート地点から 1 つ移動したので「第 1 の位」になります。その次の左の位は、開始の位から 2 つ目にあるため、「第 2 の位」です。
数字の位の位置が重要である理由
例として、2 進数の1002という数字を見てみましょう。
- 右側のゼロの位から始めると、数字は 0 で、重みも 0 です。
- 1 つ左側(第 1 の位)に移動すると、再び 0 です。0 を倍にしても、0 x 2 = 0 なので、0 の値が得られます。
- 次に、さらに 1 つ左側(第 2 の位)に移動すると、1 が確認できます。1 はスタート地点から 2 つ離れているので、その 10 進数の値を求めるには、1 + 1 = 2、2 + 2 = 4 と、2 回に分けて値を倍にする必要があります。つまり、バイナリーで言えば、1002の 1 は 4 の重みがあります。
- 最後に、3 つの 2 進数の値を合計して、10 進数で同等の整数の合計値を求めます:4 + 0 + 0 = 4 したがって、1002は 10 進数の 4、もしくは410と同じになります。
2 進数を 10進数に変換するためのヒント:
- 2 進数を数式のように読みます。
- それぞれの数字を独立した数学の問題のように扱います。個々の計算問題を解いたら、個々の計算結果を合計して答えを求めます。
- 2 進法では、数字が左に 1 つ移動するたびに重みは 2 倍になります。1 または 0 で表されるビットの位は、数字を何倍にするかを示しています。
- 常に 2 進数は右から左から読みます。
レッスン 1 のアクティビティー: 10 進数と 2 進数の等価物を見つける。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-4-1]
レッスン 2 のアクティビティー: 10 進数を 2 進数に変換する。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-4-2]
レッスン5: 2 進数を追加する方法
レッスン 4 では、ある 2 進数を読んで 10 進数に変換する方法を学びましたが、2 進数の加算についてはどうでしょうか。
次の数式をどのように解きますか:102+112=?
問題を小さなステップに分けて対応する 10 進数を求めてみましょう。
まず、各数字の末尾に下付き添字の 2 があり、これは 2 進数であることを示しています。次に個々の数字に対して計算をする必要があります。
102から初めましょう。1 と 0 の 2 つの数字があります。
- 右側から見ていくと、数字の 0 があり、これは 10 進数では 0 です。
- 次に、1 を見てみましょう。開始の位から 1 つ左側にあるので、2 倍の重み、つまり 1 + 1 の 2 となります。
- 最後に、2 つの回答を合計します: 0+2=2 したがって、102 は 10 進数の 2 と同じになります。
では、112を見てみましょう。
- 右から順に、最初の数字は 1 で、10 進数では 1 となります。
- 次に、1 つ左に移動して、もう 1 つの 1 を見ましょう。この数字は開始の位の 1 つ左にあるので、2 倍の重み、つまり 1 + 1 で 2 になります。
- ここで、2 つの答えを足し算します。1 + 2 = 3。したがって、112 は 10 進数の 3 と同じになります。
最後に、両方の数式の合計 2 + 3 を算出し、最終的に整数の回答である 5 を求めます。2 進法で書くと、102 + 112 = 1012 となります。
(ヒント:自分の作業を再確認したい場合は、レッスン 4 のアクティビティーを復習してみましょう)
10 進数から 2 進数への変換
さて、2 進数から 10 進数への変換方法を学んだところで、今度は逆に変換してみましょう。
10 進数を 2 進数に変換するには、やはり位を考える必要があります。
|
|
|
|
|
|
|
|
レッスン 4 では、ゼロの位から左に移動するごとに、前の位の重みを 2 倍にしなければならないことを学びました。
10 進数を 2 進数に変換しようとする場合、まず、その数字に限りなく近く、かつ越えない位の重みを見つける必要があります。
最後の例題の答えである 10 進法の 5 を見てみましょう。5 に最も近く、5 を越えない位の重みの列にマークを付けるとしたら、どこに付けますか?そうです。4 の列です。
|
|
その結果、残りは 1 となります。どの列に収まるでしょうか?そうです。1 の列です。
|
2 進数は 0 か 1 のどちらかを含み、空きスペースを含めることはできないことを理解しています。では、空のスペースには何が入るでしょうか。そうです。数字の 0 です。
これで、10 進数の 5 が 2 進数の 101 と同等であることがわかりました。
レッスンのアクティビティー: 2 進数の加算。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-5-1]
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-5-2]
レッスン6: バイナリーから ASCII へ
ビットとは、2 進法の 0 と 1 のことで、情報を表現するためにさまざまな方法で使用できます。コンピュータは、ASCII (American Standard Code for Information Interchange) と呼ばれる標準的な言語を使って相互に通信します。
ASCII は 8ビットのコードで、8 ビットを 1 バイトと呼びます。ASCII では、文字、数字、句読点を 1 バイトで表します。例えば、小文字の a は 011000012 で表されます。Cat という単語は、011000112 011000012 011101002 となります。
レッスン 1 のアクティビティー: 名前ゲーム。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-6-1]
レッスン 2 のアクティビティー: ASCII で書かれたシークレット・メッセージ。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-6-2]
レッスン 3 のアクティビティー: ASCII コード表。
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-6-3]
ソフトウェア作成における AND / OR ステートメント
私たちは、どの映画を見るか、学校からどうやって一番早く帰るか (バス、自転車、徒歩) など毎日決断します。これらは、1 度に 1 つの選択肢しか選べない OR 状況と呼ばれます。
友達と映画を見に行くために、宿題と家事の両方をこなさなければならないなど、人生には AND の状況もたくさんあります。この場合、結果 (映画に行けること) を得るためには、両方とも行わなければなりません。
プログラマーはソフトウェアを書くとき、多くの場合、AND や OR を使って結果を決定します。AND という単語は、その結果が起こるためには両方の条件が true (つまり、両方に「yes 」と言う) であることを条件とします。
OR という単語は、結果が起こるためには、1 つ目の文と 2 つ目の文のどちらかが true であること (片方が yes でもう片方が no ) を必要とします。
yes を 1、no を 0 と考えれば、バイナリコードを使うコンピューターのトランジスターが AND 文や OR 文を理解できることがお分かりいただけたかと思います。
次はこれまでお話してきたことの簡単な概要です。
- バイナリーとは、0 と 1 の数字で構成されるコードです。
- コンピューターには、オンにもオフにもなるトランジスターが使用されています。
- 1 = yes 、0 = no とすれば、バイナリコードは単純な質問に対して yes 、か no。かで答えることができます。
レッスンのアクティビティー: 映画鑑賞に行けますか?
[ji-lesson:/content/dam/hub/intel/smg/cxs/interact-bu-experiences/cross-bu/edu-journey-inside/digital-information/lesson-7]
詳細情報が必要な場合
デジタル情報をより深く知るために、これらのリソースをご覧ください。
カリキュラムについて
電気からバイナリー、インターネットまで、The Journey Inside™ によるその他のレッスンをご覧ください。
コンピューターの紹介
このユニットでは、コンピューターの短い歴史について説明し、コンピューターの 4 つの主要なコンポーネントを紹介し、コンピューターの「脳」と人間の脳を比較します。
回路とスイッチ
このユニットでは、学生に、電気、電気回路、機械式スイッチと非機械式 (トランジスター) スイッチとの違いを教えます。
デジタル情報
このユニットでは、10 進数と 2 進数との違い、バイナリーコードを使用した情報の表示方法と処理方法について説明します。
マイクロプロセッサー
このユニットでは、マイクロプロセッサーがどのように情報を処理しているかを調べ、その回路のサイズと複雑さについて示し、それらがどのように製造されているかについて説明します。
インターネット
このユニットでは、インターネットについて定義した後、ワールド・ワイド・ウェブ、ハイパーテキスト、URL、パケット、帯域幅、接続の選択、検索エンジン、およびウェブ上で検出される情報の品質を批判的に評価する必要について説明します。
テクノロジーと社会
このユニットでは、過去および現在の事例を交えて、人々の生活に影響する技術的進歩について説明します。一部の読み物では、デジタル時代がすでに変化のスピードに影響を与えている様子や、近い将来に予想される事柄に関する洞察を提供しています。