Cosc 235: Computer Organization

1 / 33

# Cosc 235: Computer Organization - PowerPoint PPT Presentation

Cosc 235: Computer Organization. Binary Arithmetic. Objectives. Add with binary numbers Represent negative binary numbers in one’s and two’s compliments Perform 3 methods of subtraction with binary numbers Multiply and divide with binary numbers

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Cosc 235: Computer Organization

Binary Arithmetic

Objectives
• Represent negative binary numbers in one’s and two’s compliments
• Perform 3 methods of subtraction with binary numbers
• Multiply and divide with binary numbers
• Subtract decimal numbers by nine’s compliment

Add 2 numbers, A and B, to get the sum, S.

A A3A2A1A0

+ B +B3B2B1B0

S C S3S2S1S0

Any base: add the digits corresponding to the same power

• Carry
• The sum of A0 and B0 produce 2 outputs:
• Sum, S, the portion of A0 + B0 that will fit in the 0th position
• Carry, C, the portion of A0 + B0 that will not fit in the 0th position and must be considered in the 1st position

A0 B0 C1 S0

0 0 0 0

0 1 0 1

1 0 0 1

1 1 1 0

• If we are not at the LSB of the numbers, we have an additional input: the carry from the previous digit
• How many digits do we need to handle a 3-input binary addition?

Ci Ai Bi Ci+1 Si

0 0 0 0 0

0 0 1 0 1

0 1 0 0 1

0 1 1 1 0

1 0 0 0 1

1 0 1 1 0

1 1 0 1 0

1 1 1 1 1

0.01012 = 5/1610

0.01102 = 6/1610

--------- -------

0.10112 = 11/1610

Storing negative numbers
• Sign + magnitude
• For base n, we have (n-1)-complement
• Representation scheme
• Subtract each digit in the negative number from (n-1)
• Example: 9’s compliment for base 10
• Example: 1’s complement for base 2
• Binary case: 2’s complement
Nine’s Compliment
• The Nine’s Compliment is sometimes used in operations with BCD
• 9’s compliment is obtained by subtracting a decimal number from all nines

A = 764 A = 23.675

A = 999 A = 99.999

-764-23.675

235 76.324

One’s compliment

• Compliment each bit
• Complimenting: change 0 to 1, 1 to 0
Binary Subtraction Algorithm
• Obtain the 1’s compliment of the subtrahend
• Take the MSB carry and add back into the results at the LSB
• “End-around carry”
• If EAC==0, B>A and result is negative
• Compliment result to verify value

_

• A - B => A + B + EAC
One’s Compliment Example

A 13 1101

-B-10-1010

A 1101

+B +0101

(1)0010

+ 1 (EAC)

0011

Fractional One’s Compliment

A = 28/32 = .11100

-X = 17/32 = .10001

A .11100

+X+ .01110

(1).01010

+ 1 (EAC)

.01011 = 11/32

Two’s Compliment
• Adding the EAC is cumbersome
• Skip this step: use a different storage structure
• Two’s Compliment is the One’s compliment + 1
Two’s Compliment: methods for obtaining
• A = 2110 = 0101012

A1 = 101010

+ 1..

1010112 = A2

• If X = next power of 2 > A, then

set all bits left of and including X.

right of X, set bits to X – A

• Compliment only bits to the left of the least significant 1
Subtraction using Two’s Compliment
• If the end carry = 1, that indicates a positive result, and the end carry is ignored
• If the end carry = 0, that indicates a negative result, and the end carry is ignored
• Negative result is in Two’s Compliment form
• To verify, take the 2’s compliment of the result
Fractional Two’s Compliment Subtraction

10/1610 = .10102

- 7/1610 = -.01112

.1010

+.1001

(1).0011 = 3/1610

Binary Multiplication
• Simpler than decimal multiplication
• Only need to shift the multiplicand and add
Example Binary multiplication

00101 multiplicand

x 00101 multiplier

-------

00101 multiply by 1

00000 shift and multiply by 0

+00101 shift and multiply by 1 (etc)

--------

0011001 = 24 + 23 + 20 = 25

Another example

011010 multiplicand = 2610

x 001010 multiplier = 1010

--------

000000 multiply by 0

011010 shift & multiply by 1

000000 shift & multiply by 0

011010 shift & multiply by 1

----------

0100000100 28 + 22 = 26010

Binary division
• Like multiplication, binary division is easier than decimal division
• Our quotient bits can either be a 0 or a 1, not a multiple of the divisor
Summary
• How the arithmetic operations are performed in binary
• Subtraction
• Multiplication
• Division
Glossary
• One’s Compliment

The One’s compliment of a binary number is accomplished by converting all 1’s to 0 and all 0’s to 1

• Two’s Compliment

One’s compliment + 1

• Nine’s Compliment

Decimal number resulting from the subtraction of a number from all 9’s.

Glossary
• End Carry

A carry having significance greater than the MSB of either term in an addition

• End Around Carry

End carry generated during one’s compliment subtraction is taken around and added to the LSB of the sum