컴퓨터가 이해하는 정보단위
- 비트(bit) : 0과 1을 표현하는 가장 작은 정보단위
- 바이트(byte) : 비트 8개를 묶은 단위
- 워드 : CPU가 한 번에 처리할 수 있는 정보의 크기 단위
KB, MB, GB, TB
1바이트는 8비트로 이루어져 있다. 때문에 과거에 서술된 책들을 보면 1kB = 1024byte라고 적혀있는 책들이 많다.
하지만 요즘같이 용량 단위가 TB와 같이 거대해지는 경우 1024가 누적되어 다른 숫자가 되어버리기 때문에 잘못
표현하는 관습이라고 할 수 있다.
따라서 1kB = 1000byte라고 해야 하며 과거와 같이 표현하기 위해서 1KiB(= 1024byte)라는 표현법을 사용한다.
이진법
수학에서 0과 1만으로 모든 숫자를 표현하는 방법을 말한다.
우리가 보통 표현하는 숫자는 10진법이다. 하지만 컴퓨터는 전기가 들어오고 나가고밖에 표현할 수 없기 때문에 이진법을
사용한다.
이진법의 표현구분
이진법으로 표현된 10 = 2 과 십진법으로 표현된 10은 그냥 보기에 차이점이 없다.
따라서 이진법으로 표현된 수에는 아래첨자 (2)를 붙이거나 앞에 0b를 붙여서 구분한다.
0b는 주로 코드에서 사용한다.
이진수의 음수표현(2의 보수)
이진수를 음수로 표현하기 위해서 널리 사용되는 방법은 2의 보수를 구해 이 값을 음수로 간주하는 방법이다.
2의 보수는 사전적 의미로는 '어떤 수를 그보다 큰 2의 n승에서 뺀 값'이라고 정의하지만 매우 쉽게 표현할 수 있다.
모든 0과 1을 뒤집고 거기에 1을 더한 값
이떄 구한 2의 보수에 또다시 2의 보수를 구하면 다시 원래의 자기 자신으로 되돌아가는 것을 확인할 수 있다.
이진수를 보고 음수인지 양수인지 구분하는 방법
이진수가 양수인지 음수인지 구분하기 위해 플래그를 사용한다.
자세한 내용은 추후에 추가
16진법
이진법으로 숫자를 표현할 수 있지만 숫자가 커지면서 자릿수가 늘어나게 되어 표기에 불편함이 있다.
따라서 이진법 이외에 16진법도 자주 사용한다.
16진법은 10부터 A~ 15를 F로 바꾸고 16으로 넘어가면서 자리 올림을 하는 숫자 표현 방식이다.
16진법은 이진법과 마찬가지로 아래첨자(16)를 붙이거나 0x를 앞에 붙여 표현한다.
왜 16진법을 사용하는가?
16진법을 사용하는 주된 이유는 이진법으로 변환이 쉽고 마찬가지로 이진법에서 16진법으로의 변환이 쉽기 때문이다.
10진수를 각각 이진수와 16진수로 바꾸는 과정
- 십진수를 이진법으로 바꾼다.
- 이진수를 뒤에서부터 4자리씩 끊어서 각각을 16진수으로 바꿔서 붙인다.(16진수로 변환)
- 16진수의 각 자리를 이진수로 바꾸고 붙인다.(이진수로 변환)
문자 인코딩과 디코딩
문자 인코딩 : 컴퓨터가 이해할 수 있도록 0과 1로 이루어진 문자코드로 변환하는 과정
문자 디코딩 : 컴퓨터가 이해하는 문자코드를 사람이 인식하는 문자로 변환하는 과정
코드포인트
아래는 아스키코드(ASCII)로 각각의 글자에 코드를 부여해서 인코딩한 모습이다.
알파벳A에는 십진수 65를 부여하여 코드에서 A를 숫자형으로 변환하면 65가 나오게 되고 반대로
65를 문자형으로 변환하면 A가 나오게 된다.
'CS' 카테고리의 다른 글
CPU의 작동 원리 (0) | 2024.03.12 |
---|---|
명령어 (0) | 2023.12.18 |
컴퓨터의 기본구조 (1) | 2023.12.04 |