풍성한 라벤더농장이 될때까지
article thumbnail

오늘 공부한 내용

🫠(개인공부)

 

CS50 1-1 2진법

 

 

1. 컴퓨팅 사고

1) 2진법

컴퓨터과학

컴퓨터 과학 → 문제 해결에 대한 학문

문제 해결 → 입력(input)을 전달받아 출력(output)을 만들어내는 과정

이 중간에 있는 과정이 바로 컴퓨터 과학

위와 같은 입출력을 표현하기 위해서는 약속(표준)이 필요하다

→ 컴퓨터 과학의 첫번째 개념은 어떻게 표현하는지에 대한 표현 방법

 

2진법

우리가 일상에서 사용하는 0~10 → 10진법

0, 1로 데이터 표현 → 2진법

컴퓨터는 0, 1만으로 숫자뿐 아니라 글자, 영상, 사진, 소리 등을 저장할 수 있다.

위 숫자를 “백이십삼”으로 읽는 이유는 1을 백의자리, 2를 십의자리, 3을 일의자리로 보기 때문

→ 즉 1 * 100 + 2 * 10 + 3 * 1 = 123

자리수를 10의 거듭제곱으로 표현하자는 약속이 있기 때문에 위 과정을 당연하게 여김

비슷하게 2진법에서는 두 개의 숫자만 있으므로, 각 자리수가 2의 거듭제곱을 의미한다

 

이 방법으로 10진법 3을 2이진법으로 표현하면 11이 된다.

2진법은 전기를 켜고 끄는 방식으로 작동하는 컴퓨터에 적합하다.

(컴퓨터엔 많은 스위치(트랜지스터)가 있고 온오프 상태를 통해 0, 1을 표현)

이때 2진법에서 하나의 자릿수를 표현하는 단위를 비트(bit)라고 한다.

 

비트

정보를 저장하고 연산을 수행하기 위해 쓰는 측정단위

이진숫자(binary digit)의 줄임말로 0, 1 두가지 값만 가질 수 있는 측정단위.

디지털 데이터를 여러 비트들로 나타내며 많은 양의 정보를 저장할 수 있고, 저장된 데이터의 수정을 위해 비트에 수학적 연산 수행 가능

 

비트열

하나의 비트는 0, 1 두가지 값만 저장 가능. → 스위치(온 = 1, 오프 = 0)

비트 한개는 많은 양의 데이터를 나타내기에는 부족, 여러 숫자 조합을 나타내기 위해 비트열 사용

바이트(byte): 8개의 비트 모임

→ 하나의 바이트에 8개의 비트가 있고, 비트 1개는 0과 1로 표현 가능하기 때문에 2^8 = 256개의 서로 다른 바이트 존재 가능

 

이외 단위로는

→ 킬로바이트는 1,000 바이트, 메가바이트는 1,000 킬로바이트(100만 바이트), 기가바이트는 1,000 메가바이트(10억 바이트), 테라바이트는 1,000 기가바이트(1조 바이트), 페타바이트와 엑사바이트와 같은 더 큰 단위도 존재


오늘의 느낀점

급 cs공부의 결과물이 과연 어떨지 궁금하다 열심히하자!

 

profile

풍성한 라벤더농장이 될때까지

@그레이라벤더

느리지만 꾸준히 굴러서 큰 바다가 되고싶은 개발 어린이