Contents
인코딩/디코딩bit
- 컴퓨터가 이해할 수 있는 최소의 정보 단위 : 0,1→ 0,1의 조합으로 된 정보를 처리
⇒ 컴퓨터가 처리할 수 있는 가장 작은 단위의 정보를 나타내는 : 비트
ex) 1bit에는 0 또는 1을 담을 수 있음(신호 있고 없)
- 경우의 수
-1 bit 당 0,1가 올 수 있음 경우의 수 : 2
(0)(1)
-2 bit 당 0,1가 올 수 있음 경우의 수 : 4
(00)(01)(10)(11)
-3 bit 당 0,1가 올 수 있음 경우의 수 : 8(2^3)
…
-8 bit 당 0,1가 올 수 있음 경우의 수 : 256(2^8) ⇒ 256개의 다른 정보를 나타낼 수 있다.
(숫자 0부터 세면 255까지 count 가)
(보통 프로그래밍에서는 컴퓨터의 데이터 처리의 기본 단위를 1byte로 많이 함 )
1byte ⇒ 8bit
8비트 체제(256 경우의 수)
: 특수문자, 영문자, (숫자-v) 담을 수 있고
⇒문자 1개 표현[1 Byte]
⇒ 여러 번 하면 문장이 됨.
=⇒ 아스키코드 표
*비트를 늘릴수록 경우의 수 늘릴 수 있고 그렇지만 모든 경우의 수는 담을 수 없다.
⇒ 그렇다면 문자는 어떻게 표현? : 아스키코드 표(영어 모두 표현 가능)
(모든 아스키 코드는 7비트로 표현 가능)
(ex) a는 1000 b는 101 등 약속을 해 놓은 것.)
⇒ 하지만 다양한 언어 표현을 담지 못함. 그러면 한국어는? 유니코드 표
현존하는 많은 문자열들을 어떻게 바이너리 형태로 나타낼 건지 규격을 약속하는 것 → 텍스트 인코딩 →UTF-8을 씀
*UTF-8이란?
-기존의 아스키 코드와 모든 유니코드들 있는 많이 쓰는 텍스트 인코딩임
-가변 길이 유니코드 인코딩
⇒ 아스키코드는 7 bit로 표현 가능하기 때문에 1byte로 모두 표현 가능
⇒ unicode는 최소 2byte~ 최대 4byte까지 표현 가능
그래서, UTF-8에서는 1Byte로 표현 가능하면 그대로 데이터 표현
if 2byte이상 필요 시 아래처럼 표현

integer → 4byte →32bit→ 2^32승 경우의 수를 나타낼 수 있음

그렇지만 숫자 0부터 표현해야 하니까
최대 숫자 표현은 (2^32) - 1

음/양수를 모두 표현할려면
옆의 까지 표현 가능
tip
갈 1KByte ⇒1000 Byte ~1000 Byte
매 1MByte ⇒1000KByte ~100만 Byte
기 1GByte ⇒ 1000MByte ~ 10억 Byte
털 1TB(테라)⇒ 1000GByte ~1조
인코딩/디코딩
인코딩(Encoding)과 디코딩(Decoding)은
데이터를 다른 형식이나 표현 방식으로 변환하는 과정을 말합니다.
인코딩은 정보를 특정 규칙에 따라 다른 형태로 변환하는 과정입니다. 예를 들어, 문자열을 인코딩한다면, 문자를 컴퓨터가 이해할 수 있는 0과 1로 이루어진 이진 데이터로 변환하는 작업을 말합니다. 이진 데이터로 변환하는 방법에는 다양한 인코딩 방식이 존재하며, 대표적으로 ASCII, UTF-8, UTF-16 등이 있습니다.
디코딩은 인코딩된 데이터를 원래의 형태로 되돌리는 과정입니다. 즉, 인코딩된 데이터를 다시 읽을 수 있는 형태로 변환하는 것을 의미합니다. 디코딩은 인코딩된 데이터를 인식하여 해당 데이터에 맞는 인코딩 방식을 사용하여 원래의 데이터로 복원하는 과정입니다.
인코딩과 디코딩은 주로 데이터를 전송하거나 저장할 때 사용되며, 데이터의 안정성과 호환성을 보장하기 위해 필요한 과정입니다. 예를 들어, 웹 페이지에서 한글을 표시하기 위해서는 한글 문자를 UTF-8 인코딩으로 변환하여 전송하고, 웹 브라우저에서는 해당 데이터를 디코딩하여 화면에 표시합니다. 이렇게 인코딩과 디코딩은 데이터의 변환과 해석을 가능하게 해주는 중요한 작업입니다.
from gpt
*인코딩
아스키코드로 표현된 코드(기본)
EX> A의 문자를 01010010010으로 바꾸어주고
*디코딩
01010010010에서 A로 바꿈
Share article