Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Department of Computer and Information Science, School of Science, IUPUI CSCI N305 Information Representation: Negative Integer Representation Dale Roberts Negative Numbers in Binary Four different representation schemes are used for negative numbers 1. Signed Magnitude Left most bit (LMB) is the sign bit : 0 positive (+) 1 negative (-) Remaining bits hold absolute magnitude Example: 210 0000 0010b Try, 1000 0100b = -410 -210 1000 0010b Q: 0000 0000 = ? 1000 0000 = ? Dale Roberts 1’s Complement 2. One’s Complement – Left most bit is the sign bit : • • 0 positive (+) 1 negative (-) – The magnitude is Complemented Example: 210 0 000 0010b -210 1 111 1101b Exercise: try - 410 using 1’s Complement Q: 0000 0000 = ? 1111 1111 = ? Solution: 410 = 0 000 0100 -410 = 1 111 1011 b b Dale Roberts 2’s Complement 3. 2’s Complement • Sign bit same as above • Magnitude is Complemented first and a “1” is added to the Complemented digits Example: 210 0 000 0010b 1’s Complement 1 111 1101b + 1 -210 1 111 1110b Exercise: try -710 using 2’s Complement 710 0000 0111 b 1’s Complement 1111 1000b + 1 -710 1111 1001b Dale Roberts 2’s Complement Example: 7+(-3) [hint]: A – B = A + (~B) +1 710 = 0000 0111b 310 = 0000 0011b 1’s complement 1111 1100 b 2’s complement 1111 1101 -3 10 b 1 1111 111 carry 7+(-3) 0000 0111 +1111 1101 ignore 1 0000 0100 0000 0100 410 Dale Roberts Three Representation of Signed Integer Representation 0 0000 0 0001 0 0010 0 0011 0 0100 0 0101 0 0110 0 0111 0 1000 0 1001 0 1010 0 1011 0 1100 0 1101 0 1110 0 1111 1 0000 1 0001 1 0010 1 0011 1 0100 1 0101 1 0110 1 0111 1 1000 1 1001 1 1010 1 1011 1 1100 1 1101 1 1110 1 1111 Value Representation Signed Magnitude 1's Complement 2's Complement 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 -0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 Dale Roberts Negative Numbers in Binary (cont.) 4. Excess Representation – For a given fixed number of bits the range is remapped such that roughly half the numbers are negative and half are positive. Example: (as left) Excess – 8 notation for 4 bit numbers Binary value = 8 + excess-8 value MSB can be used as a sign bit, but If MSB =1, positive number If MSB =0, negative number Excess Representation is also called bias Numbers Binary Value 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Notation Excess – 8 Value 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 Dale Roberts Fundamental Data Types • With vs. without using sign bit For a 16 bit binary pattern: 2 byte unsigned (Default type is int) 0000 0000 0000 0000 ( 0D) 0000 0000 0000 0001 ( 1D ) 0000 0000 0000 0010 ( 2D ) …. 0111 1111 1111 1111 ( 32767D 215 -1) 1000 0000 0000 0000 ( 32768D 215) …. 1111 1111 1111 1111 ( 216 –1) 2 byte int 1000 0000 0000 0000 ( -32768D - 215 ) 1000 0000 0000 0001 ( -32767D - 215 +1) …. 1111 1111 1111 1110 ( - 2D ) 1111 1111 1111 1111 ( - 1D ) 0000 0000 0000 0000 ( 0D ) 0000 0000 0000 0001 ( 1D ) 0000 0000 0000 0010 ( 2D ) …. 0111 1111 1111 1111 ( 32767D 215 -1) Dale Roberts Fundamental Data Types Four Data Types in C (assume 2’s complement, byte machine) Data Type char Abbreviation Size (byte) Range char 1 -128 ~ 127 unsigned char 1 0 ~ 255 2 or 4 -215 ~ 215-1 or -231 ~ 231-1 2 or 4 0 ~ 65535 or 0 ~ 232-1 int int unsigned int unsigned short int short 2 -32768 ~ 32767 unsigned short int unsigned short 2 0 ~ 65535 long int long 4 -231 ~ 231-1 unsigned long int unsigned long 4 0 ~ 232-1 float 4 double 8 Note: 27 = 128, 215 =32768, 215 = 2147483648 Complex and double complex are not available Dale Roberts Acknowledgements These slides where originally prepared by Dr. Jeffrey Huang, updated by Dale Roberts. Dale Roberts