이진수(2진수)

1946년 개발된 컴퓨터인 에니악(ENIAC)은 사람에게 익숙한 10진법을 사용하도록 설계되었으니 전기회로는 전압이 불안정해서 전압을 10단계로 나누어 처리하는데 한계가 있었다. 그래서 1950년에 개발된 에드박(EDVAC)은 단 두 가지 단계, 전기가 흐르면 1, 흐르지 않으면 0, 만으로 작동하도록 설계되었고 매우 성공적이었다.
그 이후로 지금까지 대부분의 컴퓨터는 2진 체계로 설계되었기 때문에, 2진법을 알지 못하면 컴퓨터의 동작원리나 데이터 처리방식을 온전히 이해할 수 없다.

  • 컴퓨터는 2진수(0과 1) 밖에 모르기 때문에 10진수 숫자 25를 저장할때 2진수 11001로 바꾸어 저장된다.

십진수

  • 10의 거듭제곱의 합을 줄여 표기한 것
  • 0 ~ 9까지의 숫자를 이용해 수를 표현하는 것
    • 10은 9보다 큰 숫자를 표현하기 위해 사용

이진수

→ 0과 1로 이루어진 일련의 비트를, 수로 해석할 수 있다는 점은, 여러 개의 항목에 이진 레이블을 차례로 할당할 수 있음을 뜻한다.

  • 기수가 10 대신 2이고 사용되는 숫자가 0과 1뿐
    • 그래서 2진수 1에 1을 더하면 2가 아닌 10이 되고, 2진수 11에 1을 더하면 12가 아닌 100이 된다.

이진수 → 십진수

  • 이진수를 십진수로 변환하기는 쉽다.
  • 비트가 1인 자릿값에 해당하는 2의 거듭제곱을 합산하기만 하면된다.

십진수 → 이진수

  • 십진수를 이진수로 변환하는 것은 까다롭지만, 어렵지 않다.
  • 십진수를 2로 나누는 것을 반복한다.
  • 나눌 때마다 0 또는 1이 되는 나머지 값을 적고, 몫은 다음 나누기를 위한 값으로 사용한다.

  • 또는 원래 수에서 2의 거듭제곱을 하나씩 내려가면서 뺌으로써 십진수를 이진수로 변환할 수 있다.

바이트

바이트는 1956년 컴퓨터 설계자인 베르너 부흐홀츠(Werner Buchholz)가 만든 단어이다.

  • 보든 최신 컴퓨터에서 데이터 처리와 메모리 구성의 기본 단위는 8비트(bit)로, 컴퓨터가 값을 저장할 수 있는 최소단위
  • 그러나 1 비트는 너무 작은 단위이기 떄문에 1비트 8개의 묶어서 바이트(byte)라는 단위로 정의해서 데이터의 기본 단위로 사용
    • 단일 바이트로는 256개의 구별되는 값을 인코딩 가능
      • 0 ~ 255 사이의 정수 또는 7비트 아스키코드 문자 집합 중 하나의 문자이거나, 뭔가 다른 것
  • 이 외에도 바이트 9개를 묶은 '워드(word)'라는 단위가 있는데, '워드(word)'는 'CPU가 한 번에 처리할 수 있는 데이터의 크기'를 의미

십육진수(16진수)

만일 비트별로 다른 종류의 정보를 인코딩 한다면, 2진수는 10진수 형태보다 세 배 이상 길어서 너무 많은 공강을 차지하므로 십육진수hexadecimal라는 대안 표기법을 일반적으로 사용한다.

  • 1~ 4비트로 표현할 수 있는 값의 개수

  • 16진수는 16을 기수로 사용하여 16개의 숫자로 표시한다.
    • 0 ~ 9, A ~ F 를 이용하여 각 16진 숫자가 네 개의 비트를 표현한다.
    • 2, 8, 10, 16 진법에 사용되는 기호

  • 8진수는 2진수 3자리를, 16진수는 2진수 4자리를 각각 한자리로 표현할 수 있기 때문에 자리수가 짧아져서 알아보기 쉽고 서로 간의 변환방법 또한 매우 간단
  • 프로그래머가 아니라면 16진수를 볼 수 있는 곳은 많지 않다.
    • 예를 들면 웹페이지의 색상에 16진수가 사용된다.
      • 각 바이트는 적색의 양, 녹색의 양, 청색의 양을 표현하는 데 쓰인다.
        • 이 방법을 RGB 인코딩이라고 한다.
        • 적색의 양 x 녹색의 양 x 청색의 양 = 255 x 255 x 255개를 표현 가능
    • 또한 유나코드 코드표에서도 문자를 식별하고자 16진수를 사용한다.
  • 16진수는 뒤에 '네트워크' 주제에서 다룰 이더넷 주소에서도 볼 수 있고,
    • '웹'에 쓰이는 URL에서 특수 문자를 표현하는 데도 사용

컴퓨터의 32비트와 64비트란?

  • 컴퓨터는 내부적으로 데이터를 다양한 크기의 덩어리 단위로 조작
  • 이런 덩어리는 수와 주소를 포함
    • 수 : 32비트와 64비트가 편리하게 사용
    • 주소 : 메모리상에 있는 정보의 위치
      • 여기서 관련된 것은 후자인 주소 속성

비트와 바이트에 대한 논의

  • 기억해야 할 가장 중요한 사실은 비트 모음의 의미가 상황에 따라 결정
    • 보이는 것만 가지고 비트의 의미 식별 불가
      • 참 또는 거짓을 나타내는 비트 한개와 사용하지 않는 비트 일곱 개
      • 작은 정수 또는 # 같은 아스키코드 문자를 저장한 것
      • 다른 체계에서 문자 한 개의 일부
      • 2바이트, 4바이트, 8바이트로 표현되는 큰 수의 일부
      • 사진이나 음악 작품의 일부분
      • 프로세서가 실행할 명령어의 일부
profile
항해중인 우당탕탕 코린이

0개의 댓글