:: The Journal of the Institute of Internet, Broadcasting and Communication ::, Vol.23 No.6 | (2023) pp.55~60

이진수 곱셈 문제의 덧셈 최소화 자리이동-덧셈 알고리즘

Sang-Un Lee

(정회원, 강릉원주대학교 과학기술대학 멀티미디어공학과)

Abstract

컴퓨터로 두 이진수 m과 r의 곱셈 m×r = p을 수행함에 있어 시간이 과다 소요되는 곱셈을 전혀 수행하지 않고 단지 덧셈과 우측 자리이동만을 수행하는 방법으로 자리이동-덧셈법이 있다. SA는 승수 r의 자리 수 ri가 0이면 m×0 = 0으로 결과 값 p를 우측 자리이동만 하면 되며, ri 가 1이면 m×1 = m으로 결과 값 p = p+m을 수행하고, p를 우측자리이동하면 되는 매우 단순한 방법이다. SA에서 SR 횟수는 더 이상 단축시킬 수 없으며, 단지 개선부분은 덧셈 횟수 단축 여부이다. 본 논문에서는 인간이 수행하는 방식인 10진수를 기준으로 보다 작은 수를 r로 설정하는 경우에 비해 컴퓨터가 처리할 이진수로 변환시켰을 때 1의 개수가 보다 작은 수를 r로 설정하는 방법이 덧셈 횟수를 크게 줄일 수 있다는 점에 착안하여 덧셈 최소화 SA 방법을 제안하였다. 제안된 알고리즘을 [-127,128] 범위에서 일부 숫자를 대상으로 부호가 (-,-), (-,+), (+,-), (+,+)인 4가지 경우에 대해 덧셈 횟수를 비교하였다. 실험 결과 얻은 결론은 m과 r을 결정할 때 10진수가 아닌 2진수로 판단해야 함을 보였다.
When performing the multiplication m×r = p of two binary numbers m and r on a computer, there is a shift-and-add(SA) method in which no time-consuming multiplication is performed, but only addition and shift-right(SR). SA is a very simple method in which when the value of the multiplier ri is 0, the result p is only SR with m×0 = 0, and when ri is 1, the result p = p+m is performed with m×1 = m, and p is SR. In SA, the number of SRs can no longer be shortened, and the improvement part is whether the number of additions is shortened. This paper proposes an SA method to minimize addition based on the fact that setting a smaller number to r when converted to a binary number to be processed by a computer can significantly reduce the number of additions compared to the case of setting a smaller number to r based on the decimals that humans perform. The number of additions to the proposed algorithm was compared for four cases with signs (-,-), (-,+), (+,-), and (+,+) for some numbers in the range [-127,128]. The conclusion obtained from the experiment showed that when determining m and r , it should be determined as a binary number rather than a decimal number.
  Multiplication,Multiplicand,Multiplier,Shift-and-add,Number of 1’s

Download PDF List