少しでも分かりやすく伝えたいASCIIコード
皆さんこんにちは!!
今回はASCIIコードについて説明していきたいと思います!
ASCIIコードとは
ASCIIコードはいわゆる文字コードの一種で7bitの数字文字列で表されます。
7bitの数字文字列と対応する数字や記号に変換することで、ASCIIコードを読むことができます。
ASCIIコードの対応例
「7bit ASCIIコード表」みたいに調べれば対応表は出てくるとは思いますがそれでは味気ないと思うので少しだけ。
上の画像はASCIIコードの一部を例として上げたものです。
このように、7桁の2進数に対して、それぞれ文字や記号、「NUL」や「SOH」といった特殊なコマンドが対応しています。
何故ASCIIコードを用いるか
何故ASCIIコードを用いるかについてなのですが、人間は数字の文字列を見てもすぐにその文字列の意味を理解できる人は滅多にいないですよね。かと言ってコンピュータは数字しか理解することができないのでこのASCIIコードを用いる必要があるのです!
実際にASCIIコードを使ってみる
今回は実際に「Hello World!」をASCIIコードで出力していきたいと思います!
とはいっても、変換したい文字列と対応する文字列とを置き換えるだけなんですけどね…
今回使う文字や記号を全て抽出してみました。
これを順番にあてはめていきます。
H | 1001000 |
e | 1100101 |
l | 1101100 |
l | 1101100 |
o | 1101111 |
W | 1010111 |
o | 1101111 |
r | 1110010 |
l | 1101100 |
d | 1100100 |
! | 0100001 |
まとめ
今回は7bitのASCIIコードについて説明してきました。
ASCIIコードは7bitの数字文字列と記号等を対応づける文字コードのことです。
※ちなみに、半角カタカナも対応した8bitのASCIIコードもありますが、1bitももったいないからと拡張したものなので、場合によっては半角カタカナは対応しておらず、文字化けする事があります。
上の画像の通り半角の「ア」は環境依存文字になっていますね。ちなみに環境依存文字とは使う環境によっては使うことができない(文字化け等をする可能性がある)文字のことです。
これはメールなどでかつてあったらしいですが(今はおそらく問題ない?)、メールを送信時にASCIIコードに変換され、送信される時に8bitASCIIコードではなく7bitASCIIコードに変換され、その時に半角カタカナが使えないことから(定義外)文字化けなどをしてして、半角カタカナがメールで使えないなんてことがあったようです。