CS50 1-5강 ASCII

업데이트:
1 분 소요

alt

ASCII코드

ASCII 코드

  • 컴퓨터는 텍스트를 비롯한 다양한 형태의 정보를 저장해야 한다.
  • 컴퓨터가 0과 1로된 데이터만 저장할 수 있기 때문에, 그것을 이용해 텍스트
    문자로 나타내야 한다.
  • ASCII(아스키)는 문자를 컴퓨터가 이해할 수 있는 이진데이터(0 또는 1)로
    혹은 그반대로 변환하는 표준 방법이다.

ASCII 인코딩 표준

  • 컴퓨터가 텍스트 데이터를 저장하기 위해 흔하게 사용하는 표준코드체계이다.
  • 숫자 65는 대문자 ‘A’와 대응한다.
  • 컴퓨터가 대문자 ‘A’를 저장하고 싶다면 숫자 65를 이진수로 저장할 것이다.
    2진수로 나타내면 1000001이다.
  • 다음의 25개 값들은 다른 대문자 25개와 대응한다.
  • 소문자 ‘a’는 숫자 97로 나타내고 ‘b’는 98로 나타내며 이후 다른 소문자들도
    마찬가지 이다.

  • ASCII에서 소문자는 같은 대문자 글자보다항상 2^5만큼 큽니다.

alt

ASCII의 한계

  • 기본 ASCII 코드 표는 7비트만 이용해서 모든 문자들을 나타낸다.
  • 이것은 ASCII코드로 2^7개, 즉 128개의 문자를 나타낼수 있다.

확장 ASCII

  • 8번째 비트를 추가하여 총 256개의 문자를 나타낼수 있도록 한다.
  • 소문자와 대문자 통틀어 52개 알파벳 밖에 없으므로 그 외 남은 공간에
    구분 기호, 숫자, 몇몇 기본 심볼들 ($나 % 기호 등) 같은 다른 종류의
    문자들을 나타낼 수 있다.

  • 나타낼수 없는 문자들이 아직도 많이 남아있다.
    • 우리가 쓰는 문자들의 개수는 256개보다 많기 때문이다.

유니코드(UNICODE)

  • 유니코드는 100만개 이상의 문자들을 나타낼 수 있는 문자 인코딩 표준
  • 유니코드의 첫 128개 문자는 ASCII의 128개 문자와 동일해서 서로 호환됨

생각해보기

  • 우리는 왜 ASCII 코드가 필요할까요? ASCII코드가 없다면 어떤문제가 생길까요?
    문자를 읽고 쓰고 즉 표현하는데에 더많은 자원이 소모된다.
  • ASCII코드를 이용해서 여러분들의 이름을 이진수나 십진수로 적을수 있나요?
    2진수 : 01001010 01000101 01001111 01001110 01000111 00100000
     01010111 01001111 01001110 00100000 01011001 01001111 01010101
      01001110 01000111 

    십진수 74 69 79 78 71 32 87 79 68 32 81 79 85 78 71
           J  E  O  N  G     W  O  N     Y  O  U  N  G

댓글남기기