์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

์•„์Šคํ‚ค ์ฝ”๋“œ์™€ ์œ ๋‹ˆ์ฝ”๋“œ ๊ทธ๋ฆฌ๊ณ  ์ธ์ฝ”๋”ฉ๊ณผ ๋””์ฝ”๋”ฉ

monkeyDugi 2023. 8. 10. 21:52
๋ฐ˜์‘ํ˜•

๐Ÿš€ ์•„์Šคํ‚ค ์ฝ”๋“œ์™€ ์ธ์ฝ”๋”ฉ


์ปดํ“จํ„ฐ์˜ ์ €์žฅ ๋‹จ์œ„

์ปดํ“จํ„ฐ์˜ ๊ธฐ๋ณธ ์ €์žฅ ๋‹จ์œ„๋Š” Byte์ด๋‹ค.

1Byte๋Š” 8bit๋ฅผ ์˜๋ฏธํ•˜๊ณ , 1byte๋Š” 2^8์— ํ•ด๋‹นํ•˜๋Š” 256๊ฐœ์˜ ๊ฐ’์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰, ์šฐ๋ฆฌ๊ฐ€ ์ปดํ“จํ„ฐ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ๋ฌธ์ž๋Š” ์ด Byte์— ๋‹ด๊ธฐ๋Š” ๊ฒƒ์ด๋‹ค.

ASCII(American Standard Code for Information Interchange)

์•„์Šคํ‚ค๋Š” 1960๋…„๋Œ€์— ๋ฏธ๊ตญ์—์„œ ์ •์˜ํ•œ ๋ฌธ์ž ๋ถ€ํ˜ธ ํ‘œ์ค€์ด๋‹ค.

์ปดํ“จํ„ฐ์™€ ํ†ต์‹ ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ •์˜๋œ ๋ถ€ํ˜ธ์ด๋‹ค.

์ปดํ“จํ„ฐ๋Š” ์ด์ง„์ˆ˜๋งŒ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— 0, 1์„ ์ œ์™ธํ•˜๊ณ  ๋‹ค๋ฅธ ๊ฒƒ์„ ์ฝ์„ ์ˆ˜ ์—†๋‹ค.

๊ทธ๋ž˜์„œ ์ตœ์ข…์ ์œผ๋กœ ๋ฌธ์ž๋Š” ์ด์ง„์ˆ˜๋กœ ๋ฐ”๊ปด์„œ ์ปดํ“จํ„ฐ์— ์ €์žฅ๋œ๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ์ž๋ฅผ ์ปดํ“จํ„ฐ ์–ธ์–ด๋กœ ์–ด๋–ค ์‹์œผ๋กœ ํ‘œํ˜„ํ• ์ง€ ์•ฝ์†์„ ์ •ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ

๊ทธ๊ฒŒ ์•„์Šคํ‚ค ์ฝ”๋“œ์ด๋‹ค. ์ด ๋•Œ ์ด ์•ฝ์†๋œ ๊ทœ์น™์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์„ ์ธ์ฝ”๋”ฉ ๋˜๋Š” ๋ถ€ํ˜ธํ™”๋ผ๊ณ  ํ•œ๋‹ค.

์•„์Šคํ‚ค ์ฝ”๋“œ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ๋žŒ์ด ์‚ฌ์šฉํ•  ๋•Œ๋Š” ํŽธํ•˜๊ฒŒ ์‹ญ์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด๋‹ค.

๊ฒฐ๊ตญ ๋งˆ์ง€๋ง‰์— ์ปดํ“จํ„ฐ์™€ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ด์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜๋˜์–ด์•ผ ํ•œ๋‹ค.

ํ‘œ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค.(๋ชจ๋“  ์•„์Šคํ‚ค ์ฝ”๋“œ ํ‘œ๋Š” ์•„๋‹ˆ๊ณ  ์ผ๋ถ€์ด๋‹ค.)

Parity Bit

์•„์Šคํ‚ค ์ฝ”๋“œ๋Š” 8๋น„ํŠธ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•ด์„œ 256๊ฐœ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ 128๊ฐœ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.

์ด์œ ๋Š” ๋งˆ์ง€๋ง‰ 1๋น„ํŠธ๋Š” ํ†ต์‹  ์—๋Ÿฌ ๊ฒ€์ถœ์šฉ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

ํ†ต์‹  ์—๋Ÿฌ ๊ฒ€์ถœ์šฉ ๋น„ํŠธ๋ฅผ Parity Bit๋ผ๊ณ  ํ•œ๋‹ค.

๐Ÿš€ ANSI ์ฝ”๋“œ


7๋น„ํŠธ๋กœ๋Š” ๋ฌธ์ž ํ‘œํ˜„์— ํ•œ๊ณ„๊ฐ€ ์žˆ์–ด์„œ 8๋น„ํŠธ๋กœ ํ™•์žฅํ•œ ์•„์Šคํ‚ค ์ฝ”๋“œ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

256๊ฐœ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์ง€๋งŒ ๊ทธ๋ž˜๋„ ์˜์–ด๊ถŒ์ด ์•„๋‹Œ ํ•œ๊ตญ, ์ค‘๊ตญ ๋“ฑ๊ณผ ๊ฐ™์ด ๋งŽ์€ ๊ตญ๊ฐ€์˜ ์–ธ์–ด๋ฅผ

ํ‘œํ˜„ํ•˜๊ธฐ์—๋Š” ๋„ˆ๋ฌด ๋ถ€์กฑํ•˜๋‹ค.

๐Ÿš€ Unicode(Unicode Transformation Format)


ํ•œ๊ตญ์–ด, ์ค‘๊ตญ์–ด ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฌธ์ž๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ํƒ„์ƒํ•œ ๋ฌธ์ž ์ง‘ํ•ฉ์ด๋‹ค.

๋ฌธ์ž ์ง‘ํ•ฉ์ด๋ผ๋Š”๊ฑด ์ธ์ฝ”๋”ฉ ๋ฐฉ์‹ ์ž์ฒด๋ฅผ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ UTF-8, UTF-16๋“ฑ๊ณผ ๊ฐ™์ด Unicode Format์„ ์˜๋ฏธํ•œ๋‹ค.

์ฆ‰, ์ „์„ธ๊ณ„์˜ ๋ฌธ์ž๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋‚˜์˜จ ์ธ์ฝ”๋”ฉ ๋ฐฉ์‹์ด๋‹ค.

์œ ๋‹ˆ์ฝ”๋“œ๋Š” 1byte ~ 4byte๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ์˜์–ด๋Š” 1byte ํ•œ๊ธ€์€ 3byte์„ ์‚ฌ์šฉํ•œ๋‹ค.

2Byte๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๊ณ  2^16์œผ๋กœ 65536๊ฐœ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค.

์œ ๋‹ˆ์ฝ”๋“œ์—๋Š” UTF-8 Charsest์ด ์กด์žฌํ•œ๋‹ค.

UTF-8

8๋น„ํŠธ๋กœ ๋ฌธ์ž๋ฅผ ํ‘œํ˜„ํ•˜๋Š” Unicode์˜ Charset(์ธ์ฝ”๋”ฉ ๋ฐฉ์‹)์ด๋‹ค.

์ฆ‰, ์‹ค์ œ๋กœ ์ธ์ฝ”๋”ฉ์„ ํ•˜๋Š” ๊ฒƒ์€ Unicode๊ฐ€ ์•„๋‹ˆ๋ผ UTF-8์ธ ๊ฒƒ์ด๋‹ค.

UTF-8์€ ์œ ๋‹ˆ์ฝ”๋“œ๊ฐ€ ์ •์˜ํ•œ Format(์ฝ”๋“œ ํ‘œ)๋ฅผ ๋”ฐ๋ผ์„œ ์ธ์ฝ”๋”ฉ ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.

UTF-8์ด ํ•œ๊ธ€ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•œ ์ด์œ 

์•„์Šคํ‚ค ์ฝ”๋“œ์™€ ๋™์ผํ•˜๊ฒŒ 8๋น„ํŠธ๋ฅผ ์“ฐ๋Š”๋ฐ ์–ด๋–ป๊ฒŒ ํ•œ๊ธ€ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ• ๊นŒ?

8๋น„ํŠธ๋ฅผ 3๊ฐœ๋ฅผ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉํ•˜๊ธฐ์— ๊ฐ€๋Šฅํ•˜๋‹ค.

UTF-16

16๋น„ํŠธ๋กœ ๋ฌธ์ž๋ฅผ ํ‘œํ˜„ํ•˜๋Š” Charset(์ธ์ฝ”๋”ฉ ๋ฐฉ์‹)์ด๋‹ค.

ํ•œ๊ธ€์„ 2byte๋กœ ํ‘œํ˜„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— UTF16๋ณด๋‹ค๋Š” ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿš€ ์ฐธ๊ณ  ์ž๋ฃŒ


https://whatisthenext.tistory.com/103

https://luv-n-interest.tistory.com/1369

๋ฐ˜์‘ํ˜•