컴퓨터는 하드웨어적인 이유로 10진법이 아닌 2진법을 사용한다. 메모리 구조에서 2진수가 어떻게 저장되는지 알아보자 어릴적 나눗셈을 기억하여 13을 2진수로 나타내어라
1) 비트: 2진수 한 칸 한 칸을 비트(bit)라고한다 2) 바이트: 비트가 8개가 되면 바이트(byte)다 3) 표현의 범위: 1바이트는 2^8=256개의 숫자를 나타낼 수 있다. 표현범위는 음수를 포함하는 것을 주의한다(-128~127) 4) 정수의 표현: 보통 4바이트를 사용한다(약 42억개, -21억~21억)
2. 2진수의 음수표현법: 비트를 뒤집고 1을 더한다
1) 2진수의 덧셈을 먼저 이해한다 2) 더해서 0이 되면 해당 수의 음수가 된다 3) 표현의 한계성을 이용한다: 더해서 표현할 수 없는 자리수로 올려버리고 값을 삭제시킨다 4) 구하는 법: 비트를 뒤집고 1을 더한다 5) 원리: 뒤집은 비트 + 원래 비트 + 1 = 0이므로 (-)원래비트 = 뒤집은 비트 + 1
숫자 8: 00000000 00000000 00000000 00001000 음의 8: 11111111 11111111 11111111 11111000 둘의 합: 100000000 00000000 00000000 00000000 둘을 더하는 순간 도미노처럼 0이되고 4바이트를 넘어가는 곳에 1이 생긴다
예제 - 음수표현법
1. 각 수의 음수를 구하라 1) 11(10진수) 2) 1(10진수) 3) 0 4) 7+8
1.정답 1) 11111111 11111111 11111111 11110101 2) 11111111 11111111 11111111 11111111 3) 00000000 00000000 00000000 00000000 4) 11111111 11111111 11111111 11110001 추가) 7과 8을 각각 음수로 만들고 둘을 더해보자