バイナリの素晴らしい世界

この記事はシリーズの一部であり、シリーズインデックスにアクセスします。 ( シリーズインデックス )

プログラミングはこのように長い道のりを歩み、分野は非常に広く多様であり、学習バイナリは不要と考えられる。 多くの高水準スクリプト言語は、実際の形状や形式でバイナリを扱わないため、エンドユーザーには見えます。 実際には、バイナリは、コンピューティングユニット(コンピュータ)全体を動作させる「パーツ」の1つを理解するために使用される概念的ツールです。 したがって、最初から始めるには、使用しているツールをよりよく理解するために、バイナリの本質を理解することが重要であると考えます。

バイナリは実際にはオブジェクトや物理的なものではないので、私は「部分」を引用符で囲みます。 それは、電荷を使って実装されている組織化されたコンセプトの多くです。 最初から始めましょう。

コンピュータのプロセス情報

コンピュータは記号処理機械です。 つまり、それはシンボルだけを扱うことを意味します。 シンボルとは何ですか? 記号は、文字Aが音を表すような、何かを表すものです。 単語「犬」は動物を表します。 動物という言葉はすべての生き物のクラスなどを表します。 コンピュータは、私たちによってその意味が決定された電荷を処理するために作られています。 これらの電荷はシンボルを構成するための何らかの方法でなければなりません。この場合、数字と考えることができます。 バイナリが画像に入る場所です。

電気的状態

現在のところ、これらの電荷には2つの状態しか存在しない:高電荷、および低電荷(典型的には「オン」および「オフ」、または「1」および「0」と呼ばれる)。 幸いなことに、これらのチャージをまとめて、on-on-off-onや1101などのシーケンスを作成することができます。これは数字13を表します。 1101はどのように13を表しますか?

数値ベース

これはより厳しいコンセプトの1つですが、これを完全に達成することができます。 レイ・スピーチを行うための数的な基盤は、私たちがどのようにカウントするかに関するルールのセットです。 私たちの日常生活の中で、10進法を使っています。これは「Base 10」として知られています。 それはベース10と呼ばれています…あなたがどのようにカウントするかをよく見てください:

1… 2… 3… 4… 5… 6… 7… 8… 9… 10…

そこ! あなたは9の後にどのようにして10になるのか見ていますか? だから何が変わったの? 9は0(ゼロ)になり、1(1)は最初にプリペンドされました。 これは…まあ、あなたは9を越えて何を置きますか? あなたが16進数で数えるのでなければ、過去には何も置くことはありません。あなたの初心者の日に戻って考えると、なぜ覚えていますか? カウンティングゲームのこの時点で、ゼロはその場所にあり、1は十位にあります。 各列は値を表します。 例えば左から右へ:

placement_values

1桁が1桁の場合、その桁にその桁の値を掛けます。 例:2 * 10 = 20および3 * 1 = 3 23を作る。

これで、なぜ「ベース10」と呼ばれているのか、または10進数(「デカ」とは10を意味する)がわかります。

バイナリの “Bi”

いいえ、それはタイラ銀行ではありませんあなたの本当のセクシュアリティを見つけることのすべての告白を教えて、それは数えるためにちょうど別の方法です。 “Bi-“インバイナリは2つを意味します。 基本的には、0(ゼロ)と1(1)という2つの数だけを数えます。

これは配置値(小数点以下10桁)にどのような影響がありますか? これらの値(1,000; 100; 10; 1)は、2:1,2 = 2,2 * 2 = 4,2 * 2 * 2 = 8,2 * 2 * 2 * 2 = 16、 64,128等:

binary_placement

それは人を数える別の方法です! ええ、ええ! したがって、0は0、1は1、2は10、3は11、4は100、5は101です。

1(一)は特定の列(配置値)の中で最高のものですので、さらにカウントアップするとすぐに「左にプッシュ」して部屋を確保します。

バイナリと電気

うまくいけば、光を見ることができ、バイナリの抽象概念がコンピュータ内のそれらのオンオフ電荷によってどのように結びついているか、または実装されているかをまとめたことがあります。

それで700番はどのようにコンピュータの「回路」に表現されますか?

最初に、700をとり、最も近い2進数の値:512を引いて、それは188を残し、私たちに[1]を与えます。

binary_step1

だから、最も近いバイナリの値は何ですか? 128 <512/2/2>である。 したがって、188から128を引いて60を得ると、[101]が得られます。

binary_step2

ここでもまた、最も近い2進プレース値(32)を減算して28を得、[10101]を与える。

binary_step3

すすぎとリピート:28から16が私たちに与えている[101011] …

binary_step4

12からの8は私達に[1010111]を与える4です…

binary_step5

そして4から4はゼロです(完了です!)[1010111100]を返します。

binary_step6

つまり、最後に700は1010111100またはオン・オフ・オン・オフ・オン・オン・オン・オン・オン・オン・オフオフであることを意味する。 Bee-de-bee-de-beep、それはちょうだい!

測定情報

1(一)または0(ゼロ)はビットとして知られています。 様々な理由から、多くのコンピュータ操作で容易に使用されるビットの数は、8の倍数である。したがって、8ビットはバイトとして知られている。 ああ、私の神、それは続ける! 1024バイトはキロバイト、1024キロバイトはメガバイト、1024メガバイトはギガバイトです。 メガビット、ギガビットなどの用語が聞こえるかもしれません。これらはわずかに異なる測定値ですが、一般的にメガバイトやギガバイトよりも小さくなっています。

ビットオーダー

タイトルとは対照的に、これは肉食動物の進化的順序ではなく、むしろあなたがプログラムするときにいくらか混乱する単純な概念です。 ビットオーダーまたはビット番号付けと呼ばれます。 現実には、最近ほとんどの場合ビットナンバーを扱う必要はありませんが(ハードウェアのほとんどがハードウェアなので)、そうした場合に備えて存在することを知っておくとよいでしょう。

ビットナンバリングは単にビットを順序付ける方法です。 ビットに番号を付けるには2通りの方法があります。 それらはLSB 0とMSB 0と呼ばれます[詳細]。 これらは、最下位ビット、最上位ビットの略です。 最小の量、この場合は0または1を表すとき、ビットは「最下位」です。ビットは、1バイトなどの最大量を表すときに「最上位」です。 第1ビット(1または0を表す)ビット番号0(第0ビット)の位置を呼ぶと、最小/最上位ビットはビット番号0にあると言うことができる。 グラフィックが説明するのに役立ちます:

LSB-MSB

負の空間

では、負の数をどのように表現するのですか?私が見たことは、ここではポジティブなことです。見た目がいいとはいえ、色が少し必要です。正に、負の2進数を数学的に言うと、あなたはそれが負であると言います。しかしコンピュータの月間話し方では、数字が否定的であることをコンピュータに伝えなければなりません(処理するために何らかの方法を与えます)。

簡単に言えば、この情報を表現するのにビットを使用します(否定性など)。数字の数学的符号(正または負)を示すので符号ビットと呼ばれます。多くの場合、符号ビットはMSBです(上記を参照)、表現される最大値を半分にします。したがって、「符号なし」バイトは0〜255の数字を表し、「符号付き」バイトは-127〜127の数字を表す。

しかし、それはすべての話ではありません。この1ビットでもこれを行うには複数の方法があります。符号と大きさ、1の補数、2の補数、超過nの方法があります。また、符号ビットを使用しない負のベース(ベース-2)を使用する方法もあります。

バイナリで負の数を表現する方法は、実際にはその記事に委ねられています。だから先に進もう…

シンボリック処理の例

だから、すべてが本当に数字であると解釈できるビットなのであれば、どうすれば何ができますか? まあ、一連のビットが数字を表すことができるように、それらは他のものを表すことができます。言い換えれば、数値は他のものを表すことができます。 私はあなたのために私の頭の上から考えることができる2つの例があります。

あなたの画面上の文字のように、手紙を取る。 コンピュータはテキストファイルをどのように理解していますか? (実際にはコンピュータは何も理解していませんが、私たちの表現を追跡しています。)答えはASCII(American Standard Code for Information Interchange)として知られています。 ASCIIは他のテキスト表現に置き換えられた古い標準ですが、今日でも多くの場所で使用されています。 ASCII文字と他のタイプの ‘文字’は数字にマッピング(リンク)されています。 この仕組みの詳細については、http://www.asciitable.com/を参照してください。

あなたの画面に表示されているものはどうですか? これらの日は非常に高精細であるため、画像が実際に画面上のピクセルで構成されていることがわかりにくい場合があります。 ピクセルは、テレビがデジタル、アナログ、CRTまたはプラズマのいずれであるかにかかわらず、テレビのように色の光の1点です。 しかし、ピクセルを作るためにどのように色を知っているのでしょうか? シンプルなASCIIのように、各原色(コンピュータの世界では、George Takeiがあなたに伝えようとしているものであっても、赤、緑、青である)に数字を(0〜255) )これらの3つの数字をまとめて色をつけてください。 だから、140の赤、75の緑、90の青がこの色を作ると言う。 それより細かい粒度(細かさ)のコントロールがありますが、それは256 * 256 * 256の異なる色だけ(16,777,216)を与えます。

バイナリはあなたの友達です

だから、バイナリのコンセプトではなかったら、将来のロボット大将にフィードするシンボルを効果的に整理することができないでしょう。 バイナリなしでは、数値を効果的に表現することはできず、デジタル数学演算(別の記事)を実行することもできませんでした。 だから、バイナリは、最終的にはそれができるほど鈍い、私たちの友人です!

私はバイナリについて学んだことがあるのですが、初心者の方は、How Stuff Worksの書籍(インターネットは一般の消費者には利用できませんでしたが、今日のウェブサイトはhttp://www.howstuffworks.com/)を参照してください。 私はその本を5回チェックアウトして、同じ資料を読んでいるに違いない。 私はそれに魅了されましたが、すぐにもっと知りたいと思っていました。 残念ながら、高次のトピックに進む前に私の読書資料は数年に制限されていました。 私はこの記事があなたのコンピュータの一部を理解するのを助けてくれたことを願っています。

あなたが私の執筆を感謝するなら、私のパトロンを通して私を支えてください。( パトロン )

photo credit: 2008 in binary via photopin (license)

あわせて読みたい

コメントを残す

%d人のブロガーが「いいね」をつけました。