이 실험 소개
컴퓨터 안에서는 숫자, 글자, 그림, 소리가 모두 꺼짐 또는 켜짐 상태의 스위치 패턴, 즉 0 또는 1로 저장됩니다. 스위치 하나가 비트입니다. 십진수에서 각 자릿값이 오른쪽 자릿값의 10배인 것처럼, 각 비트의 값은 오른쪽 비트의 2배입니다. 즉 1, 2, 4, 8, 16과 같이 커집니다. 비트를 켜고 끄며 수를 세고, 올림이 차례로 전달되는 모습을 살펴보세요. 이진수를 십진수와 16진수로 변환하고, 컴퓨터가 음수를 어떻게 저장하는지도 알아보세요.
학습 목표
- 이진수는 0과 1 두 숫자만 사용하는 밑이 2인 수 체계라고 설명하기
- 최대 8비트까지 이진수와 십진수 사이를 변환하기
- 이진수로 세고 올림이 어떻게 작동하는지 설명하기
- 주어진 비트 수로 저장할 수 있는 가장 큰 수 구하기
- 이진수를 16진수로 변환하고 오버플로와 2의 보수를 설명하세요
사용 방법
- 14비트에서 한 번에 비트 하나씩 켜 보세요. 각 비트의 값을 적으세요. 어떤 패턴이 보이나요?
- 24비트로 5, 9, 15를 만들어 보세요. 어떤 비트를 사용했나요?
- 30에서 시작해 +1을 계속 누르세요. 매번 바뀌는 비트는 무엇인가요? 가장 드물게 바뀌는 비트는 무엇인가요?
- 44비트로 15까지 센 다음 +1을 한 번 더 누르세요. 어떤 일이 일어나며, 그 이유는 무엇인가요?
- 58비트로 전환하세요. 만들 수 있는 가장 큰 수는 무엇인가요? 2⁸ - 1과 비교해 보세요.
- 6음수를 켜세요. 이제 왼쪽 비트의 값은 무엇인가요? -1과 -128을 만들어 보세요.
- 7‘숫자 만들기’를 선택하고 목표 다섯 개를 풀어 보세요. 가장 큰 비트부터 시작해 보세요.
모델
가정
- 일반적인 수와 마찬가지로, 비트는 최상위 비트를 왼쪽에 두고 씁니다.
- 부호 없는 수의 범위는 0부터 2ⁿ - 1까지입니다. 음수를 켜면 2의 보수가 사용되며, 가장 왼쪽 비트의 값은 -2ⁿ⁻¹입니다.
- 최댓값에 1을 더하면 최솟값으로 돌아갑니다. 이는 실제 고정 폭 컴퓨터 연산에서 일어나는 것과 같으며, 이를 오버플로라고 합니다.
- 도전 과제의 숫자는 고정된 순서로 정해져 있으므로 모든 수업에서 같은 목표를 같은 순서로 보게 됩니다.
수업에서 해 보기
- Q12진수 10110을 10진수로 변환하세요.
- Q28비트를 사용하여 10진수 45를 2진수로 변환하세요.
- Q31000까지의 수를 저장하려면 비트가 몇 개 필요한가요?
- Q4끝자리가 1인 이진수는 왜 항상 홀수를 나타내나요?
- Q58비트 2의 보수에서 1111 1110은 얼마인가요? 어떻게 알 수 있는지 설명하세요.
자주 묻는 질문
컴퓨터는 왜 십진수 대신 이진수를 사용하나요?
전자 스위치는 꺼짐과 켜짐, 두 가지 상태만 필요할 때 신뢰성 있게 만들기 쉽습니다. 십진수의 각 숫자를 나타내기 위해 서로 다른 전압 수준 10가지를 구분하는 일은 훨씬 더 어렵고 오류가 발생하기 쉽습니다.
바이트란 무엇인가요?
1바이트는 8비트입니다. 0부터 255까지 256가지 값을 저장하거나 일반 영어 텍스트의 문자 하나를 저장할 수 있습니다.
16진수는 왜 유용한가요?
긴 이진수는 읽기 어렵습니다. 16 = 2⁴이므로 비트 4개씩 묶으면 정확히 16진수 한 자리가 됩니다. 그래서 프로그래머는 이진수를 짧게 쓰는 방법으로 16진수를 사용합니다. 예를 들어 #FF8800과 같은 색상 코드에 쓰입니다.