1 / 17

Data Representation

Data Representation. CS 1428. Binary Representation of Information. Detecting Voltage Levels Why not 10 levels? Would be unreliable Not enough difference between states On/Off Fully Charged - Fully Discharged Magnetized - Demagnetized. Bits, Bytes, and so on. A bit is one 0 or 1

Download Presentation

Data Representation

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. Data Representation CS 1428

  2. Binary Representation of Information • Detecting Voltage Levels • Why not 10 levels? • Would be unreliable • Not enough difference between states • On/Off • Fully Charged - Fully Discharged • Magnetized - Demagnetized

  3. Bits, Bytes, and so on • A bit is one 0 or 1 • Short for “binary digit” • A byte is a collection of 8 bits • They named it “byte” instead of “bite” so you couldn’t easily mess up the spelling and confuse it with “bit”.

  4. The Binary Numbering System • A computer’s internal storage techniques are different from the way people represent information in daily lives • We see and type numbers and letters. • The computer sees ones and zeros for everything • All information inside a digital computer is stored as a collection of binary data

  5. Binary Representation of Numeric and Textual Information • Binary numbering system • Base-2 • Built from ones and zeros • Each position is a power of 2 1101 = 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20 • Decimal numbering system • Base-10 • Each position is a power of 10 3052 = 3 x 103 + 0 x 102 + 5 x 101 + 2 x 100

  6. Binary Numbers • Base 2 - digits 0 and 1 ___ ___ ___ ___ ___ ___ 25 24 23 22 21 20

  7. Calculating in binary • First practice counting to 2010 in binary • Practice adding: 10112 + 1012 • Try subtracting: 10112 - 1012

  8. Representing Signed Numbers • What about negative numbers? • We can divide the bit patterns into two halves but we need to be careful • What to do for zero? • Need to consider binary arithmetic as well • One approach is to use the sign and magnitude method • Reserve 1 bit (usually the high-order bit) that represents the sign • Rest of the bits make up the magnitude

  9. Sign-and-Magnitude • Easy to understand but not efficient • Two representations for zero • Lot of extra overhead to do binary arithmetic • Recall the ALU from Lecture 1 • ALU does binary arithmetic (mainly addition) • We would need to redesign the ALU to do arithmetic with sign-and-magnitude representation • What’s the alternative?

  10. 2’s complement • The high-order bit represents the sign but the magnitude is computed differently • Has a single representation for zero • Has an extra negative number • No extra overhead for binary arithmetic • Almost all modern computers use this representation • Example

  11. Converting Decimal to 2’s Complement • Get the binary representation for the absolute value of the number • Flip all the bits • Add 1 to the complement • Example -3 00011 // 5-bit binary for absolute value of -3 11100 // all bits flipped 11101 // 1 added to the complement

  12. Converting 2’s Complement to Decimal • If the high-order bit is 0 then convert the number in the usual way • Else • Subtract 1 • Flip all bits • Convert to decimal • Affix a minus sign

  13. Converting 2’s Complement to Decimal • Example 11010 // 2’s complement binary 11001 // 1 subtracted 00110 // bits flipped -6 // affixed the negative sign

  14. 2’s Complement Arithmetic • Binary addition, discard the final carry • Example 0011 1110 -------- 0001 • Be careful of overflow • For a 5 bit 2’s complement representation • 16 is too large! • -17 is too small!

  15. More on 2s Complement • http://en.wikipedia.org/wiki/Two's_complement • http://www.hal-pc.org/~clyndes/computer-arithmetic/twoscomplement.html

  16. Summary • Things you should be able to do • Convert binary to decimal • Convert decimal to binary • Convert 2’s complement binary to decimal • Convert decimal to 2’s complement binary • Towards the end of the semester perhaps write a program that does this for you

More Related