binary multiplication

31
Binary Multiplication

Upload: psyche

Post on 11-Jan-2016

80 views

Category:

Documents


10 download

DESCRIPTION

Binary Multiplication. Binary Multiplication. Any multiplication can be re-expressed as a series of additions. For example, 7 * 3 (seven times three) is simply the sum of 3 sevens. 7 * 3 = 7 + 7 + 7 Since we already know how to perform addition, binary multiplication becomes easy. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Binary Multiplication

Binary Multiplication

Page 2: Binary Multiplication

Binary Multiplication

Any multiplication can be re-expressed as a series of additions.

For example, 7 * 3 (seven times three) is simply the sum of 3 sevens.

7 * 3 = 7 + 7 + 7Since we already know how to perform

addition, binary multiplication becomes easy.

Page 3: Binary Multiplication

Binary Multiplication

7

* 3

Page 4: Binary Multiplication

Binary Multiplication

7 0111

* 3

Page 5: Binary Multiplication

Binary Multiplication

7 0111

* 3 + 0111

+ 0111

Page 6: Binary Multiplication

Binary Multiplication

7 0111

* 3 + 0111

1110

+ 0111

Page 7: Binary Multiplication

Binary Multiplication

7 0111

* 3 + 0111

1110

+ 0111

10101

Page 8: Binary Multiplication

Binary Multiplication

The multiplication of large values will take many such additions, but the machine doesn’t mind.

Even so, we look for faster more efficient techniques, and there is one available.

It’s based on the Algebraic property called Distribution.

Page 9: Binary Multiplication

Binary Multiplication

The Distribution Property can be expressed this way:

a * (x + y) = a * x + a * yAny number can be expressed as the sum of

other numbers:106 * 37 = 106 * (30 + 7) = (106 * 30) + (106 * 7)

Page 10: Binary Multiplication

Binary Multiplication

The other insight necessary to optimize multiplication regards multiplying a number by its base.

In Decimal, multiplying anything by 10 is easy - simply shift the digits to the left, and pad with a zero.

975 * 10 = 9750

Page 11: Binary Multiplication

Binary Multiplication

This is true in any number system.

In Binary, for example:

001 represents 1

010 represents 2

100 represents 4

Page 12: Binary Multiplication

Binary Multiplication

This is true in any number system.

In Binary, for example:

001 represents 1

010 represents 2

100 represents 4

Each shift/pad doubles the value.

Page 13: Binary Multiplication

Binary Multiplication

Now reconsider this problem:

106 * 37 = ?

Page 14: Binary Multiplication

Binary Multiplication

Now reconsider this problem:

106 * 37 = ?Expressed as this distribution:

106 * (32 + 4 + 1)

Page 15: Binary Multiplication

Binary Multiplication

Now reconsider this problem:

106 * 37 = ?Expressed as this distribution:

106 * (32 + 4 + 1)

= 106 * 32 + 106 * 4 + 106 * 1

Page 16: Binary Multiplication

Binary Multiplication

? = 106 * 32 + 106 * 4 + 106 * 1

Page 17: Binary Multiplication

Binary Multiplication

? = 106 * 32 + 106 * 4 + 106 * 1

32 = (25)

Page 18: Binary Multiplication

Binary Multiplication

? = 106 * 32 + 106 * 4 + 106 * 1

32 = (25)

4 = (22)

Page 19: Binary Multiplication

Binary Multiplication

? = 106 * 32 + 106 * 4 + 106 * 1

32 = (25)

4 = (22)

1 = (20)

Page 20: Binary Multiplication

Binary Multiplication

? = 106 * 32 + 106 * 4 + 106 * 1

32 = (25)

4 = (22)

1 = (20)by substitution…

? = 106 * 25+ 106 * 22 + 106 * 20

Page 21: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

This term can be

simplified.

Page 22: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

106

Page 23: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

106 converts to 1101010

Page 24: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

1101010

106 * 22

Page 25: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

1101010

106 * 22 shift 2

Page 26: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

1101010

106 * 22 shift 2 110101000

Page 27: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

1101010

110101000

106 * 25

Page 28: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

1101010

110101000

106 * 25 shift 5

Page 29: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

1101010

110101000

106 * 25 shift 5 110101000000

Page 30: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

106 1101010

106 * 22 110101000

106 * 25 110101000000====================================

Page 31: Binary Multiplication

Binary Multiplication

? = 106 * 25+ 106 * 22 + 106 * 20

106 1101010

106 * 22 110101000

106 * 25 110101000000====================================

Sum 111101010010