TL;DR
- ASCII๋ 7๋นํธ ์ธ์ฝ๋ฉ์ผ๋ก ์ด 128๊ฐ ๋ฌธ์๋ฅผ ์ ์ํ๋ค.
- ์ ์ด ๋ฌธ์ 33๊ฐ + ์ถ๋ ฅ ๊ฐ๋ฅ ๋ฌธ์ 95๊ฐ.
- ํ๋ ์ธ์ฝ๋ฉ(UTF-8 ๋ฑ)์ ๊ธฐ์ด์ด๋ฉฐ, 0~127 ๋ฒ์๋ UTF-8๊ณผ ์์ ํ ํธํ๋๋ค.
ASCII (American Standard Code for Information Interchange)
๋ฏธ๊ตญ ์ ๋ณด ๊ตํ ํ์ค ๋ถํธ. ์ปดํจํฐ๊ฐ ๋ฌธ์๋ฅผ ์ซ์๋ก ํํํ๊ธฐ ์ํ 7๋นํธ ์ธ์ฝ๋ฉ ํ์ค์ด๋ค. ๊ฐ์ ๋ฌธ์๋ฅผ ์ ์ํ๋ฉฐ, ํฌ๊ฒ ์ ์ด ๋ฌธ์ (33๊ฐ)์ ์ถ๋ ฅ ๊ฐ๋ฅ ๋ฌธ์ (95๊ฐ)๋ก ๋๋๋ค.
์ ์ด ๋ฌธ์ (0~31, 127) โ 33๊ฐ
ํ๋ฉด์ ์ถ๋ ฅ๋์ง ์์ผ๋ฉฐ, ํต์ ยท์ฅ์น ์ ์ด ์ฉ๋๋ก ์ฌ์ฉ๋๋ค.
| 10์ง | 16์ง | ์ฝ์ | ์๋ฏธ |
|---|---|---|---|
| 0 | 00 | NUL | Null, ๋ฌธ์์ด ์ข ๋ฃ |
| 1 | 01 | SOH | Start of Heading |
| 2 | 02 | STX | Start of Text |
| 3 | 03 | ETX | End of Text |
| 4 | 04 | EOT | End of Transmission |
| 5 | 05 | ENQ | Enquiry |
| 6 | 06 | ACK | Acknowledge |
| 7 | 07 | BEL | Bell, ๊ฒฝ๊ณ ์ |
| 8 | 08 | BS | Backspace |
| 9 | 09 | HT | Horizontal Tab |
| 10 | 0A | LF | Line Feed, ๊ฐํ |
| 11 | 0B | VT | Vertical Tab |
| 12 | 0C | FF | Form Feed |
| 13 | 0D | CR | Carriage Return, ๋ณต๊ท |
| 14 | 0E | SO | Shift Out |
| 15 | 0F | SI | Shift In |
| 16 | 10 | DLE | Data Link Escape |
| 17 | 11 | DC1 | Device Control 1 (XON) |
| 18 | 12 | DC2 | Device Control 2 |
| 19 | 13 | DC3 | Device Control 3 (XOFF) |
| 20 | 14 | DC4 | Device Control 4 |
| 21 | 15 | NAK | Negative Acknowledge |
| 22 | 16 | SYN | Synchronous Idle |
| 23 | 17 | ETB | End of Transmission Block |
| 24 | 18 | CAN | Cancel |
| 25 | 19 | EM | End of Medium |
| 26 | 1A | SUB | Substitute |
| 27 | 1B | ESC | Escape |
| 28 | 1C | FS | File Separator |
| 29 | 1D | GS | Group Separator |
| 30 | 1E | RS | Record Separator |
| 31 | 1F | US | Unit Separator |
| 127 | 7F | DEL | Delete |
์ค๋ฌด์์ ์์ฃผ ๋ง๋๋ ์ ์ด ๋ฌธ์
LF(10),CR(13)โ ์ค๋ฐ๊ฟ (\n,\r). NDJSONยทSSE ๋ฑ ์คํธ๋ฆฌ๋ฐ ํฌ๋งท์ ๋ฉ์์ง ๊ตฌ๋ถ์.HT(9)โ ํญ (\t). TSV ํฌ๋งท ๊ตฌ๋ถ์.NUL(0)โ C ๋ฌธ์์ด ์ข ๋ฃ ํ์.
์ถ๋ ฅ ๊ฐ๋ฅ ๋ฌธ์ (32~126) โ 95๊ฐ
| ๋ฒ์ | ๊ฐ์ | ์ข ๋ฅ |
|---|---|---|
| 32 | 1 | ๊ณต๋ฐฑ (SP) |
| 33 | 33 | ํน์๋ฌธ์ (!, @, #, +, / ๋ฑ) |
| 48~57 | 10 | ์ซ์ (0~9) |
| 65~90 | 26 | ๋๋ฌธ์ (A~Z) |
| 97~122 | 26 | ์๋ฌธ์ (a~z) |
์ ์ฒด ์ถ๋ ฅ ๊ฐ๋ฅ ๋ฌธ์ ํ ์ด๋ธ
| 10์ง | ๋ฌธ์ | 10์ง | ๋ฌธ์ | 10์ง | ๋ฌธ์ | 10์ง | ๋ฌธ์ |
|---|---|---|---|---|---|---|---|
| 32 | (SP) | 56 | 8 | 80 | P | 104 | h |
| 33 | ! | 57 | 9 | 81 | Q | 105 | i |
| 34 | " | 58 | : | 82 | R | 106 | j |
| 35 | # | 59 | ; | 83 | S | 107 | k |
| 36 | $ | 60 | < | 84 | T | 108 | l |
| 37 | % | 61 | = | 85 | U | 109 | m |
| 38 | & | 62 | > | 86 | V | 110 | n |
| 39 | ' | 63 | ? | 87 | W | 111 | o |
| 40 | ( | 64 | @ | 88 | X | 112 | p |
| 41 | ) | 65 | A | 89 | Y | 113 | q |
| 42 | * | 66 | B | 90 | Z | 114 | r |
| 43 | + | 67 | C | 91 | [ | 115 | s |
| 44 | , | 68 | D | 92 | \ | 116 | t |
| 45 | - | 69 | E | 93 | ] | 117 | u |
| 46 | . | 70 | F | 94 | ^ | 118 | v |
| 47 | / | 71 | G | 95 | _ | 119 | w |
| 48 | 0 | 72 | H | 96 | ` | 120 | x |
| 49 | 1 | 73 | I | 97 | a | 121 | y |
| 50 | 2 | 74 | J | 98 | b | 122 | z |
| 51 | 3 | 75 | K | 99 | c | 123 | { |
| 52 | 4 | 76 | L | 100 | d | 124 | | |
| 53 | 5 | 77 | M | 101 | e | 125 | } |
| 54 | 6 | 78 | N | 102 | f | 126 | ~ |
| 55 | 7 | 79 | O | 103 | g |
ํ์ฅ ASCII์ UTF-8
ํ์ฅ ASCII
ํ์ค ASCII๋ 7๋นํธ(128๊ฐ)์ด์ง๋ง, 1๋ฐ์ดํธ(8๋นํธ)์ ๋๋จธ์ง 128์๋ฆฌ(128~255)๋ฅผ ํ์ฉํ ํ์ฅ ์ธ์ฝ๋ฉ์ด ๋ค์ ๋ฑ์ฅํ๋ค:
- ISO 8859 ์๋ฆฌ์ฆ (Latin-1 ๋ฑ)
- IBM ์ฝ๋ ํ์ด์ง (CP437, CP949 ๋ฑ)
- ์ง์ญยท์ธ์ด๋ง๋ค ๋ค๋ฅธ ํ์ฅ์ ์ฌ์ฉํด ํธํ์ฑ ๋ฌธ์ ๊ฐ ๋น๋ฒํ๋ค.
UTF-8๊ณผ์ ๊ด๊ณ
UTF-8์ ์ ๋์ฝ๋๋ฅผ ๊ฐ๋ณ ๊ธธ์ด(1~4๋ฐ์ดํธ)๋ก ์ธ์ฝ๋ฉํ๋ ๋ฐฉ์์ด๋ค.
- 0~127 (1๋ฐ์ดํธ ์์ญ)์ ASCII์ ๋์ผํ๋ค โ ์์ ํ ํ์ ํธํ
- ASCII๋ก ์์ฑ๋ ํ ์คํธ๋ ์์ ์์ด ์ ํจํ UTF-8์ด๋ค
- ์ด ํธํ์ฑ ๋๋ถ์ ASCII ๊ธฐ๋ฐ ํ๋กํ ์ฝ(HTTP ํค๋, JSON ํค์๋ ๋ฑ)์ด UTF-8 ํ๊ฒฝ์์๋ ๊ทธ๋๋ก ๋์ํ๋ค
Connections
- Base64 ์ธ์ฝ๋ฉ โ ASCII 95๊ฐ ์ถ๋ ฅ ๊ฐ๋ฅ ๋ฌธ์ ์ค ์์ ํ 64๊ฐ๋ฅผ ์ ๋ณํ์ฌ ๋ฐ์ด๋๋ฆฌโํ ์คํธ ์ธ์ฝ๋ฉ์ ์ฌ์ฉ
- UTF-8 โ UTF-8์ 1๋ฐ์ดํธ ์์ญ(0~127)์ด ASCII์ ๋์ผ, ์์ ํ ํ์ ํธํ
Source Trail
- ์๋ณธ: ์ํค๋ฐฑ๊ณผ โ ASCII
- ๊ธฐ๋ฐ ํ์ค: ANSI X3.4-1986 (ISO/IEC 646)
Discussion
Comments
๋๊ธ์ ์น์ธ ํ ๊ณต๊ฐ๋ฉ๋๋ค.