이진 곱셈 계산기

이진수를 즉시 곱하고 단계별 풀이와 자동 십진수 변환을 확인하세요.

두 이진수를 입력하고 계산을 클릭하면 이진수 곱과 십진수 값을 함께 볼 수 있습니다.

이진 곱셈 계산기
이진수를 즉시 곱하고 단계별 풀이와 자동 십진수 변환을 확인하세요.

이진 곱셈에 대해

이진 곱셈은 십진수 세로셈 곱셈과 같은 자리값 논리를 따르지만, 한 자리 숫자에 대한 규칙은 훨씬 단순합니다. 십진수에서는 각 자리가 0–9가 될 수 있어 10×10 곱셈표를 외워야 합니다. 이진수에서는 각 자리가 0 또는 1뿐이므로 규칙은 0 × 0 = 0, 0 × 1 = 0, 1 × 0 = 0, 1 × 1 = 1뿐입니다. 어려움은 개별 비트를 곱하는 데 있지 않고, 부분곱을 올바르게 시프트하고 더하는 데 있습니다. 이진수의 세로셈 곱셈 절차는 다음과 같습니다. 두 수를 위아래로 쓰고, 하나를 피승수로, 다른 하나를 승수로 지정합니다. 승수의 가장 오른쪽(최하위) 비트부터 시작해 각 비트에 대한 부분곱을 만듭니다. 승수 비트가 1이면 부분곱은 피승수를 해당 비트 위치만큼 왼쪽으로 시프트한 값입니다. 비트가 0이면 부분곱은 모두 0입니다. 모든 부분곱을 이진 덧셈으로 더하고 필요한 경우 자리올림을 전파합니다. 최종 합이 이진수 곱입니다. 예를 들어 1011에 101을 곱해 보겠습니다. 101의 가장 오른쪽 비트는 1이므로 첫 번째 부분곱은 1011(0자리 시프트)입니다. 가운데 비트는 0이므로 1자리 시프트된 0000(문맥상 사실상 00000)이 됩니다. 가장 왼쪽 비트는 1이므로 세 번째 부분곱은 1011을 2자리 시프트한 101100입니다. 1011 + 0000 + 101100 = 110111이고, 이는 십진수로 55이므로 11 × 5 = 55임을 확인할 수 있습니다. 이진 곱셈은 하드웨어에 직접 대응됩니다. 시프트-더하기 알고리즘은 모든 CPU의 정수 곱셈 장치와 FPGA, 맞춤형 ASIC에 구현되어 있습니다. 현대 프로세서는 Booth 알고리즘, Wallace 트리, Dadda 곱셈기 같은 최적화된 변형을 사용해 부분곱 수를 줄이고 최종 덧셈을 빠르게 합니다. 기본적인 시프트-더하기 과정을 이해하면 소프트웨어 엔지니어가 성능, 오버플로, 그리고 컴퓨팅의 모든 정수 산술을 뒷받침하는 이진 표현을 더 잘 추론할 수 있습니다. 오버플로는 중요한 고려 사항입니다. 두 피연산자가 모두 n비트 정수라면 곱은 최대 2n비트가 필요할 수 있습니다. 32비트 × 32비트 곱셈은 64비트 결과를 만들 수 있으며, 하드웨어 곱셈 명령이 곱의 상위 절반과 하위 절반을 따로 제공하는 경우가 많은 것도 바로 이 때문입니다. 이 계산기는 임의 길이의 이진 정수를 처리하며, 잘림 없이 전체 곱을 표시합니다.

이진 곱셈 예제

기본 사례, 2의 거듭제곱, 더 큰 피연산자를 다루는 풀이 예제입니다.

연산이진수 결과십진수 확인
1011 × 10111011111 × 5 = 55 ✓. 부분곱: 1011 + 000000 + 101100 = 110111.
1101 × 1110113 × 1 = 13 ✓. 1을 곱하면 항상 피승수가 그대로 반환됩니다.
1000 × 1001000008 × 4 = 32 ✓. 2의 거듭제곱을 곱하는 것은 왼쪽 시프트와 같습니다.
11011 × 110110101111127 × 13 = 351 ✓. 더 큰 피연산자는 전체 세로셈 곱셈 절차를 보여 줍니다.

이진 곱셈 계산기 사용 방법

  1. '첫 번째 이진수' 필드에 0과 1만 사용해 첫 번째 이진수(피승수)를 입력합니다.
  2. '두 번째 이진수' 필드에 두 번째 이진수(승수)를 입력합니다.
  3. 개별 부분곱과 덧셈 과정을 보고 싶다면 '단계별 풀이 표시'를 켭니다.
  4. '곱셈 계산'을 클릭합니다. 이진수 곱과 십진수 값이 결과 상자에 표시됩니다.
  5. 초기화를 클릭하면 두 필드를 지우고 새 값으로 다시 시작할 수 있습니다.

이진 곱셈 FAQ

이진 곱셈은 십진 곱셈과 어떻게 다른가요?
알고리즘은 부분곱을 시프트하고 더한다는 점에서 동일하지만, 이진수의 자리 곱셈은 매우 단순합니다. 어떤 비트든 0을 곱하면 0이고, 1을 곱하면 자기 자신입니다. 그래서 이진 곱셈은 하드웨어로 구현하기 쉽고, 모든 CPU가 정수 산술을 이진수로 수행합니다. 대신 같은 값을 표현하려면 이진수가 더 많은 자릿수를 필요로 합니다.
왜 2의 거듭제곱을 곱하면 왼쪽 시프트가 되나요?
이진수에서 2를 곱하는 것은 0을 하나 덧붙이는 것, 즉 모든 비트를 한 자리 왼쪽으로 시프트하는 것과 같습니다. 십진수에서 10을 곱하면 0이 붙는 것과 같은 원리입니다. 2ⁿ을 곱하면 n자리 왼쪽으로 시프트됩니다. 예를 들어 101(5)을 2자리 왼쪽 시프트하면 10100(20)이 되고, 5 × 4 = 20입니다. 이 때문에 CPU와 컴파일러는 2의 거듭제곱 곱셈을 빠른 시프트 명령으로 대체합니다.
이 계산기로 소수 부분이 있는 이진수를 곱할 수 있나요?
이 계산기는 정수 이진수만 처리합니다. 이진 소수를 곱하려면 유효 숫자를 정수로 곱한 뒤 이진 소수점 위치를 조정하세요. 곱의 이진 소수점은 두 피연산자의 소수 비트 수 합과 같아지도록 배치합니다. 예를 들어 1.01 × 10.1은 101 × 101의 정수 곱 11001에 2+1=3개의 소수 비트를 적용하므로 11.001이 됩니다.
결과의 최대 크기는 얼마인가요?
피승수가 m비트이고 승수가 n비트라면 곱은 최대 m + n비트입니다. 예를 들어 두 4비트 수는 최대 8비트 결과를 만들 수 있습니다. 이 계산기는 임의 길이 입력을 처리하고 전체 이진수 곱을 잘림 없이 보여 줍니다.
이진 곱셈 결과를 어떻게 검증하나요?
두 피연산자를 십진수로 변환해 십진수에서 곱한 다음, 그 십진수 곱을 다시 이진수로 변환해 비교합니다. 이 계산기가 표시하는 십진수 값이 바로 이 확인을 수행합니다. 또는 각 부분곱을 개별적으로 확인한 뒤 이진 덧셈을 열별로 검증할 수도 있습니다.
피연산자의 순서가 중요한가요?
아니요. 이진 곱셈은 교환법칙을 따릅니다: A × B = B × A. 하지만 생성되는 부분곱의 수는 승수의 비트 수에 따라 달라지므로, 피연산자를 바꾸면 단계별 보기의 중간 과정은 달라질 수 있습니다. 최종 곱은 같습니다.