8비트를 사용하여 각 방의 점등 상태를 on 또는 off로 저장하였습니다. 왜 이렇게 했을까요?
예를 들어 현재 방들의 점등 상태가 2번 방과 7번 방만 불이 켜진(on) 상태인 경우, 1번 방의 점등 상태를 확인하고자 하는 수식은 그림 4-19처럼 & 비트 연산을 수행하면 됩니다. 즉, 점등 상태를 알고자 하는 비트 위치와 1을 & 연산을 수행하여, 0이면 해당 방은 꺼진 상태이고 1이면 켜진 상태인 것으로 확인하는 것입니다.
참고로 room & i 는 01000010 & 00000000 = 00000000이 되어 모든 비트의 값은 0이 되고, 조건문 if의 수식 결과도 false가 됩니다.
그림 4-19 | 1번 방의 상태를 확인하려면 & 연산을 수행