2진수로 데이터를 표현하는 법 [Computer Architecture]

SnowCat·2023년 1월 2일
0
post-thumbnail

정보 단위

  • 비트: 0과 1을 표현하는 가장 작은 정보단위
  • 1바이트당 2^n가지의 정보를 표현 가능
  • 프로그램은 수많은 비트로 이루어져 있으며, 정보 단위를 이야기할 때 바이트, 킬로바이트 등의 더 큰 단위를 사용함

워드(Word)

  • 워드는 CPU가 한번에 처리할 수 있는 정보의 단위
    하프 워드(half word): 워드의 절반 크기
    풀 워드(full word): 워드의 크기
    더블 워드(double word): 워드의 2배 크기

2진수(binary)

  • 0과 1로 수를 표현하는 방법
  • 컴퓨터는 2진수밖에 이해할 수 없기 때문에 10진수를 2진수로 변환해 사용
  • 음수를 표현할 때는 2의 보수를 사용함
    어떤 수를 그보다 큰 2^n 에서 뺀 값이며, 이는 모든 자릿수를 뒤집고 1을 더한값과 같음
    CPU 내부의 플래그 레지스터의 값을 통해 양수 음수의 판단이 가능

16진수

  • 2진수로 숫자를 표현하면 길이가 길어지기 때문에 데이터를 표현할때는 16진법을 많이 사용함
  • 직접 코드에 16진수를 넣는 경우도 많음
  • 16진수를 2진수로 변환할떄는 각 자리를 4개의 2진수로 바꾸고, 2진수를 16진수로 바꿀때는 2진수 4개를 대응하는 16진수로 바꾸는 것을 반복하면 됨

아스키 코드

  • 초기에 사용한 문자 집합 중 하나로 알파벳, 숫자, 일부 특수문자, 제어문자를 표기 가능
    문자집합: 컴퓨터가 표현할 수 있는 문자의 모음
  • 7비트로 하나의 문자를 표현하며, 1비트를 오류 검출을 위해 사용함
  • 인코딩이 간단하지만, 한글과 같은 다른 문자나 특수문자의 사용이 불가능함

EUC-KR

  • 글자 하나하나의 형태를 미리 정해둔 완성형 한글 인코딩 방식
  • 글자 하나당 2바이트 크기
  • 2300여개의 한글을 표현가능하지만 모든 한글을 표현하기에는 숫자가 부족함

유니코드

  • 유니코드는 한글, 영어, 특수문자, 이모티콘등을 표현하기 위한 통일된 문자 집합
  • 유니코드는 현대 문자 표현에 있어서 매우 중요한 위치를 가짐
  • 유니코드를 인코딩하는 방식으로 utf-8, utf-16등이 있음
    utf는 유니코드 인코딩 방법을 의미하며, 뒤에 숫자에 따라 인코딩 결과의 크기가 1-4바이트가 됨

출처:
https://www.youtube.com/watch?v=peg8c6Gn-zc&list=PLVsNizTWUw7FCS83JhC1vflK8OcLRG0Hl&index=6&t=238s
혼자 공부하는 컴퓨터 구조+운영체제, 강민철, 한빛미디어

profile
냐아아아아아아아아앙

0개의 댓글