2 4 0
play

2 4 0 Integer Representation 100 10 1 weight 10 2 10 1 10 0 - PowerPoint PPT Presentation

positional number representation Wellesley CS 240 = 2 x 10 2 + 4 x 10 1 + 0 x 10 0 2 4 0 Integer Representation 100 10 1 weight 10 2 10 1 10 0 position 2 1 0 Base determines: Bits, binary numbers, and bytes Fixed-width


  1. positional number representation Wellesley CS 240 = 2 x 10 2 + 4 x 10 1 + 0 x 10 0 2 4 0 Integer Representation 100 10 1 weight 10 2 10 1 10 0 position 2 1 0 • Base determines: Bits, binary numbers, and bytes Fixed-width representation of integers: unsigned and signed – Modular arithmetic and overflow – • Each position holds a digit. • Represented value = 1 3 ex Powers of 2: binary = base 2 memorize up to ≥ 2 10 (in base ten) 1 0 1 1 = 1 x 2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 8 4 2 1 weight 2 3 2 2 2 1 2 0 position 3 2 1 0 When ambiguous, subscript with base: 101 10 Dalmatians (movie) 101 ten 101 2 -Second Rule (folk wisdom for food safety) 101 two irony 4

  2. Show powers, strategies. What do you call 4 bits? ex conversion and arithmetic byte = 8 bits a.k.a. octet 19 10 = ? 2 1001 2 = ? 10 Smallest unit of data 0 0 0000 used by a typical modern computer 1 1 0001 2 2 0010 Binary 00000000 2 -- 11111111 2 3 3 0011 4 4 0100 Decimal 000 10 -- 255 10 240 10 = ? 2 11010011 2 = ? 10 5 5 0101 Hexadecimal 00 16 -- FF 16 6 6 0110 7 7 0111 8 8 1000 9 9 1001 Programmer’s hex notation (C, etc.): A 10 1010 101 2 + 1011 2 = ? 2 1001011 2 x 2 10 = ? 2 B 11 1011 0xB4 = B4 16 = B4 hex C 12 1100 Octal (base 8) also useful. D 13 1101 Why do 240 students often confuse Halloween and Christmas? E 14 1110 F 15 1111 7 9 word |wərd| , n. fixed-size data representations Natural (fixed size) unit of data used by processor. (size in bytes ) – Word size determines: Java Data Type C Data Type 32-bit word 64-bit word boolean 1 1 byte char 1 1 char 2 2 short short int 2 2 int int 4 4 float float 4 4 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 long int 4 8 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 double double 8 8 long long long 8 8 long double 8 16 MSB: most significant bit LSB: least significant bit Depends on word size 10 11

  3. Fixed-width integer encodings (4-bit) unsigned integer representation Unsigned non-negative integers only 1 0 1 1 � = 1 x 2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 8 4 2 1 weight Signed both negative and non-negative integers � 2 3 2 2 2 1 2 0 position 3 2 1 0 n bits offer only 2 n distinct values. n -bit unsigned integers: Terminology: minimum = “Most-significant” bit(s) “Least-significant” bit(s) or “high-order” bit(s) or “low-order” bit(s) maximum = 0110010110101001 MSB LSB 13 14 !!! sign-magnitude modular arithmetic, overflow 15 0 13 1101 1011 Most-significant bit (MSB) is sign bit 11 14 1 1111 0000 0 means non-negative 1 means negative + 5 + 0101 1110 0001 13 2 + 2 + 0010 Remaining bits are an unsigned magnitude 1101 0010 12 3 4-bit 1100 0011 unsigned 1011 integers 0100 8-bit sign-magnitude: Anything weird here? 11 4 1010 0101 0 0000000 represents _____ 10 5 1001 0110 Arithmetic? 1000 0111 9 6 Example: 0 1111111 represents _____ 8 7 4 - 3 != 4 + (-3) x+y in n -bit unsigned arithmetic is (x + y) mod 2 N in math 1 0000101 represents _____ 00000100 unsigned overflow = "wrong" answer = wrap-around +10000011 1 0000000 represents _____ = carry 1 out of MSB = math answer too big to fit ex Zero? Unsigned addition overflows if and only if a carry bit is dropped. 15 17

  4. (4-bit) two's complement two’s complement vs. unsigned signed integer representation _ _ …_ _ _ unsigned 1 0 1 1 places = 1 x -2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 2 n -1 2 n -2 … 2 2 2 1 2 0 -2 3 2 2 2 1 2 0 - 2 n -1 2 n -2 … 2 2 2 1 2 0 two's complement What's the difference? places 4 -bit two's complement integers: minimum = maximum = n -bit minimum = n -bit maximum = 19 20 ex 8-bit representations 4-bit unsigned vs. 4-bit two’s complement 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 1 1 0 1 1 1 x 2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 1 x -2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 11 -5 difference = ___ = 2 ___ 1 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 – 1 0 15 0 14 1 – 2 + 1 1111 0000 1111 0000 1110 0001 1110 0001 13 2 – 3 + 2 1101 0010 1101 0010 – 4 4-bit + 3 12 3 1100 0011 1100 0011 4-bit two's unsigned complement 1011 0100 1011 0100 – 5 + 4 11 4 n-bit two's complement numbers: 1010 0101 1010 0101 10 5 – 6 + 5 1001 0110 1001 0110 minimum = maximum = 1000 0111 1000 0111 9 6 – 7 + 6 – 8 + 7 8 7 21 22

  5. two’s complement addition two’s complement overflow Addition overflows if and only if the arguments have the same sign but the result does not. -2 2 0010 1110 if and only if the carry in and carry out of the sign bit differ. + -3 + 3 + 0011 + 1101 – 1 0 -1 1111 – 2 + 1 1111 0000 + 2 + 0010 1110 0001 – 3 + 2 – 1 0 1101 0010 – 2 + 1 1111 0000 – 4 + 3 1110 0001 1100 0011 – 3 + 2 1101 0010 1011 0100 – 4 + 3 – 5 + 4 1100 0011 1010 0101 2 0010 -2 1110 1011 0100 – 5 + 4 – 6 + 5 1001 0110 0110 6 1010 0101 1000 0111 + -3 + 1101 + 3 + 0011 – 6 + 5 – 7 + 6 1001 0110 + 0011 + 3 1000 0111 – 8 + 7 – 7 + 6 – 8 + 7 Modular Arithmetic Modular Arithmetic Some CPUs/languages raise exceptions on overflow. C and Java cruise along silently... Feature? Oops? 23 24 ex Another derivation A few reasons two’s complement is awesome Addition, subtraction, hardware How should we represent 8-bit negatives? • For all positive integers x , x and –x should sum to zero. • Use the standard addition algorithm. Sign 00000001 00000010 00000011 Negative one + + + 00000000 00000000 00000000 Complement rules • Find a rule to represent –x where that works… 27

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend