Today I Learned/컴퓨터기초

[cs50] 1. 컴퓨팅사고 (feat.이진법)

하나719 2023. 5. 26. 17:57
반응형

https://www.boostcourse.org/cs112/lecture/118997

 

모두를 위한 컴퓨터 과학 (CS50 2019)

부스트코스 무료 강의

www.boostcourse.org

컴퓨터 기초 강의중 유명한 cs50을 듣기 시작!

유튜브에도 영상이 있고, edx에도 있는데 아무래도 영어보다 한글이 이해하기 쉽고 부스트코스에 잘 정리해두어서 부스트코스로 들어보려고 한다. 

 

1. 이진법

우리는 평소에 10진법을 사용해서 위에 숫자를 백이십삼이라고 읽는다.

하지만 컴퓨터는 2진법을 사용한다. 

 

왜 컴퓨터는 이진법으로 읽을까????

컴퓨터안에 있는 많은 부품들은 전기를 통해 작동하는데, 전기는 2개중 하나이다.

off or on / 1 or 0 / true or false / 전기 플러그인을 꽂거나 빼거나!!

컴퓨터안에 있는 굉장히 많은 트랜지스터(스위치) 들이 0 또는 1 상태로 정보를 저장하고 표현한다.

0또는1개를 표현하는 단위를 비트(bit) 라고 한다. (8bit = 1 byte)

 

문제) 13을 2진법으로 표현한다면?

(십진법) 13 = (이진법)1101

왜냐하면 2의3제곱(8) + 2의2제곱(4) + 2의0제곱(1) 

2. 정보의 표현 (ASCII, unicode ,RGB)

컴퓨터가 읽는 2진법을 통해서 우리 화면에 수많은 정보를 어떻게 표현하는걸까?

  • ASCII code (아스키코드/American Standard Code for Information Interchange)

출처: 부스트코스 강의자료

1byte로 영어 단어 한개를 표현할 수 있는데, 각 알파벳을 숫자로 정의해두었다. 

만약 hi 라는 텍스트를 표현하고 싶다면, 

h = 72 = 01001000 (2의 6제곱 + 2의 3제곱) 

i = 73 = 01001001(2의 6제곱 + 2의 3제곱 + 2의 0제곱)

 

그런데 점점 표현해야하는 정보의 크기가 커지면서 Unicode 표준을 사용해서 더 많은 정보를 표현할수 있게 되었다. (이모티콘등)

이모티콘은 색깔이 있는데, 이 색깔은 어떻게 표현하는걸까?

모든 색은 Red, Green, Blue 의 조합으로 표현이 가능하다.

그래서 R = 72 , Green = 72, Blue = 33 조합으로 노랑색이 표현될 수 있다.

 

 

반응형