ASCII 코드표 128자
십진수·16진수·2진수부터 HTML 엔티티와 Ctrl 조합까지, 번호 하나에서 계산했습니다. 대문자와 소문자가 왜 32 차이인지도 표에서 보입니다.
코드표
가로 여덟 칸이 위 세 비트, 세로 열여섯 줄이 아래 네 비트입니다. 대문자 열 바로 옆이 소문자 열인 것이 이 표의 생김새입니다.
제어문자33
화면에 그려지지 않고 장치에 무엇을 하라고 시키는 글자입니다.
공백1
아무것도 그리지 않지만 자리는 차지하는 글자입니다.
숫자10
0의 코드가 48이라, 아래 네 비트가 곧 그 숫자입니다.
대문자26
A가 65부터 시작해 스물여섯 자가 이어집니다.
소문자26
a가 97부터 시작합니다 — 대문자에 32를 더한 자리입니다.
기호32
숫자와 글자 사이사이에 흩어져 있는 기호들입니다.
제어문자 33자33
서식 제어
줄을 바꾸고 칸을 띄우고 종이를 넘기는, 지금도 쓰이는 글자입니다.
전송 제어
메시지가 어디서 시작하고 끝나는지, 잘 받았는지를 알리던 글자입니다.
장치 제어
종을 울리거나 문자판을 바꾸는 등 장치를 부리던 글자입니다.
구분자
자료를 파일·묶음·레코드·항목으로 나누는 네 층의 구분자입니다.
그 밖
지우기, 취소, 그리고 다른 뜻을 여는 열쇠 ESC가 여기 듭니다.
읽는 방법
- 대문자에 32를 더하면 소문자입니다. 비트 하나만 켜고 끄면 됩니다.
- 숫자 글자는 48부터라, 코드에서 48을 빼면 그 숫자가 됩니다.
- Ctrl과 함께 누르면 위 세 비트가 지워집니다 — Ctrl+I가 탭인 이유입니다.
- 32 아래와 127은 화면에 그려지지 않습니다. 그 자리에는 약칭을 적었습니다.
자주 묻는 질문
Q. ASCII는 왜 128자인가요?
일곱 비트로 적기 때문입니다. 2의 7제곱이 128입니다.
Q. 대문자와 소문자가 왜 32 차이인가요?
여섯 번째 비트 하나로 가르도록 표를 짰기 때문입니다. 그 비트만 켜고 끄면 대소문자가 바뀝니다.
Q. Ctrl+I는 왜 탭이 되나요?
Ctrl은 위 세 비트를 지웁니다. I는 73이고 아래 다섯 비트만 남기면 9, 곧 탭입니다.
Q. 제어문자는 지금도 쓰나요?
줄바꿈(10)·캐리지 리턴(13)·탭(9)·ESC(27)는 매일 쓰입니다. 나머지는 대부분 전신 시절의 자리입니다.
Q. 128 위의 글자는요?
ASCII가 아닙니다. 한글·한자·이모지는 유니코드에서 다루고, UTF-8은 ASCII를 그대로 품습니다.