ํ ์คํธ 16์ง์ ๋ณํ๊ธฐ๋?
ํ ์คํธ 16์ง์ ๋ณํ๊ธฐ๋ ๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๋ฅผ ์ซ์ ์ฝ๋ ํฌ์ธํธ๋ก ๋ฐ๊พผ ๋ค, ๊ทธ ๊ฐ์ 16์ง์(16์ง๋ฒ)๋ก ํ์ํด ์ฃผ๋ ๋๊ตฌ์ ๋๋ค. ASCII๋ฅผ 16์ง์๋ก ์ธ์ฝ๋ฉํ๋ ์ด ๋ฐฉ์์ ์ปดํจํ ์ ๋ฐ์์ ํ์ค์ผ๋ก ์ฐ์ ๋๋ค. ๋คํธ์ํฌ ํจํท์ ๋ถ์ํ๊ฑฐ๋ ๋ฐ์ด๋๋ฆฌ ํ์ผ์ ๋๋ฒ๊น ํ ๋๋ ๋ฌผ๋ก , ์ปฌ๋ฌ ์ฝ๋ยท์ด์ค์ผ์ดํ ์ํ์คยท์ ์์ค ๋ฐ์ดํฐ ํฌ๋งท์ ์์ฑํ ๋๋ ํ์ฉ๋์ฃ . 1๋ฐ์ดํธ(0~255)๊ฐ ์ ํํ 2์๋ฆฌ 16์ง์์ ๋์ํ๊ธฐ ๋๋ฌธ์, ๊ฒฐ๊ณผ๋ฌผ์ ๊ฐ๊ฒฐํ๋ฉด์๋ ๋ชจํธํจ์ด ์์ต๋๋ค.
์ฌ์ฉ ๋ฐฉ๋ฒ
์ ๋ ฅ๋์ ํ ์คํธ๋ฅผ ์ ๋ ฅํ๊ฑฐ๋ ๋ถ์ฌ๋ฃ๊ณ , 16์ง์ ๋ฐ์ดํธ๋ฅผ ์ด๋ป๊ฒ ๊ตฌ๋ถํ ์ง(๊ตฌ๋ถ ์์, ๊ณต๋ฐฑ, ์ฝ๋ก , ํ์ดํ) ์ ํํ ๋ค ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ์ธ์. '๊ตฌ๋ถ ์์'์ ์ฐ์๋ ๋ฌธ์์ด๋ก ์ถ๋ ฅ๋์ด ์ฝ๋์ ๊ทธ๋๋ก ๋ณต์ฌยท๋ถ์ฌ๋ฃ๊ธฐ ํ๊ธฐ์ ์ข๊ณ , ๊ณต๋ฐฑ์ด๋ ์ฝ๋ก ์ผ๋ก ๊ตฌ๋ถํ๋ฉด ๋ฐ์ดํธ ๋จ์๋ก ํ๋์ ์ฝ๊ธฐ ํธํฉ๋๋ค.
๋ณํ ์๋ฆฌ
๊ฐ ๋ฌธ์ \(c\)์ ๋ํด ์ซ์ ์ฝ๋ ํฌ์ธํธ์ธ ord(c)๋ฅผ ๊ตฌํฉ๋๋ค. ์ผ๋ฐ์ ์ธ ์์ด ์ํ๋ฒณ, ์ซ์, ๋ฌธ์ฅ ๋ถํธ๋ 0~127 ๋ฒ์์ ASCII์ ์ํฉ๋๋ค. ์ด ์ซ์๋ฅผ 16์ง๋ฒ์ผ๋ก ๋ณํํ ๋ค์, 2์๋ฆฌ๊ฐ ๋๋๋ก ์์ 0์ผ๋ก ์ฑ์๋๋ค(์ด๋ฅธ๋ฐ 02x ํ์). ์ด๋ ๊ฒ ๋ง๋ 2์๋ฆฌ ๋ธ๋ก๋ค์ ๋ชจ๋ ์ด์ด ๋ถ์ด๊ณ , ์ฌ์ด์ฌ์ด์ ์ ํํ ๊ตฌ๋ถ์๋ฅผ ๋ฃ์ด ์ค๋๋ค.
$$\text{Hex} = \underset{c\,\in\,\text{Text}}{\Large\Vert}\; \text{pad}_2\!\left(\text{hex}\big(\text{code}(c)\big)\right)\;\bowtie\;\text{Separator}$$
์ค์ ์์
Hi๋ผ๋ ๋จ์ด๋ฅผ ์๋ก ๋ค์ด ๋ณด๊ฒ ์ต๋๋ค. ๋ฌธ์ "H"์ ์ฝ๋๋ 72์ด๊ณ , ์ด๋ \(\text{0x48}\)์
๋๋ค. ๋ฌธ์ "i"์ ์ฝ๋๋ 105๋ก \(\text{0x69}\)์ ํด๋นํ์ฃ . ๋ฐ๋ผ์ "Hi"๋ ๊ตฌ๋ถ์๊ฐ ์์ผ๋ฉด 4869๊ฐ ๋๊ณ , ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํ๋ฉด 48 69๊ฐ ๋ฉ๋๋ค.
ASCII์์ 16์ง์ ์ฐธ์กฐํ
๊ฐ ์ธ์ ๊ฐ๋ฅํ ASCII ๋ฌธ์๋ 00์์ FF๊น์ง์ 2์๋ฆฌ 16์ง์ ์ฝ๋๋ก ํํ๋๋ ๋จ์ผ ๋ฐ์ดํธ์ ๋งคํ๋ฉ๋๋ค. 16์ง์ ๊ฐ์ ๋ฌธ์์ 10์ง์ ASCII ์ฝ๋๋ฅผ 16์ง๋ฒ์ผ๋ก ๋ณํํ ๊ฒ๊ณผ ๊ฐ์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฌธ์ A๋ 10์ง์ ์ฝ๋ 65๋ฅผ ๊ฐ์ง๋ฉฐ, \(65 = 4 \times 16 + 1\)์ด๋ฏ๋ก 16์ง์ ์ฝ๋๋ 41์
๋๋ค. ๊ณต๋ฐฑ ๊ตฌ๋ถ ๊ธฐํธ๊ฐ ์๋ ๋จ์ด Hi๋ฅผ ๋ณํํ๋ฉด 48 69๊ฐ ๋ฉ๋๋ค.
์ซ์ 0โ9
| ๋ฌธ์ | 10์ง์ | 16์ง์ |
|---|---|---|
| 0 | 48 | 30 |
| 1 | 49 | 31 |
| 2 | 50 | 32 |
| 3 | 51 | 33 |
| 4 | 52 | 34 |
| 5 | 53 | 35 |
| 6 | 54 | 36 |
| 7 | 55 | 37 |
| 8 | 56 | 38 |
| 9 | 57 | 39 |
๋๋ฌธ์ AโZ
| ๋ฌธ์ | 10์ง | 16์ง | ๋ฌธ์ | 10์ง | 16์ง |
|---|---|---|---|---|---|
| A | 65 | 41 | N | 78 | 4E |
| B | 66 | 42 | O | 79 | 4F |
| C | 67 | 43 | P | 80 | 50 |
| D | 68 | 44 | Q | 81 | 51 |
| E | 69 | 45 | R | 82 | 52 |
| F | 70 | 46 | S | 83 | 53 |
| G | 71 | 47 | T | 84 | 54 |
| H | 72 | 48 | U | 85 | 55 |
| I | 73 | 49 | V | 86 | 56 |
| J | 74 | 4A | W | 87 | 57 |
| K | 75 | 4B | X | 88 | 58 |
| L | 76 | 4C | Y | 89 | 59 |
| M | 77 | 4D | Z | 90 | 5A |
์๋ฌธ์ aโz
| ๋ฌธ์ | 10์ง | 16์ง | ๋ฌธ์ | 10์ง | 16์ง |
|---|---|---|---|---|---|
| a | 97 | 61 | n | 110 | 6E |
| b | 98 | 62 | o | 111 | 6F |
| c | 99 | 63 | p | 112 | 70 |
| d | 100 | 64 | q | 113 | 71 |
| e | 101 | 65 | r | 114 | 72 |
| f | 102 | 66 | s | 115 | 73 |
| g | 103 | 67 | t | 116 | 74 |
| h | 104 | 68 | u | 117 | 75 |
| i | 105 | 69 | v | 118 | 76 |
| j | 106 | 6A | w | 119 | 77 |
| k | 107 | 6B | x | 120 | 78 |
| l | 108 | 6C | y | 121 | 79 |
| m | 109 | 6D | z | 122 | 7A |
๊ณต๋ฐฑ & ์ผ๋ฐ ๊ตฌ๋์
| ๋ฌธ์ | ์ด๋ฆ | 10์ง์ | 16์ง์ |
|---|---|---|---|
| (๊ณต๋ฐฑ) | ๊ณต๋ฐฑ | 32 | 20 |
| ! | ๋๋ํ | 33 | 21 |
| # | ์ซ์ ๊ธฐํธ | 35 | 23 |
| ( | ์ผ์ชฝ ๊ดํธ | 40 | 28 |
| ) | ์ค๋ฅธ์ชฝ ๊ดํธ | 41 | 29 |
| , | ์ผํ | 44 | 2C |
| - | ํ์ดํ-๋ง์ด๋์ค | 45 | 2D |
| . | ๋ง์นจํ | 46 | 2E |
| : | ์ฝ๋ก | 58 | 3A |
| @ | ์ณ ๊ธฐํธ | 64 | 40 |
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
๋๋ฌธ์์ ์๋ฌธ์๋ฅผ ๋ค๋ฅด๊ฒ ์ฒ๋ฆฌํ๋์? ๋ค, ์๋ก ๋ค๋ฅธ ASCII ์ฝ๋๋ฅผ ๊ฐ์ง๋๋ค(A=\(\text{0x41}\), a=\(\text{0x61}\)). ๊ทธ๋์ 16์ง์ ๊ฒฐ๊ณผ๋ ๋ฌ๋ผ์ง๋๋ค.
์ด๋ชจ์ง๋ ์ ์ผํธ๊ฐ ๋ถ์ ๋ฌธ์๋ ์ด๋ป๊ฒ ๋๋์? ์ฝ๋๊ฐ 255๋ฅผ ๋๋ ๋ฌธ์๋ 1๋ฐ์ดํธ๋ณด๋ค ํฐ ์ฝ๋ ํฌ์ธํธ๋ฅผ ์ฌ์ฉํ๋ฏ๋ก, ๋ฌธ์ ํ๋๋น 2์๋ฆฌ๋ฅผ ๋๋ 16์ง์๊ฐ ๋์ฌ ์ ์์ต๋๋ค. ์ด ๋๊ตฌ๋ ์ต์ 2์๋ฆฌ๊ฐ ๋๋๋ก 0์ผ๋ก ์ฑ์ ์ค๋๋ค.
๊ฑฐ๊พธ๋ก ๋๋๋ฆด ์๋ ์๋์? ๊ฐ๋ฅํฉ๋๋ค. 16์ง์๋ฅผ ๋ ์๋ฆฌ์ฉ ๋์ด ๊ฐ๊ฐ์ ์ซ์๋ก ๋ณํํ ๋ค, ํด๋น ๋ฌธ์์ ๋์์ํค๋ฉด 16์ง์๋ฅผ ๋ค์ ํ ์คํธ๋ก ๋์ฝ๋ฉํ ์ ์์ต๋๋ค.