[CS] 2진법

Byunghoon Lee·2021년 7월 19일
0

Computer Science

목록 보기
1/1

2진법

일상에서 사용하는 0~9 총 10개의 숫자로 표현하는것이 10진법입니다.
컴퓨터는 다릅니다.
오직 0과 1로만 데이터를 표현하는데 이러한 표현 방식을 2진법이라고 합니다.
이처럼 2진법으로 동영상, 사진, 글자등을 저장 할수 있는데 어떻게 이렇게 가능할까요?

아래의 사진을 보겠습니다.

우리는 보자마자 '백이십삼' 으로 읽을텐데, 그 이유는 1을 백의자리, 2를 십의자리, 3을 일의자리로 보기 때문입니다.

우리가 저걸 당연하게 10의 거듭제곱을 여기듯, 컴퓨터도 2진법 (2의 거듭제곱) 을 당연하게 여깁니다.

그럼 컴퓨터의 경우 아래의 사진을 어떻게 읽을까요?

앞서 언급했든 컴퓨터는 2진법으로 계산을 하므로

위의 '11'은 2²x1 + 1x1 = 3 입니다.

만약 숫자가 '100'이면 ?
2²x1 + 2¹x0 + 2x0 = 4 입니다.

이와같은 2진법은 전기 켜고 끄는 방식으로 작동하는 컴퓨터에게 적합한 방법입니다.
컴퓨터에는 굉장히 많은 스위치 (트렌지스터)가 있고 on/off 상태를 통해 0과 1을 표현합니다.

비트 / 비트열

컴퓨터는 2진법에서 하나의 자릿수를 표현하는 단위를 비트(bit)라고 합니다.

비트

정보를 저장하고 연산을 수행하기 위해 컴퓨터는 비트(bit) 라는 측정 단위를 사용합니다.
"binary digit"의 약자로, 0과 1, 두 가지 값만 가질 수 있는 측정 단위입니다.

비트열

비트 한 개는 많은 양의 데이터를 나타내기에 턱없이 부족한데, 이러한 이유로 여러 숫자 조합을 컴퓨터에 나타내기 위해 비트열 을 사용합니다.
바이트(byte) 는 여덟 개의 비트가 모여 만들어진 것 입니다.
하나의 바이트에 여덟 개의 비트가 있고, 비트 하나는 0과1로 표현될 수 있기 때문에 2^8 = 256개의 서로 다른 바이트가 존재할 수 있습니다.

바이트가 모이면 더 큰 단위가 될 수 있습니다.
컴퓨터 용량에 킬로바이트는 1,000바이트, 메가바이트는 1,000 킬로바이트(100만 바이트), 기가바이트는 1,000 메가바이트(10억 바이트)입니다. 테라바이트는 1,000 기가바이트(1조 바이트)이며, 페타바이트와 엑사바이트와 같은 더 큰 단위도 존재합니다.

출처 : Cs50

profile
Never never never give up!

0개의 댓글