バイナリコード
バイナリコードは、テキスト、コンピュータープロセッサの命令、または2シンボルシステムを使用するその他のデータを表します。使用される2シンボルシステムは、多くの場合、2進数システムの「0」と「1」です。バイナリコードは、ビットとも呼ばれるビットのパターンを各文字、命令などに割り当てます。たとえば、8ビットのバイナリ文字列は、256の可能な値のいずれかを表すことができるため、さまざまな種類を表すことができますアイテム。
コンピューティングおよび通信では、文字列などのデータをビット列にエンコードするさまざまな方法にバイナリコードが使用されます。これらのメソッドでは、固定幅または可変幅の文字列を使用できます。固定幅のバイナリコードでは、各文字、数字、またはその他の文字は、同じ長さのビット文字列で表されます。 2進数として解釈されるそのビット文字列は、通常、8進、10進、または16進表記でコードテーブルに表示されます。多くの文字セットとそれらの多くの文字エンコーディングがあります。
2進数として解釈されるビット文字列は、10進数に変換できます。たとえば、小文字のaは、ビット文字列01100001(標準ASCIIコードのように)で表される場合、10進数の「97」として表すこともできます。
バイナリコードの歴史
バイナリコードの基礎である現代の2進数システムは、1689年にゴットフリートライプニッツによって発明され、彼の記事Explication de l'ArithmétiqueBinaireに登場します。完全なタイトルは、「2進算術の説明」として英語に翻訳されます。この説明では、文字1と0のみを使用し、その有用性と、それが古代中国のFu Xiの人物に光を当てていることを述べています。 1703)。ライプニッツのシステムは近代的な2進システムのように、0と1を使用しています。ライプニッツはフランスのイエズス会のヨアヒム・ブーベを通じて易経に遭遇し、そのhexagramsが0から111111まで進数にどのように対応するかを魅力と指摘し、このマッピングがあったと結論付けましたライプニッツは、彼が賞賛した哲学的数学の種類における主要な中国の業績の証拠であり、ヘキサグラムは彼自身の宗教的信念の普遍性の肯定と見なした。
2進数はライプニッツの神学の中心でした。彼は、2進数がクリエイティオ・エクス・ニヒロまたはゼロからの創造というキリスト教のアイデアの象徴であると信じていました。ライプニッツは、論理の口頭の文を純粋な数学的文に変換するシステムを見つけようとしていました。彼のアイデアが無視された後、彼はI Chingまたは「Book of Changes」と呼ばれる古典的な中国語のテキストに出会いました。この本は、人生を単純化するか、一連の単純な命題にまで減らすことができるという彼の理論を確認していました。彼はゼロと1の行で構成されるシステムを作成しました。この期間中、ライプニッツはこのシステムの使用法をまだ見つけていませんでした。
ライプニッツよりも前のバイナリシステムも古代世界に存在していました。前述のライプニッツが出会ったI Chingは、中国で紀元前9世紀に遡ります。占いのテキストであるI Chingのバイナリシステムは、陰と陽の二重性に基づいています。バイナリトーンのスリットドラムは、アフリカとアジアのメッセージをエンコードするために使用されます。インドの学者Pingala(紀元前5〜2世紀頃)は、Chandashutramで韻律を記述するためのバイナリシステムを開発しました。
フランス領ポリネシアのマンガレバ島の住民は、1450年以前にハイブリッドの2進10進システムを使用していました。11世紀に、学者で哲学者のシャオ・ヨンは、 、バイナリで表されるように、yinが0、yangが1、最上位の最下位ビット。順序付けは、2要素セットから選択された要素の6組の辞書式順序でもあります。
1605年、フランシスベーコンは、アルファベットの文字を2進数のシーケンスに減らし、ランダムテキストのフォントのほとんど目に見えないバリエーションとしてエンコードできるシステムについて議論しました。バイナリエンコーディングの一般理論にとって重要なことは、このメソッドはすべてのオブジェクトで使用できることです。マスケット銃、および同様の自然の楽器」。
ジョージブールは1847年に「論理の数学的分析」と呼ばれる論文を発表しました。この論文では、代数論理システム(現在はブール代数として知られています)について説明しています。 Booleのシステムは、2つの最も基本的な操作であるAND、OR、およびNOTで構成される、yes-no、on-offアプローチであるバイナリに基づいていました。このシステムは、マサチューセッツ工科大学の大学院生であるクロードシャノンが、彼が学んだブール代数が電気回路に似ていることに気づくまで使用されませんでした。シャノンは1937年に論文を書き、それが彼の発見を実現しました。シャノンの論文は、コンピューター、電気回路などの実用的なアプリケーションでバイナリコードを使用するための出発点になりました。
その他の形式のバイナリコード
ビット文字列はバイナリコードの唯一のタイプではありません。実際、一般的なバイナリシステムは、電子システムのスイッチまたは単純なtrueまたはfalseテストなど、2つの選択肢のみを許可するシステムです。
点字
点字は、視覚障害者がタッチで読み書きするために広く使用されているバイナリコードの一種で、作成者のルイ点字にちなんで命名されました。このシステムは、列ごとに3つの6つのドットのグリッドで構成され、各ドットには2つの状態があります。盛り上がったドットと平らなドットのさまざまな組み合わせは、すべての文字、数字、および句読点を表すことができます。
バグア
八卦掌は、 風水、道教の宇宙論と易経の研究に使用する図です。 ba guaは8トライグラムで構成されています。 bāは8を意味し、 guàは占いを意味します。 64グア(ヘキサグラム)にも同じ単語が使用されます。各図は、3本の線( yáo )を組み合わせたもので、壊れている( yin )または切れていない( yang )のいずれかです。トライグラム間の関係は、原始の「 先天天」または「 福士 」 バグアと、明示された「 後天 」または「王文」 バグアの 2つの配置で表されます。 (64の六角形の王ウェンシーケンスも参照してください)。
コーディングシステム
ASCIIコード
情報交換の米国標準コード(ASCII)は、7ビットのバイナリコードを使用して、コンピューター、通信機器、およびその他のデバイス内のテキストおよびその他の文字を表します。各文字または記号には0〜127の番号が割り当てられます。たとえば、小文字の「a」はビット文字列(10進数で「97」)として1100001で表されます。
2進化10進数
2進化10進数(BCD)は、4ビットニブルを使用して10進数をエンコードする整数値のバイナリエンコード表現です。 4つのバイナリビットは、最大16の異なる値をエンコードできます。ただし、BCDでエンコードされた数値では、各ニブルの最初の10個の値のみが有効であり、10進数のゼロから9までをエンコードします。残りの6つの値は違法であり、BCD算術のコンピューター実装に応じて、マシン例外または不特定の動作を引き起こす可能性があります。
BCD算術は、浮動小数点数の複雑な丸め動作が不適切な商業および金融アプリケーションで、浮動小数点数値形式よりも好ましい場合があります。
バイナリコードの初期の使用
- 1875年:エミール・ボドー「彼の暗号化システムにおけるバイナリ文字列の追加」、これは最終的に今日のASCIIにつながりました。
- 1884:バイナリコードのスライドレールを使用した後、マトリックスが対応するチャネルに分類されるLinotypeマシン。
- 1932年:CEウィン・ウィリアムズの「Scale of Two」カウンター
- 1937:Alan Turing電気機械式バイナリ乗算器
- 1937:複雑なコンピューターのジョージスティビッツ「3を超える」コード
- 1937:アタナソフ–ベリーコンピューター
- 1938:コンラッドズーゼZ1
現在のバイナリの使用
最新のコンピュータのほとんどは、命令とデータにバイナリエンコーディングを使用しています。 CD、DVD、およびBlu-rayディスクは、サウンドとビデオをデジタルでバイナリ形式で表します。通話は、パルスコード変調を使用した長距離および携帯電話ネットワーク、およびボイスオーバーIPネットワークでデジタル方式で行われます。
バイナリコードの重み
一定重みコードの表で定義されているバイナリコードの重みは、表現された単語またはシーケンスをコーディングするバイナリワードのハミング重みです。