[Chapter 02] 데이터

2025. 7. 24. 23:18·✍🏻 TIL/혼자 공부하는 컴퓨터 구조+운영체제

비트(bit): 0과 1을 표현할 수 있는 가장 작은 정보 단위

바이트(byte) = 8bit

 

kB -> MB -> GB -> TB : (이전 단위) x (1,000)

KiB -> MiB -> GiB -> TiB : (이전 단위) x (1,024)

 

워드(word): CPU가 한 번에 처리할 수 있는 데이터 크기


이진수 표기: [주로 수학적] 아래첨자 (2) , [주로 코드상] 숫자 앞에 0b

십육진수 표기: [주로 수학적] 아래첨자 (16) , [주로 코드상] 숫자 앞에 0x

 

2의 보수(two's complement): 어떤 수를 그보다 큰 2^n에서 뺀 값

- 가장 널리 사용되는 음수 표현 방식이지만, 완벽한 방식은 아님.

- 0이나 2^n 형태의 이진수에 2의 보수를 취하면 원하는 음수값을 얻을 수 없음.

 

1의 보수: 모든 이진수의 0과 1을 뒤집은 수


문자 집합, 인코딩, 디코딩

- 문자 집합(character set): 컴퓨터가 인식하는 문자들의 모음

- 문자 인코딩(character encoding): 문자를 0과 1로 변환하는 과정

- 문자 디코딩(character decoding): 0과 1로 이루어진 문자 코드를 사람이 이해할 수 있는 문자로 변환하는 과정


아스키(ASCII): 초창기 문자 집합 중 하나

아스키 문자: 아스키 문자 집합에 속한 문자

- 하나의 아스키 문자를 나타내기 위해선 8비트를 사용하지만, 1비트는 오류 검출을 위해 사용되는 패리티 비트(parity bit).

- 실질적으로 문자 표현을 위해 사용되는 비트는 7비트.

아스키 코드: 아스키 문자에 대응된 고유한 수

 

아스키 문자 집합 -(인코딩)-> 아스키 코드

 

코드 포인트(code point): 문자 인코딩에서 '글자에 부여된 고유한 값'

 

아스키 코드에 1비트를 추가한 8비트의 확장 아스키(Extended ASCII)도 등장.


완성형 인코딩 방식: 초성, 중성, 종성의 조합으로 이루어진 하나의 글자에 고유한 코드를 부여하는 방식

-  EUC-KR : 한 글자를 2바이크 크기로 인코딩할 수 있는 대표적인 완성형 인코딩 방식. 그러나 모든 한글을 표현할 수 없음.

- CP949 : EUC-KR 확장 버전이지만, 모든 한글을 표현하기엔 부족.

조합형 인코딩 방식: 초성을 위한 비트열, 중성을 위한 비트열, 종성을 위한 비트열을 할당하여, 그걸들의 조합으로 하나의 글자 코드를 완성하는 방식.


유니코드(unicode): 여러 나라의 문자를 광범위하게 표현할 수 있는 통일된 문자 집합

- 십육진수로 유니코드 표현할 때 사용하는 표기 : 유니코드에 부여된 값 앞에 U+ (e.g. U+D55C, U+AE00)

UTF(Unicode Transformation Format): 유니코드에 부여된 값을 다양한 방법으로 인코딩하는 방식

- UTF-8: 가장 대중적, 1바이트 ~ 4바이트까지의 인코딩 결과

저작자표시 비영리 변경금지 (새창열림)

'✍🏻 TIL > 혼자 공부하는 컴퓨터 구조+운영체제' 카테고리의 다른 글

[Chapter 04] CPU의 작동 원리  (6) 2025.07.29
[Chapter 03] 명령어  (1) 2025.07.25
[Chapter 01] 컴퓨터 구조 시작하기  (1) 2025.07.24
'✍🏻 TIL/혼자 공부하는 컴퓨터 구조+운영체제' 카테고리의 다른 글
  • [Chapter 04] CPU의 작동 원리
  • [Chapter 03] 명령어
  • [Chapter 01] 컴퓨터 구조 시작하기
레이제로
레이제로
  • 레이제로
    한 걸음
    레이제로
  • 전체
    오늘
    어제
    • 분류 전체보기 (11)
      • ✍🏻 TIL (4)
        • 혼자 공부하는 컴퓨터 구조+운영체제 (4)
      • ✏ Study (3)
        • Problem Solving (1)
        • Spring (0)
        • Java (2)
        • Data Structure (0)
        • Algorithm (0)
      • 💻 Code Kata (4)
        • Algorithm (4)
        • SQL (0)
      • 📃etc. (0)
        • JS (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 개발 공부 외 이모저모
  • 공지사항

  • 인기 글

  • 태그

    length()
    음수
    Solid 원칙
    size()
    코드카타
    FastIO
    length
    나머지
    나눗셈
    OOP
    java
    프로그래머스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
레이제로
[Chapter 02] 데이터
상단으로

티스토리툴바