ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [컴퓨팅 사고] 2진법
    Stage/Computer Science 2021. 5. 26. 01:03

    CS50 - David J. Malan (데이비드 J. 말란)

     

    학습 목표

    컴퓨터 과학이 무엇인지 정의하고, 컴퓨터가 정보를 표현하는 방법에 대해 설명할 수 있다.

     

    1. 컴퓨터 과학은 무엇인가?

    컴퓨터 과학은 문제 해결에 대한 학문이다.
    문제 해결이란 무엇인가?
    input을 전달받아 output을 만들어내는 과정이다.

    문제 해결과 컴퓨터 과학이 무슨 연관 관계가 있다는 말일까?
    input을 전달 받아 output을 만들어 낼 때 그 중간에 있는 과정이 컴퓨터 과학이다.

    input -> 컴퓨터 과학 -> output

     

    2. 컴퓨터가 정보를 표현하는 방법?

    input이 들어오면 컴퓨터 과학을 거쳐서 output으로 나오게 된다.
    input과 output을 표현하려면 모든 사람들이 동의할 약속이 필요하다.

     

    2.0. 2진법

    우리는 10진법을 사용해서 기호를 표현하지만, 컴퓨터는 오로지 0과 1만으로 데이터를 표현한다.
    0과 1만으로 표현하는 것을 2진법이라고 하는데, 컴퓨터는 0과 1만으로 숫자도 표현하고 글자, 사진, 영상, 소리 등을 저장할 수도 있다.

    예를들어 123 이라는 숫자가 있을 때 우리는 당연하게도 이 수를 백이십삼으로 읽는다.
    123이 각각 백의 자리, 십의 자리, 일의 자리 수 이기 때문이다. (10진법 사용)

    • 1 = 1 * 100 (10의 2승)
    • 2 = 2 * 10 (10의 1승)
    • 3 = 3 * 1 (10의 0승)

    이렇게 자리수를 10의 거듭제곱으로 표현하면 되는데, 이를 2진법에 적용을 하면 2진법에서는 숫자가 0과 1 두 개만 있으면 되니까 2의 0승, 2의 1승, 2의 2승, 2의 3승..... 이런식으로 표현을 하면 된다.

     

    2.1. 10진법과 2진법

    10진법의 13을 2진법으로 표현하면 1101 이라는 수가 나온다.

    8 4 2 1
    
    1 1 0 1

    13이라는 수를 만드려면 8, 4, 1 을 다 더하면 된다.
    8, 4, 1은 on을 하고, 2는 off. (켜기 = 1, 끄기 = 0)

     

    2.2. 비트(binary digit)

    이진 숫자라는 의미이며, 0과 1 만 가질 수 있는 측정 단위이다.

     

    2.3. 비트열

    하나의 비트는 0과 1, 두 가지만 가질 수 있는데 비트 한 개로 수많은 데이터를 나타내기에는 부족하다.
    그러므로 여러가지 숫자 조합을 컴퓨터에 나타내기 위해서 비트열을 사용한다.
    바이트(byte)는 여덟 개의 비트가 모여 만들어진 것이다.
    비트 한 개는 0, 1을 표현할 수 있고, 바이트 한 개는 비트 여덟 개가 모인 것이니까 2의 8승 = 256개(1 바이트).

     

    'Stage > Computer Science' 카테고리의 다른 글

    [C언어] 조건문과 루프  (0) 2021.05.26
    [C언어] 문자열  (0) 2021.05.26
    [C언어] C 기초  (0) 2021.05.26
    [컴퓨팅 사고] 알고리즘  (0) 2021.05.26
    [컴퓨팅 사고] 정보의 표현  (0) 2021.05.26

    댓글