부스트코스 - 모두를 위한 컴퓨터 과학 (CS50 2019) / 1. 컴퓨팅 사고 / 1) 2진법 

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

 

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

부스트코스 무료 강의

www.boostcourse.org

 

Input과 Ouput 사이에 그 과정을 컴퓨터 과학이라고 정의할 수 있다

그리고 이런 입력과 출력을 표현하기위해 모두가 동의하는 표준이 필요하며 컴퓨터가 표현하는 지 약속된 표현방법에 대해 알아야 할 것이다.

 

컴퓨터는 단 2가지 숫자로 표현한다.

이를 2진법 (binary / 0과 1의 조합) 이라 하며, 컴퓨터는 단 0과 1만 가지고 있지만 숫자뿐만 아니라 글자, 사진, 영상, 소리 등 많은 것을 저장할 수 있다. 

어떻게 그것이 가능할까?

 

인간이 익숙하게 사용하는 10진법 (손가락을 기준으로 만들어진) 에서

123을 바라보면 [일이삼] 이라는 문자 표기에서 그치는게 아닌 [백이십삼] 이라는 의미를 얻는다

1 2 3
1x10² 2x10¹ 3x10
100x1 + 10x2 + 1x3 = 123

인간은 오랜시간 사용해온 체계로 저 숫자를 보면 바로 아래와 같은 식으로 변환해 인식한다.

컴퓨터는 인간과 달리 0과 1 만으로 이루어져 있기에

1 1 1
1x2² 1x2¹ 1x2
1x4 + 1x2 + 1x1 = 7

이와같이 비록 원리는 같으나 기준된 숫자를 달리하여 2 이상의 다양한 숫자를 표현한다

 

따라서 이 두가지를 비교하자면

10진법에서의 111 은 111 [백십일] 이지만

2진법에서의 111 은 7을 의미한다 

 

그럼 이런 2진수와 컴퓨터가 무슨 관계일까?

 

0 = 거짓,꺼짐

1 = 진실,켜짐

을 기본으로 의미를 가지며 전기를 켜고 끄는 방식으로 작동하는 데에 적합한 방법이다.

그렇기에 2진법을 사용하며 2진법 하나의 자릿수를 bit (비트 / binary digit) 라는 이름으로 부르며 측정단위로 사용한다.  

 

수많은 비트를 활용하여 정보를 표현 그리고 이를 물리적으로 수행

더 많은 0과 1로 표현하기 위해 여러 bit를 사용하게 되었고 보다 효과적인 단위를 부여하여 사용하게 되었는데 그것이 바로 byte이며 이는 8bit와 동일하다.

 

+ 왜 하필 8 bit 일까?

컴퓨터 아키텍쳐가 영문권인 곳에서 발전했기 때문이라고 한다. 0101010 로 이루어진 전자신호를 사람이 인식할 수 있는 문자로 저장을 했어야 했는데, 영어 문자를 표현하는 코드들의 숫자가 7bit ~8bit 으로 충분했기 때문이라고 한다. (ASCII : 제어문자(32개), 출력가능문자(영소문자, 영대문자, 숫자, 기타 기호, parity bit 등등) 현재도 ASCII extended 부호를 사용하고 있다. (7bit + 1bit) 이래서 1Byte에 문자 1개를 저장할 수 있는 8bit 구조가 된 것이라고 한다.

출처 : https://zepeh.tistory.com/313

 

1바이트는 왜 8비트일까?

컴퓨터가 처리하는 정보의 최소단위. 비트보다 높다. 옛날에는 4비트, 6비트를 1바이트로 삼는 컴퓨터도 있었으나, 현대(적어도 1984년 이후)의 대개의 컴퓨터 아키텍처에서, 1옥텟, 즉 8비트로 1

zepeh.tistory.com

 

비트를 통해 물리적으로 정보를 표현하는 방식을 설명하자면 트랜지스터를 빼놓을 수 없는데, 트랜지스터는 컴퓨터 속에 있는 아주 작은 스위치로 컴퓨터는 수백만, 수십억 개의 이 스위치를 가지고 있다. 

그리고 이 스위치를 물리적으로 이용해 on/off 하며 정보를 표현하고 값을 저장한다.

 

+ 데이터 단위

  단위   정의
  bit / 비트   0 or 1
  byte / 바이트   8 bit
  kB / 킬로바이트   1000 byte
  MB / 메가바이트   1000 kB
  GB / 기가바이트   1000 MB
  TB / 테라바이트   1000 GB

컴퓨터 용량을 표현할때 ex) 1kb 라 했을때 1000 byte  또는 1024 byte 로 단위 기준이 다를때가 있는데 이는 10진법체계와 2진법 체계의 단위 체계때문에 때문

https://93jpark.tistory.com/35

 

1킬로바이트는 1024바이트? 1000바이트?

1 킬로바이트는 1024바이트? 1000바이트? 이전 글에서 정보의 표현 단위인 비트와 바이트에 대해 알아보았습니다. 우리는 일상 속에서 킬로라는 단위를 사용합니다. 이 단위는 10³(1000)을 의미하는

93jpark.tistory.com

 

 

 

 

 

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

컴퓨터 과학 CS - 스크래치  (0) 2022.10.20
컴퓨터 과학 CS - 알고리즘  (0) 2022.10.20
컴퓨터 과학 CS - 정보의 표현  (2) 2022.10.20
컴퓨터 용어 정리  (0) 2022.10.09
특수문자 영어 호칭  (0) 2022.10.05

+ Recent posts