컴퓨터 구조 + 운영체제 #02

박영무·2024년 10월 29일
post-thumbnail

참고 서적: 혼자 공부하는 컴퓨터 구조 + 운영체제 (강민철, 한빛미디어)


I. 0과 1로 숫자를 표현하는 방법

1. 정보 단위

1) bit

  • 0과 1을 표현하는 가장 작은 정보 단위
  • n비트로 2n2^n가지의 정보 표현 가능

2) word

  • CPU가 한 번에 처리할 수 있는 정보의 크기 단위 (ex: 32-bit, 64-bit)
  • Half word: word 크기의 절반
  • Full word: word 크기
  • Double word: word 크기의 두 배

2. 숫자 표현 (1)

1) binary

  • 0과 1로 수를 표현하는 방법

2) 음수 표현 - 2의 보수

  • 어떤 수를 그보다 큰 2n2^n에서 뺀 값
	예: 0b101 -> 0b1000 - 0b101 -> 0b11
  • 모든 0과 1을 뒤집고 1을 더한 값
	예: 0b101 -> 0b010 + 0b1 -> 0b11

3) flag

  • 0101만 봤을 때 육안으로는 이 binary가 1011을 음수로 표현한 값인지, 십진수 5를 표현하기 위한 0101인지 알 수 없다.
  • CPU에 있는 Flag Register에 해당 binary가 양수인지 음수인지 표시해 둠으로써 위의 문제를 해결할 수 있다.

3. 숫자 표현 (2)

1) hexadecimal

  • 0부터 15를 한 자리수로 표기하는 방법

II. 컴퓨터가 문자와 숫자를 이해하는 방법

1. 문자 집합 (Character Set)

  • 컴퓨터가 이해할 수 있는 문자의 모음

1) ASCII Code

  • 7-bit로 하나의 문자를 표현, 나머지 1-bit는 오류 검출을 위한 Parity Bit
  • 알파벳, 아라비아 숫자, 일부 특수 문자 및 제어 문자
  • 코드 포인트 (Code Point): 문자에 부여된 값
	A: 65, a: 97

2) EUC-KR

  • 완성형 한글 인코딩 방식
  • 글자 하나의 크기는 2-Byte이다. (즉, 4자리의 16진수로로 표현 가능하다.)
  • 2300여 개의 한글만 제한적으로 인코딩될 수 있다.

3) Unicode

  • 통일된 문자 집합
  • 한글, 영어, 특수 문자, 이모티콘 등까지 포함한다.
  • Unicode를 인코딩할 수 있는 방식의 예로는 utf-8, utf-16, utf-32 등이 있다.

2. 인코딩 (Encoding)

  • 문자 집합에 속한 문자를 0과 1로 이루어진 문자 코드로 변환하여 코드화하는 과정

1) UTF-8

  • UTF (Unicode Transformation Format): 유니코드 인코딩 방법
  • 가변 길이 인코딩: 인코딩 결과가 1-Byte ~ 4-Byte

3. 디코딩 (Decoding)

  • 0과 1로 이루어진 문자 코드를 문자 집합에 속한 문자로 변환하여 해석하는 과정
profile
시행착오는 성장의 밑거름입니다.

0개의 댓글