컴퓨터 구조, 운영체제 공부 (2)

나무에물주기·2023년 4월 23일
1
post-thumbnail

2장: 컴퓨터에서의 데이터 표현

2-1: 비트, 바이트, 이진법, 십육진법

1. 비트와 바이트

  • 비트는 컴퓨터에서 가장 작은 데이터 단위로, 0과 1의 값을 가질 수 있다.
  • 바이트는 8개의 비트가 모인 것으로, 대부분의 컴퓨터에서 기본 데이터 단위로 사용된다.
  • 예시: 1101 (4비트), 11010101 (8비트, 1바이트)

2. 이진법과 음수 표현

  • 진법은 0과 1만 사용하는 진법으로, 컴퓨터에서 사용하는 데이터를 표현하는 기본 방식이다.
  • 음수는 2의 보수를 이용하여 표현되며, 가장 왼쪽 비트가 부호 비트로 사용된다.
  • 예시: 양수 5는 이진법으로 0101, 음수 -5는 2의 보수를 취한 1011로 표현된다.

3. 십육진법

  • 십육진법은 0부터 9까지의 숫자와 A부터 F까지의 영문자를 사용하여 16개의 기호로 숫자를 표현하는 방식이다.
  • 퓨터에서 데이터를 간결하게 표현할 때 사용되며, 4비트 이진수를 한 자리의 십육진수로 표현할 수 있다.
  • 예시: 이진수 1010 1101은 십육진법으로 AD로 표현된다.

2-2: 문자집합, 아스키코드, EUC-KR, 유니코드 (1/2)

1. 문자집합

  • 문자집합은 문자와 컴퓨터에서 사용할 수 있는 숫자 코드 간의 대응 관계를 정의한 것이다.
  • 컴퓨터에서 문자를 저장하거나 처리하기 위해 문자집합이 필요하다.

2. 아스키코드

  • 아스키코드는 가장 기본적인 문자집합으로, 128개의 문자(알파벳 대소문자, 숫자, 특수문자 등)를 7비트 이진수로 표현한다.
  • 예시: 'A'는 아스키코드로 65, 이진수로 1000001로 표현된다.

3. EUC-KR

  • EUC-KR은 한글을 포함한 2,350자를 표현할 수 있는 문자집합으로, 한글 완성형 코드인 KSC5601을 확장한 것이다.
  • 한글은 2바이트로 표현되며, 약 8,000자 이상의 한글을 표현할 수 있다.
  • 예시: '가'는 EUC-KR 코드로 0xB0A1, 이진수로 10110000 10100001로 표현된다.

2-2: 문자집합, 아스키코드, EUC-KR, 유니코드 (2/2)

4. 4. 유니코드와 UTF 인코딩

  • 1) 유니코드
    유니코드는 전 세계의 모든 문자를 표현하기 위한 국제 표준 문자 집합이다.
    유니코드는 각 문자에 고유한 코드 포인트(숫자)를 할당하며, 다양한 글자를 동시에 사용할 수 있다.
  • 2) UTF 인코딩
    UTF(Unicode Transformation Format)은 유니코드를 실제로 저장하고 전송할 때 사용하는 인코딩 방식이다.
    UTF-8, UTF-16, UTF-32 등 다양한 인코딩 방식이 있어 선택적으로 사용할 수 있다.
  • 3) UTF-8
    가장 널리 사용되는 인코딩 방식이며, 1바이트부터 4바이트까지 가변 길이로 문자를 표현한다.
    아스키코드와 호환성을 유지하면서, 한글, 한자, 이모티콘 등 다양한 문자를 표현할 수 있다.
예시: 'A': 코드 포인트 U+0041, UTF-8 이진수: 01000001 (1바이트)
'가': 코드 포인트 U+AC00, UTF-8 이진수: 11100010 10101100 10000000 (3바이트)
'𝄞': 코드 포인트 U+1D11E, UTF-8 이진수: 11110000 10011101 10000100 10011110 (4바이트)
  • 4) UTF-16
    2바이트 또는 4바이트로 문자를 표현하는 인코딩 방식이다.
    주로 아시아 언어에 적합하며, 유니코드의 기본 다국어 평면(BMP) 문자는 2바이트로 표현된다.
예시:'A': 코드 포인트 U+0041, UTF-16 이진수: 00000000 01000001 (2바이트)
'가': 코드 포인트 U+AC00, UTF-16 이진수: 10101100 00000000 (2바이트)
'𝄞': 코드 포인트 U+1D11E, UTF-16 이진수: 11011000 01001101 11011100 10011110 (4바이트)
  • 5) UTF-32
    모든 유니코드 문자를 4바이트로 표현하는 고정 길이 인코딩 방식이다.
    메모리 사용이 비효율적일 수 있지만, 모든 문자가 동일한 길이기 때문에 처리 속도가 빠르다는 장점이 있다.
예시: 'A': 코드 포인트 U+0041, UTF-32 이진수: 00000000 00000000 00000000 01000001 (4바이트)
'가': 코드 포인트 U+AC00, UTF-32 이진수: 00000000 00000000 10101100 00000000 (4바이트)
'𝄞': 코드 포인트 U+1D11E, UTF-32 이진수: 00000000 00011101 00010001 11101110 (4바이트)

요약

  1. 비트는 컴퓨터에서 가장 작은 데이터 단위로, 0과 1의 값을 가진다. 바이트는 8개의 비트가 모인 것으로, 기본 데이터 단위로 사용된다.
  2. 이진법은 0과 1만 사용하는 진법으로, 컴퓨터에서 사용하는 데이터를 표현하는 기본 방식이다. 음수는 2의 보수를 이용하여 표현된다.
  3. 십육진법은 0부터 9까지의 숫자와 A부터 F까지의 영문자를 사용하여 16개의 기호로 숫자를 표현하는 방식이다.
    문자 집합은 글자와 숫자 등을 컴퓨터에서 표현하기 위해 사용되는 문자들의 집합이다.
  4. 아스키 코드는 128개의 문자를 7비트 이진수로 표현하는 문자 집합으로, 영문 알파벳, 숫자, 특수문자 등이 포함되어 있다.
  5. EUC-KR은 한국어 문자를 표현하기 위해 사용되는 확장 아스키 코드이며, 완성형으로 구성되어 있다.
  6. 유니코드는 전 세계의 모든 문자를 표현하기 위한 국제 표준 문자 집합으로, 각 문자에 고유한 코드 포인트를 할당한다.
  7. UTF 인코딩은 유니코드를 저장하고 전송할 때 사용하는 인코딩 방식이다. UTF-8, UTF-16, UTF-32 등 다양한 인코딩 방식이 있어 선택적으로 사용할 수 있다.
profile
개인 공부를 정리함니다

0개의 댓글