[CS]ASCIIコード
5145 ワード
コンピュータはどのように文字を表現しますか?
ASCIIコード
コンピューターを扱う世界では、数年来、数字をアルファベット文字に対応させる基準が採用されています.これがASCIIコードです.これは十進法で対応する文字の表です.
私たちが使っているプログラム、Webブラウザ、電子メールの文字は、ASCIIコードの標準的な方法でビットモードに簡単に変換できます.
ASCIIコード制限
7 bitのみを使用してすべての文字を表します.これは、ASCIIコードが2の7平方、すなわち128文字を表すことができることを意味します.
「」は8番目に追加でき、256文字を表示します.小文字と大文字は52個あり、残りのスペースはセパレータ、数字、その他の基本要素($、%、&記号など)などの他のタイプの文字を表すことができます.
Unicode
Unicode(Unicode)は工業標準であり、Unicode Consortiumが制定した世界のすべての文字をコンピュータ上で統一的に表現し、処理することを目的としている.この規格は、ISO 10646文字セット、文字符号化、文字情報データベース、文字を処理するアルゴリズムなどを含む.
Unicodeが誕生するまでは、同じハングルが書かれたテキストファイルでもそれぞれの表現方法があり、あるファイルがサポートされていない他の符号化形式で格納されている場合は、ファイルを正しくロードできません.基本的に、Unicodeの目的は、既存のすべての文字符号化方法をUnicodeに置き換えることである.
コーディング
入力
コーディングモード
UTF-8 vs UTF-16
UTF-8とUTF-16は符号化方式の違いを意味する.
UTF-8はUniversal Coded Character Set+Transformation Format-8-bitの略で、UTF-8の後ろの数字はビットです.
1.UTF-8特性:可変長符号化
UTF-8は、Unicode文字を1バイト(=8ビット)から4バイトで表す.
n/a原理
例えば、
코
という文字のUnicodeは、U+CF 54(16進数、HEX)として表される.この文字をバイナリ(binarynumber)で表すと1100-1111-0101-0100
になります.この文字をUTF-8として表すと、以下のように3バイトの結果として表示されます.UTF-8表示の「鼻」
1110xxxx 10xxxxxx 10xxxxxx # x 안에 순서대로 값을 채워넣는다.
11101100 10111101 10010100
let encoder = new TextEncoder(); // 기본 인코딩은 'utf-8'
encoder().encode('코') // Uint8Array(3) [236, 189, 148]
(236).toString(2) // "11101110"
(189).toString(2) // "10111101"
(148).toString(2) // "10010100"
ASCIIコードは7 bitで表され、UTF-8は1 byteの結果を生成することができ、以下に示す.次の例では、UTF-8を使用してb
文字を符号化します.UTF-8が示す「b」
0xxxxxxx 01100010
「b」はUTF-8で表すことができる.
js encoder.encode('b') // Uint8Array [98] (98).toString(2) // "1100010"
UTF-8はASCIIコードの1バイト、大文字英語の単文字は2バイト、3バイト、補助文字は4バイトです.おばさんは補助字に相当するので、4 byteが必要です.
2.UTF-8特性:バイト順固定
3.UTF-16フィーチャー:コード内のバイト順
コードでバイトを表すことができます
バイト順は多種多様です.
UTF-16は、Unicodeコードの大部分(U+0000からU+FFF;BMP)を16ビットとして表す.
その他の
UTF-16では、韓国語が2バイトを占めています
Reference
この問題について([CS]ASCIIコード), 我々は、より多くの情報をここで見つけました https://velog.io/@wanzekim/Computer-Science-ASCIIテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol