回答編集履歴
2
修正
answer
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
|
7
7
|
流石にそれは不便だという事でShift-JIS, EUC-JP, UFT-8等の文字コードが次々と登場しましたが、
|
8
8
|
これらはASCII文字をベースに拡張されています。
|
9
|
+
(ASCII文字をベースとしなかった文字コードも多数存在します。)
|
9
10
|
|
10
11
|
以下は例としてのShift-JISの実装の一例です。
|
11
12
|
ASCII文字は7bitで成り立っているので、先頭に0の1ビットを足して8ビットとして管理、
|
@@ -14,5 +15,5 @@
|
|
14
15
|
(ただし、1bit目が1であっても特定の値は半角カナとして取り扱う)
|
15
16
|
|
16
17
|
「Shift-JIS, EUC-JP, UFT-8」というASCII文字をベースとして拡張された文字コードに関しては、
|
17
|
-
文字化けせずに保たれることが確認出来ます。
|
18
|
+
相互に変換をかけても、ASCII文字に関しては文字化けせずに保たれることが確認出来ます。
|
18
19
|
その辺の事情で、ASCIIという文字コードを普段意識することは無いかと思います。
|
1
例外等補足
answer
CHANGED
@@ -5,14 +5,14 @@
|
|
5
5
|
お前らも英語でやれよと突っぱねる形式となっていました。
|
6
6
|
|
7
7
|
流石にそれは不便だという事でShift-JIS, EUC-JP, UFT-8等の文字コードが次々と登場しましたが、
|
8
|
-
|
8
|
+
これらはASCII文字をベースに拡張されています。
|
9
9
|
|
10
|
-
|
10
|
+
以下は例としてのShift-JISの実装の一例です。
|
11
11
|
ASCII文字は7bitで成り立っているので、先頭に0の1ビットを足して8ビットとして管理、
|
12
12
|
そして先頭の1ビット目が1で固定させた8ビットの塊を先頭に付ける事で約3万文字の拡張…というやり方で実装されています。
|
13
13
|
文字の先頭1ビット目を確認すれば、これはASCII文字か、次の1バイトを更に読み込んで2バイト文字として読み込むかを分岐させて判別しています。
|
14
|
-
(
|
14
|
+
(ただし、1bit目が1であっても特定の値は半角カナとして取り扱う)
|
15
15
|
|
16
|
-
|
16
|
+
「Shift-JIS, EUC-JP, UFT-8」というASCII文字をベースとして拡張された文字コードに関しては、
|
17
|
-
|
17
|
+
文字化けせずに保たれることが確認出来ます。
|
18
|
-
その辺の事情で、ASCIIという文字コードを意識することは無いかと思います。
|
18
|
+
その辺の事情で、ASCIIという文字コードを普段意識することは無いかと思います。
|