1. ホーム
  2. binary

[解決済み] バイナリーコードは、具体的にどのように文字に変換されるのですか?

2022-03-12 04:57:31

質問

興味本位ですが、バイナリーコードは具体的にどのように文字に変換されるのでしょうか?バイナリコードを自動的に単語に変換するサイトがあることは知っていますが、バイナリコードが文字に変換される前に通過する特定の、中間的なステップを理解したいのです。

どのように解決するのですか?

バイナリコードとは単なるデータ(ビット列、バイト列)のことで、文字とは文字のことだとすると、答えは2つのステップになります。 その前に、いくつかの背景を説明します。

  • 文字とは、quot;LATIN CAPITAL LETTER A" や "GREEK SMALL LETTER PI" や "BLACK CHESS KNIGHT" など、単に名前の付いた記号のことである。 文字(抽象記号)と グリフ (文字の絵)。
  • A キャラクターセット は特定の文字の集合で、各文字はコードポイントと呼ばれる特別な番号と関連付けられています。 ユニコード文字セットにおけるコードポイントのマッピングを見るには、以下を参照してください。 http://www.unicode.org/Public/UNIDATA/UnicodeData.txt .

さて、ここからは2つのステップです。

  1. データは、それがテキストである場合、何らかの方法で 文字エンコーディング UTF-8、Latin-1、US-ASCII などのようなものです。 各文字符号化方式は、バイト列をどのようにコードポイントとして解釈するか(逆に、コードポイントをどのようにバイト列として符号化するか)を詳細に規定しています。

  2. バイト列がコードポイントとして解釈されると、各文字が特定のコードポイントを持っているため、文字ができあがります。

2つほど注意点があります。

  • 一部のエンコーディングでは、特定のバイト列がコードポイントに全く対応しないため、文字デコードエラーが発生することがあります。
  • 一部の文字セットでは、未使用のコードポイント、つまり、どの文字にも対応しないコードポイントが存在します。

つまり、すべてのバイト列がテキストとして意味を持つわけではないのです。