์ธ์ฝ๋ฉ
์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋ฌธ์๋ ๊ธฐํธ๋ฅผ ์ปดํจํฐ๊ฐ ์ด์ฉํ ์ ์๋ ์ ํธ๋ก ๋ง๋๋ ๊ฒ์ ๋งํ๋ค.
๋ฌธ์ → ์ซ์ : ์ธ์ฝ๋ฉ
์ซ์ → ๋ฌธ์ : ๋์ฝ๋ฉ
์๋ฅผ ๋ค์ด, ๋ฉ๋ชจ์ฅ์ A๋ผ๊ณ ์น ๋ค์ ์ ์ฅํ๋ฉด ์ค์ ๋ก ํ๋๋์คํฌ์ ๊ธฐ๋ก๋๋ ์ ๋ณด๋
65๋ผ๋ ์ซ์๊ฐ. A -> 65๋ผ๊ณ ์ ์ฅํ๋๋ก ๋ง๋ค์ด๋จ๊ธฐ ๋๋ฌธ์
์์คํค์ฝ๋
๊ฐ์ฅ ์ฒ์ ๋ง๋ค์ด์ง ์ธ์ฝ๋ฉ์ด ASCII์ฝ๋. ์ซ์์ ๋ฌธ์๋ฅผ ๋งค์นญ์ํค๋ ๊ตญ์ ์ ๊ท์น.
ํจ๋ฆฌํฐ ๋นํธ๋ฅผ ์ ์ธํ๊ณ , 128๊ฐ์ ๋ฌธ์์กฐํฉ์ ์ ๊ณตํ๋ 7๋นํธ ๋ถํธ
(ํจ๋ฆฌํฐ ๋นํธ๋ ๋ฐ์ดํฐ์ ์๋ฌ๋ฅผ ํ์งํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
์ผ๊ณฑ์๋ฆฌ์ ์ด์ง์์์ '1'์ด ํ์๊ฐ๋ผ๋ฉด ๋์ 1์, '1'์ด ์ง์๊ฐ๋ผ๋ฉด ๋์ 0์ ๋ง๋ถ์ธ๋ค. ์์ฃผ ์ ๋ฐํ์ง ์์ง๋ง ํจ๋ฆฌํฐ ๋นํธ๋ฅผ ์ด์ฉํด ์ด๋ ์ ๋์ ์๋ฌ๋ฅผ ํ์งํ ์ ์๋ค.)
๋ฌธ์ ์
- ์์คํค์ฝ๋๋ง์ผ๋ก๋ ์์ด๋ง ํํ ๊ฐ๋ฅ. ๊ฐ ๋๋ผ๋ณ ์ธ์ด๋ฅผ ํํํ ์ ์๋ค.
- ์ฌ๋ฌ ๋๋ผ์ ๋ค์ํ ํ์ค๋ค๊ณผ ์ถฉ๋.
- ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ์ํด ๋ง์ ํ์ค๋ค์ ํ๋๋ก ํฉ์น ์๋ก์ด ๊ธฐ์ค์ด ์ ๋์ฝ๋
์ ๋์ฝ๋(Unicode)
์ ์ธ๊ณ ์ธ์ด์ ๋ฌธ์๋ฅผ ์ ์ํ๊ธฐ ์ํ ๊ตญ์ ํ์ค ์ฝ๋
์ซ์์ ๊ธ์, ์ฆ ํค ๊ฐ์ด 1:1๋ก ๋งคํ๋ ํํ์ ์ฝ๋
์ฌ์ฉ์ค์ธ ์ด์์ฒด์ , ํ๋ก๊ทธ๋จ, ์ธ์ด์ ๊ด๊ณ ์์ด ๋ฌธ์๋ง๋ค ๊ณ ์ ํ ์ฝ๋ ๊ฐ์ ์ ๊ณตํ๋ ์๋ก์ด ๊ฐ๋ ์ ์ฝ๋
์ ๋์ฝ๋๋ 31๋นํธ ๋ฌธ์ ์ ์ด์ง๋ง, ํน์ํ ๋ฌธ์๋ฅผ ์ ์ธํ ์ ์ธ๊ณ ๋ชจ๋ ๋ฌธ์๋ค์ ํ์ 16๋นํธ(ASCII 1byte ๋ฅผ ํ์ฅํ 2 Byte) ์ ์์ญ ์์ ์ ์. ์ต๋ 65,536์ ํํ ๊ฐ๋ฅ
์๋ฌธ/์ซ์/ํ๊ธ/ํ์ ๋ฑ ๋ชจ๋ ๊ธ์๋ ์ด๋ก ์ ์ผ๋ก 2๋ฐ์ดํธ. ํน์ ๋ฌธ์๋ 3๋ฐ์ดํธ๋ก ํํํ๋ ๊ฐ๋ณ์ ์ธ ํํ.
๋ฌธ์ ์
- ์ ๋์ฝ๋๊ฐ ์์ด๋ฅผ ํํํ ๋ 1๋ฐ์ดํธ๋ก, ํ๊ธ์ ํํํ ๋ 2๋ฐ์ดํธ๋ก, ๋ค๋ฅธ ํน์๋ฌธ์๋ฅผ ํํํ ๋ 3๋ฐ์ดํธ๋ก ํํํ๋ ๊ฐ๋ณ์ ์ธ ํํ์ ๋ฌธ์ ๊ฐ ์๊ธด๋ค.
๋์ ๋ฐ๋ผ 1/2๋ฐ์ดํธ๋ฅผ ์ฝ์ผ๋ ์ด๋ ์ปดํจํฐ์๊ฒ ๋งค์ฐ ํฐ ํผ๋์ ์ค๋ค. ๋ฐ๋ผ์ ์ด๋ค ๊ธ์๋ 1๋ฐ์ดํธ๋ก, ์ด๋ค ๊ธ์๋ 2๋ฐ์ดํธ๋ก ์ฝ์์ง ์ ํด์ค์ผํ๋ค.
UTF-8 (8-bit Unicode Transformation Format: ๊ฐ๋ณ๊ธธ์ด ์ธ์ฝ๋ฉ)
์ ๋์ฝ๋๋ฅผ ์ฌ์ฉํ๋ ์ธ์ฝ๋ฉ ๋ฐฉ์ ์ค ํ๋์ด๋ฉฐ ๋ฌธ์์ ๋ฐ๋ผ 1~4๊ฐ ๋ฐ์ดํธ์ ๋๋์ด ์ ์ฅํ๋ ๊ฐ๋ณ ๊ธธ์ด ์ธ์ฝ๋ฉ ๋ฐฉ์์ ์ทจํ๋ค.
- UTF-8์ ๋ฌธ์์ด ์งํฉ๊ณผ ์ธ์ฝ๋ฉ ํํ๋ฅผ 8๋นํธ ๋จ์๋ก ํ๋ค๋ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
- UTF-8์ 31๋นํธ์ ์ ๋์ฝ๋๋ฅผ 1~4๊ฐ์ ๋ฐ์ดํธ์ ๋๋์ด ์ ์ฅํ๋ ๋ฐฉ์
- ๋ณดํต 1๋ฐ์ดํธ๋ง์ผ๋ก ํ์๋๊ณ , 4๋ฐ์ดํธ๋ก ํํ๋๋ ๋ฌธ์๋ ๋ชจ๋ ๊ธฐ๋ณธ ๋ค๊ตญ์ด ํ๋ฉด(BMP) ๋ฐ๊นฅ์ ์ ๋์ฝ๋ ๋ฌธ์์ด๋ฉฐ ๊ฑฐ์ ์ฌ์ฉ๋์ง ์๋๋ค.
- UFT-8 ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ๋ฅผ ์ฝ๋ ๊ฒ๋ง์ผ๋ก ๋ช ๊ฐ์ ๋ฐ์ดํธ๋ก ๊ตฌ์ฑ๋ ๊ฒ์ธ์ง ์ ์ ์์
์ง๋์น ์ ์ฅ์์ ๋ญ๋น๋ฅผ ํผํ๊ธฐ ์ํด ์์คํค์ฝ๋๋ก ํํ ๊ฐ๋ฅํ ๋ฌธ์(์๋ฌธ/์ซ์/๊ธฐํธ)๋ 1๋ฐ์ดํธ๋ก, ์์คํค ์ฝ๋๋ก ํํํ ์ ์๋ ๋ฌธ์(ํ๊ธ/ํ์)๋ 2๋ฐ์ดํธ๋ก ์ด์์ผ๋ก ํํ(ํ๊ธ์ ๋ณดํต 3๋ฐ์ดํธ๋ก ํํ)
๊ทธ๋ ๋ค๋ฉด ์ด๋ป๊ฒ 1๋ฐ์ดํธ๋ก ์ฝ์์ง 4๋ฐ์ดํธ๋ก ์ฝ์์ง ์ ์ ์๋๊ฑธ๊น?
๊ทธ๊ฒ์ ์ฒซ๋ฒ์งธ ๋ฐ์ดํธ๋ฅผ ์์ํ๋ ๋นํธ๊ฐ ์ด๋ค ๊ฒ์ด๋๋ฅผ ๋ณด๋ฉด ์ ์ ์๋ค.
- 0xxxxxxx : ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ๊ฐ 0์ผ๋ก ์์ํ๋ค๋ฉด 0์ด์ธ์ 7 ๋นํธ๋ฅผ ์์คํค๋ก ์ธ์ํ๋ค.
- 110xxxxx 10xxxxxx ๋๋ฒ์งธ ๋ฐ์ดํธ๊น์ง ์ฝ์ด์ ํ๋์ ๋ฌธ์๋ก ํํ
- 1110xxxx 10xxxxxx 10xxxxxx ์ธ๋ฒ์งธ ๋ฐ์ดํธ๊น์ง ์ฝ์ด์ ํ๋์ ๋ฌธ์๋ก ํํ
- 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx ๋ค๋ฒ์งธ ๋ฐ์ดํธ๊น์ง ์ฝ์ด์ ํ๋์ ๋ฌธ์๋ก ํํ
์ฅ์
์ฌ๊ธฐ์ UTF-8์ ๊ฐ์ ์ ์์คํค๋ฐฉ์๊ณผ ์๋ฒฝํ๊ฒ ํธํ(์๋ฌธ ์์ญ์์๋ 100% ํธํ)๋๋ค๋ ๊ฒ์ด๋ค.
์ต๊ทผ์ ํ์ค์ผ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๊ณ ์๋ ์ธ์ฝ๋ฉ ๋ฐฉ์์ด๋ค.
์ ์ธ๊ณ์ ๋ชจ๋ ์ธ์ด๋ฅผ ํ๋์ ํ์ผ์ ์ธ ์ ์๋ค
์ฐธ๊ณ
'๐CS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ ๋-๋ธ๋ ํธ๋ฆฌ (0) | 2021.04.11 |
---|
๋๊ธ