[컴퓨터 구조] 0과 1로 숫자를 표현하는 방법

컴퓨터는 01로 모든 정보를 표현하고, 01로 표현된 정보만을 이해할 수 있음

정보 단위

비트(bit)

  • 0이나 1의 값을 가질 수 있음
  • 01을 나타내는 가장 작은 정보 단위
  • n비트는 2n의 정보를 표현할 수 있음
    • 예) 1비트 = 1, 2비트 = 10, 3비트 = 111

바이트(byte)

  • 여덟 개의 비트를 묶은 단위
  • 1바이트 == 8비트 (28이니까 256까지 표현 가능)
  • 더 큰 단위
    • 킬로바이트(KB, kilobyte) - 1바이트 1,000개 (1000B)
    • 메가바이트(MB, megabyte) - 1킬로바이트 1,000개 (1000KB)
    • 기가바이트(GB, gigabyte) - 1메가바이트 1,000개 (1000MB)
    • 테라바이트(TB, terabyte) - 1기가바이트 1,000개 (1000GB)
    • 더 큰 단위들도 존재하나 일반적으로 다루는 크기는 최대 테라바이트 정도

워드(word)

  • CPU가 한번에 처리할 수 있는 데이터 크기
  • 요즘 컴퓨터의 워드 크기는 대부분 32비트 또는 64비트
    • 예) intel x86 = 32비트 워드, intel x64 = 64비트 워드
  • 자주 쓰이는 크기
    • 하프 워드(half word) - 절반 크기
    • 풀 워드(full word) - 1배 크기
    • 더블 워드(double word) - 2배 크기
    • 예) intel x86 CPU의 경우 하프 워드 - 16비트, 풀 워드 - 32비트, 더블 워드 - 64비트

표현법

10진법

  • 0부터 9까지의 숫자만으로 모든 숫자를 표현하는 방법
  • 숫자가 9를 넘어가는 시점에 자리 올림
  • 우리가 일상적으로 사용하고 있는 숫자 세는 법

2진법

  • 01만으로 모든 숫자를 표현하는 방법
  • 숫자가 1을 넘어가는 시점에 자리 올림

    표기법

    • 수학적 표기 - 2진수 끝에 아래첨자 (2) 붙이기
      • 예) 1000(2)
    • 코드상 표기 - 2진수 앞에 0b 붙이기
      • 예) 0b1000

        10진수 2진수
        1 1
        2 10
        3 11
        4 100
        5 101
        6 110
        7 111
        8 1000
        9 1001
        10 1010

2진수의 음수 표현

  • 컴퓨터는 01만 이해할 수 있기 때문에 01만으로 음수를 표현해야 함
  • 가장 널리 사용되는 방법은 2의 보수
    • 사전적 의미는 ‘어떤 수를 그보다 큰 2n에서 뺀 값’
    • 위의 사전적 의미로 이해하는 것 보다, 더 쉽게 표현하는 방법은 모든 01을 뒤집고, 거기에 1을 더하면 됨
    • - 표시가 없기때문에 음수 양수 구분하기가 어렵지만 컴퓨터 내부에서 이를 구분하기 위한 플래그 값이 있음
    • 가장 널리 사용되지만 완벽한 방식은 아님
      • 0이나 2n 형태의 2진수에는 원하는 값이 안나옴
      2진수 2의 보수
      11 01
      1011 0101
      1010 0110
      1010 1110 0101 0010

16진법

  • 0부터 15까지의 숫자로 표현하는데 10에서 15까지는 영어로 표기 (10=A, 11=B, 12=C, 13=D, 14=E, 15=F)
  • F를 넘어가는 시점에 자리 올림

    표기법

    • 수학적 표기 - 16진수 끝에 아래첨자 (16) 붙이기
      • 예) 1A(16)
    • 코드상 표기 - 16진수 앞에 0x 붙이기
      • 예) 0x1A

        10진수 16진수
        1 1
        2 2
        3 3
        4 4
        5 5
        6 6
        7 7
        8 8
        9 9
        10 A
        11 B
        12 C
        13 D
        14 E
        15 F
        16 10

댓글남기기