Development Log
[CS50] 컴퓨팅 사고 - 2진법 본문
CS (Computer Science, 컴퓨터 과학)
- 문제 해결에 대한 학문이다.
- 문제해결은 입력(input)을 전달받아 출력(output)을 만들어내는 과정으로 그 중간에 있는 과정이 바로 컴퓨터 과학이다.

입력과 출력을 표현하기 위해선 모두가 동의할 약속(표준)이 필요하다.
따라서 컴퓨터 과학의 가장 첫 번째 개념은 어떻게 표현하는지에 대한 표현 방법이다.
컴퓨터에는 10진법과 같이 많은 숫자가 없고, 오직 0과 1로만 데이터를 표현한다.
2진법
- 0과 1로만 표현하는 것이다.
- 컴퓨터에서는 0과 1만으로 숫자 뿐만 아니라 글자, 사진, 영상, 소리 등을 저장할 수 있다.
- 전기를 통해 연산하는, 즉 전기를 켜고 끄는 방식으로 작동하는 컴퓨터에게 적합한 방식이다.
- 컴퓨터에는 굉장히 많은 스위치(트렌지스터)가 있고 on/off 상태를 통해 0과 1을 표현한다.
- 컴퓨터는 2진법에서 하나의 자릿수를 표현하는 단위를 비트(bit)라고 한다.
10진법
- 우리가 일상에서 사용하는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 총 10개의 기호로 표현하는 것이 10진법이다.
약속
- 2진법 : 각 자리수가 2의 거듭제곱을 의미
- 10진법 : 각 자리수를 10의 거듭제곱으로 표현
비트(bit)
- 정보를 저장하고 연산을 수행하기 위해 컴퓨터는 비트(bit)라는 측정 단위를 쓴다.
- 이진 숫자라는 뜻을 가진 binary digit의 줄임말이다.
- 0과 1, 두 가지 값만 가질 수 있는 측정단위이다.
- 디지털 데이터를 여러 비트들로 나타냄으로써 두가지 값만을 가지고도 많은 양의 정보를 저장할 수 있다.
- 컴퓨터는 저장되어 있는 데이터를 수정하기 위해 비트에 수학적 연산을 수행할 수 있다.

비트열
- 비트 한 개는 많은 양의 데이터를 나타내기에 턱없이 부족해서 비트열을 사용한다.
- 여러 숫자 조합을 컴퓨터에 나타내기 위해 비트열을 사용한다. => byte
바이트(byte)
- 여덟 개의 비트가 모여 만들어진 것이다.
- 1byte는 8bit이고 1bit는 0 또는 1이므로 2^8(256)개의 서로 다른 바이트가 존재할 수 있다.
- 바이트가 모이면 더 큰 단위가 될 수 있다.


think about
1) 5를 2진법으로 바꿔보면 어떻게 될까요?
더보기
101
David J. Malan의 강의
모두를 위한 컴퓨터 과학 (CS50 2019)
부스트코스 무료 강의
www.boostcourse.org
'성장 여행기 > CS50' 카테고리의 다른 글
| [CS50] C언어 - 조건문과 루프 (0) | 2022.03.25 |
|---|---|
| [CS50] C언어 - 문자열 (0) | 2022.03.24 |
| [CS50] C언어 - 기초 (0) | 2022.03.24 |
| [CS50] 컴퓨팅 사고 - 알고리즘 (0) | 2022.03.24 |
| [CS50] 컴퓨팅 사고 - 정보의 표현 (0) | 2022.03.23 |