1 / 13

Topic 3 Number Representations and Computer Arithmetics

Topic 3 Number Representations and Computer Arithmetics. Introduction to Computer Systems Engineering (CPEG 323). Outline. Introduction Number representation and 2’s complement ALU design Integer multiplication/division Real Numbers. Decoded opcode. a. ALU. ALU. 32. result. b.

chagnon
Download Presentation

Topic 3 Number Representations and Computer Arithmetics

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Topic 3Number Representations and Computer Arithmetics Introduction to Computer Systems Engineering (CPEG 323) cpeg323-04F\Topic3-05F

  2. Outline • Introduction • Number representation and 2’s complement • ALU design • Integer multiplication/division • Real Numbers cpeg323-04F\Topic3-05F

  3. Decoded opcode a ALU ALU 32 result b 32 32 Recap • Review • Steps in executing an instruction? • Fields of an instruction? • Performance? • Base of the operands? • What's up ahead: • Number representation • Arithmetic algorithms • Logic implementation • Instructions cpeg323-04F\Topic3-05F

  4. Reading Up to now, you should have read (or are reading) • Patterson and Hennessy, chapters 1-2 and appendix A New material • Patterson and Hennessy, chapter 3 cpeg323-04F\Topic3-05F

  5. It gets complicated: Numbers Representation • How to represent negative numbers? • What is the range of numbers? • What if a number is out of the range? • How about rational and irrational numbers? • How does hardware add/sub/div/mul these numbers? cpeg323-04F\Topic3-05F

  6. Bits and Numbers • Bits are just bits: NO inherent meaning • conventions define relationship between bits and numbers • How does the hardware know which convention is to use? Add $s1, $s2, $s3 Addu $s1, $s2, $s3 What is the sign of $s1, $s2, and $s3? cpeg323-04F\Topic3-05F

  7. Number Representations • Unsigned integers • Signed integers • BCD (Binary Coded Decimal) • Fixed point • Floating point • Other types of data: • Characters (ASCII, Unicode) • Pixels (graphics) • Groups of bits cpeg323-04F\Topic3-05F

  8. Unsigned Integers • Why unsigned integers? • Memory access, PC, SP, RA • In C, unsigned int • How to represent? • Number your fingers! • Radix number system • Decimal: 10 different symbols: 0 1 2 3 4 5 6 7 8 9 number= cpeg323-04F\Topic3-05F

  9. Unsigned Integers(Radix number system) • In general, k-radix number system number= • How many different di? • What is the biggest number? • What is the smallest one? • Special cases: • 2-radix (binary) • 8 (octal) • 16 (hexademical) • How many different symbols do thy have? cpeg323-04F\Topic3-05F

  10. Unsigned Integers(Radix number system, Cont.) • How to convert binary to octal and hexadecimal? • Example: 010100=(0*22+1*21+0*20)*23+(1*22+0*21+0*20) =2*81+ 4*80= 248 Binary: 000110010100100010110110 1 9 4 8 B 6 Hexadecimal: Octal: 0 6 2 4 4 2 6 6 cpeg323-04F\Topic3-05F

  11. Unsigned Integers(BCD: binary coded decimal) • Representation: 12710 • How many bits necessary for BCD? For binary? • Storage space used ? • Addition • How to determine a carry: “If ai+ bi >10” vs. “If ai+ bi >2” • Which one is more efficient for computer, decimal or binary? cpeg323-04F\Topic3-05F

  12. Signed Integers • How to distinguish a negative number from a positive number ? • How to do so efficiently ? cpeg323-04F\Topic3-05F

  13. Signed Integers (Sign and magnitude) • -12: -(sign) 12(absolute value) • A separate sign bit • A magnitude • For hardware: • Where to put the sign bit? Right or Left? • How to know the sign of addition? (e.g. one extra step ?) • What is the sign of 0? (positive and negative 0 ?) cpeg323-04F\Topic3-05F

More Related