비트(bit): 0과 1을 표현하는 가장 작은 정보 단위
워드(word): CPU가 한 번에 처리할 수 있느 정보의 크기 단위
이진법(binary): 0과 1로 수를 표현하는 방법
2의 보수를 이용하여 음수 만들기: 모든 0과 1을 뒤집고 1을 더한다. 플래그(flag)를 통하여 양수와 음수를 구분한다.
이진수는 수의 길이가 너무 길어지기 때문에, 10부터 15까지 A~F를 할당한 16진법을 사용한다.
문자집합(character set): 컴퓨터가 이해할 수 있는 문자의 모음
인코딩(encoding): 코드화하는 과정, 문자를 0과 1로 이루어진 문자 코드로 변환하는 과정
디코딩(decoding): 코드를 해석하는 과정, 0과 1로 표현된 문자 코드를 문자로 변환하는 과정
아스키 코드(ASCII code): 0과 1로 이루어진 문자 코드를 7비트로 표현한 것, 1비트는 오류 검출을 위해 사용되는 패리티 비트(parity bit)로 사용한다.
한글을 포함한 다른 언어 문자, 다양한 특수 문자를 표현할 수 없다. 따라서 언어별 인코딩 방식이 등장하였다.
유니코드(Unicode): 통일된 문자 집합, 여러 인코딩 방식이 존재한다.
UTF-8인코딩: 유니코드를 8비트로 표현하는 인코딩 방식, 1바이트에서 4바이트까지 사용할 수 있다.
1101
// 1. 모든 비트를 뒤집는다.
0010
// 2. 1을 더한다.
0011