1 / 73

Data Representation

Data Representation. Dr. Bernard Chen Ph.D. University of Central Arkansas. Outline. Data Representation Compliments Subtraction of Unsigned Numbers using r’s complement How To Represent Signed Numbers Floating-Point Representation. Data Types.

doctor
Télécharger la présentation

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 Dr. Bernard Chen Ph.D. University of Central Arkansas

  2. Outline • Data Representation • Compliments • Subtraction of Unsigned Numbers using r’s complement • How To Represent Signed Numbers • Floating-Point Representation

  3. Data Types • The data types stored in digital computers may be classified as being one of the following categories: • numbers used in arithmetic computations, • letters of the alphabet used in data processing, and • other discrete symbols used for specific purposes. All types of data are represented in computers in binary-coded form.

  4. Radix representation of numbers • Radix or base: is the total number of symbols used to represent a value. A number system of radix r uses a string consisting of r distinct symbols to represent a value.

  5. Radix representation of numbers • Example: convert the following number to the radix 10 format. 97654.35 • The positions indicate the power of the radix. • Start from the decimal point right to left we get 0,1,2,3,4 for the whole numbers. • And from the decimal point left to right • We get -1, -2 for the fractions = 9x104 + 7x103 + 6x102 + 5x101 + 4x100 + 3x10-1 + 5x10-2

  6. Binary Numbers • Binary numbers are made of binary digits (bits): 0 and 1 • Convert the following to decimal (1011)2 = 1x23 + 0x22 + 1x21 +1x20 = (11)10

  7. Example Use radix representation to convert the binary number (101.01) into decimal. The position value is power of 2 1 0 1.0 1  22 21 202-1 2-2 4 + 0 + 1 + 0 + 1/22 = 5.25 (101.01)2  (5.25)10 = 1 x 22 + 0 x 2 + 1 + 0 x 2-1 + 1 x 2-2

  8. Converting an Integer from Decimal to Another Base For each digit position: • Divide the decimal number by the base (e.g. 2) • The remainder is the lowest-order digit • Repeat the first two steps until no divisor remains. • For binary the even number has no remainder ‘0’, while the odd has ‘1’

  9. Converting an Integer from Decimal to Another Base Integer Quotient Remainder Coefficient Example for (13)10: 13/2 = (12+1)½ a0 = 1 6/2 = ( 6+0 )½ a1 = 0 3/2 = (2+1 )½ a2 = 1 1/2 = (0+1) ½ a3 = 1 Answer (13)10 = (a3 a2 a1 a0)2 = (1101)2

  10. Converting a Fraction from Decimal to Another Base For each digit position: • Multiply decimal number by the base (e.g. 2) • The integer is the highest-order digit • Repeat the first two steps until fraction becomes zero.

  11. Converting a Fraction from Decimal to Another Base Example for (0.625)10: Integer Fraction Coefficient 0.625 x 2 = 1 + 0.25 a-1 = 1 0.250 x 2 = 0 + 0.50 a-2 = 0 0.500 x 2 = 1 + 0 a-3 = 1 Answer (0.625)10 = (0.a-1 a-2 a-3 )2 = (0.101)2

  12. DECIMAL TO BINARY CONVERSION(INTEGER+FRACTION) (1) Separate the decimal number into integer and fraction parts. (2) Repeatedly divide the integer part by 2 to give a quotient and a remainder and Remove the remainder. Arrange the sequence of remainders right to left from the period. (Least significant bit first) (3) Repeatedly multiply the fraction part by 2 to give an integer and a fraction part and remove the integer. Arrange the sequence of integers left to right from the period. (Most significant fraction bit first)

  13. (Example) (41.6875)10® (?)2 Integer = 41, Fraction = 0.6875 Closer to the point . The first procedure produces 41= 1 x 25 + 0 x 24 + 1 x 23 + 0 x 22 + 0 x 2 + 1 = (101001) 0.6875=0.1011 41.6875 (10) = 101001.1011 (2)

  14. Octal Numbers Octal numbers (Radix or base=8) are made of octal digits: (0,1,2,3,4,5,6,7) How many items does an octal number represent? Convert the following octal number to decimal (465.27)8 = 4x82 + 6x81 + 5x80 + 2x8-1 + 7x8-2

  15. Counting in Octal

  16. Converting an Integer from Decimal to Octal For each digit position: • Divide decimal number by the base (8) • The remainder is the lowest-order digit • Repeat first two steps until no divisor remains.

  17. Converting an Integer from Decimal to Octal Example for (175)10: Integer Quotient Remainder Coefficient 175/8 = 21 + 7/8 a0 = 7 21/8 = 2 + 5/8 a1 = 5 2/8 = 0 + 2/8 a2 = 2 Answer (175)10 = (a2 a1 a0)2 = (257)8

  18. Converting an Integer from Decimal to Octal For each digit position: • Multiply decimal number by the base (e.g. 8) • The integer is the highest-order digit • Repeat first two steps until fraction becomes zero.

  19. Converting an Integer from Decimal to Octal Example for (0.3125)10: Integer Fraction Coefficient 0.3125 x 8 = 2 + 0.5 a-1 = 2 0.5000 x 8 = 4 + 0 a-2 = 4 Answer (0.3125)10 = (0.24)8 Combine the two (175.3125)10 = (257.24)8 Remainder of division Overflow of multiplication

  20. Hexadecimal Numbers • Hexadecimal numbers are made of 16 symbols: • (0,1,2,3,4,5,6,7,8,9,A, B, C, D, E, F) • Convert a hexadecimal number to decimal • (3A9F)16 = 3x163 + 10x162 + 9x161 + 15x160 = 1499910 • Hexadecimal with fractions: • (2D3.5)16 = 2x162 + 13x161 + 3x160+ 5x16-1 = 723.312510 • Note that each hexadecimal digit can be represented with four bits. • (1110) 2 = (E)16 • Groups of four bits are called a nibble. • (1110) 2

  21. Example • Convert the decimal number (107.00390625)10 into hexadecimal number. • (107.00390625)10 (6B.01)16 Closer to the period .

  22. The Growth of Binary Numbers Mega Giga Tera

  23. Conversion Between Number Bases Octal(base 8) Decimal(base 10) Binary(base 2) Hexadecimal (base16) • We normally convert to base 10 • because we are naturally used to the decimal number system. • We can also convert to other number systems

  24. One to one comparison • Binary, octal, and hexadecimal similar • Easy to build circuits to operate on these representations • Possible to convert between the three formats

  25. Converting between Base 16 and Base 2 3A9F16 = 0011 1010 1001 11112 3 A 9 F • Conversion is easy! • Determine 4-bit value for each hex digit • Note that there are 24 = 16 different values of four bits which means each 16 value is converted to four binary bits. • Easier to read and write in hexadecimal. • Representations are equivalent!

  26. Converting between Base 16 and Base 8 3A9F16 = 0011 1010 1001 11112 3 A 9 F 352378 = 011 101 010 011 1112 3 5 2 3 7 • Convert from Base 16 to Base 2 • Regroup bits into groups of three starting from right • Ignore leading zeros • Each group of three bits forms an octal digit (8 is represented by 3 binary bits).

  27. Example Convert 101011110110011 to a.       octal number b.      hexadecimal number a.       Each 3 bits are converted to octal : (101) (011) (110) (110) (011)   5 3 6 6 3 101011110110011 = (53663)8 b.Each 4 bits are converted to hexadecimal: (0101) (0111) (1011) (0011)    5 7 B 3 101011110110011 = (57B3)16 Conversion from binary to hexadecimal is similar except that the bits divided into groups of four.

  28. ASCII Code American Standard Code for Information Interchange ASCII is a 7-bit code, frequently used with an 8th bit for error detection (more about that in a bit).

  29. Outline • Data Representation • Compliments • Subtraction of Unsigned Numbers using r’s complement • How To Represent Signed Numbers • Floating-Point Representation

  30. Binary Addition Example Add (11110)2 to (10111)2 1 1 1 1 1 1 carries 1 1 1 1 0 1 + 1 0 1 1 1 --------------------- 1 0 1 0 1 0 0 carry (111101)2 + (10111) 2 = (1010100)2

  31. 1 10 0 10 10 0 0 10 1 0 0 1 1 0 1 - 1 0 1 1 1 ------------------------ 0 1 1 0 1 1 0 borrows Binary Subtraction • We can also perform subtraction (with borrows). • Example: subtract (10111) from (1001101) 1+1=2 (1001101)2 - (10111)2 = (0110110)2

  32. Subtraction using addition • Conventional addition (using carry) is easily • implemented in digital computers. • However; subtraction by borrowing is difficult and inefficient for digital computers. • Much more efficient to implement subtraction using ADDITION OF the COMPLEMENTS of numbers.

  33. Complements of numbers • (r-1 )’s Complement • Given a number N in base r having n digits, • the (r- 1)’s complement of N is defined as • (rn - 1) - N • For decimal numbers the base or r = 10 and r- 1= 9, • so the 9’s complement of N is (10n-1)-N • 99999……. - N 9 9 9 9 9 - Digit n Digit n-1 Next digit Next digit First digit

  34. 9’s (10-1) complementExamples 9 9 9 9 9 9 - 5 4 6 7 0 0 2- Find the 9’s complement of 546700 and 12389 The 9’s complement of 546700 is 999999 - 546700= 453299 and the 9’s complement of 12389 is 99999- 12389 = 87610. 4 5 3 2 9 9 9 9 9 9 9 - 1 2 3 8 9 8 7 6 1 0

  35. l’s (2-1) complement • For binary numbers, r = 2 and r — 1 = 1, • r-1’s complement is the l’s complement. • The l’s complement of N is (2^n- 1) - N. Bit n-1 Bit n-2 ……. Bit 1 Bit 0 1 1 1 1 1 - Digit n Digit n-1 Next digit Next digit First digit

  36. l’s complement Find r-1 complement for binary number N with four binary digits. r-1 complement for binary means 2-1 complement or 1’s complement. n =4, we have 24= (10000)2 and 24 - 1 = (1111)2. The l’s complement of N is (24 - 1) - N. = (1111) - N

  37. l’s complement 1 1 1 1 1 1 1 - 1 0 1 1 0 0 1 The complement 1’s of 1011001 is 0100110 0 1 0 0 1 1 0 1 1 1 1 1 1 1 - 0 0 0 1 1 1 1 The 1’s complement of 0001111 is 1110000 1 1 1 0 0 0 0

  38. r’s Complement • Given a number N in base r having n digits, • the r’s complement of N is defined as • rn - N. • For decimal numbers the base or r = 10, • so the 10’s complement of N is 10n-N. • 100000……. - N 1 0 0 0 0 0 - Digit n Digit n-1 Next digit Next digit First digit

  39. 10’s complementExamples Find the 10’s complement of 546700 and 12389 The 10’s complement of 546700 is 1000000 - 546700= 453300 and the 10’s complement of 12389 is 100000 - 12389 = 87611. Notice that it is the same as 9’s complement + 1. 1 0 0 0 0 0 0 - 5 4 6 7 0 0 4 5 3 3 0 0 1 0 0 0 0 0 - 1 2 3 8 9 8 7 6 1 1

  40. 2’s complement For binary numbers, r = 2, r’s complement is the 2’s complement. The 2’s complement of N is 2n - N. 1 0 0 0 0 0 - Digit n Digit n-1 Next digit Next digit First digit

  41. 1 0 0 0 0 0 0 0 2’s complement Example 1 0 0 0 0 0 0 0 - The 2’s complement of 1011001 is 0100111 1 0 1 1 0 0 1 0 1 0 0 1 1 1 - The 2’s complement of 0001111 is 1110001 0 0 0 1 1 1 1 1 1 1 0 0 0 1

  42. Fast Methods for 2’s Complement Method 1: The 2’s complement of binary number is obtained by adding 1 to the l’s complement value. Example: 1’s complement of 101100 is 010011 (invert the 0’s and 1’s) 2’s complement of 101100 is 010011 + 1 = 010100

  43. Fast Methods for 2’s Complement Method 2: The 2’s complement can be formed by leaving all least significant 0’s and the first 1 unchanged, and then replacing l’s by 0’s and 0’s by l’s in all other higher significant bits. Example: The 2’s complement of 1101100 is 0010100 Leave the two low-order 0’s and the first 1 unchanged, and then replacing 1’s by 0’s and 0’s by 1’s in the four most significant bits.

  44. Examples Finding the 2’s complement of (01100101)2 Method 1 – Simply complement each bit and then add 1 to the result. (01100101)2 [N] = 2’s complement = 1’s complement (10011010)2 +1 =(10011011)2 Method 2 – Starting with the least significant bit, copy all the bits up to and including the first 1 bit and then complement the remaining bits. N = 0 1 1 0 0 1 0 1 [N] = 1 0 0 1 1 0 1 1

  45. Outline • Data Representation • Compliments • Subtraction of Unsigned Numbers using r’s complement • How To Represent Signed Numbers • Floating-Point Representation

  46. Subtraction of Unsigned Numbers using r’s complement • (1) if M  N, ignore the carry without taking complement of sum. • (2) if M < N, take the r’s complement of sum and place negative sign in front of sum. The answer is negative.

  47. Example 1 (Decimal unsigned numbers), perform the subtraction 72532 - 13250 = 59282. M > N : “Case 1” “Do not take complement of sum and discard carry” The 10’s complement of 13250 is 86750. Therefore: M = 72532 10’s complement of N =+86750 Sum= 159282 Discard end carry 105= - 100000 Answer = 59282 no complement

  48. Example 2; Now consider an example with M <N. The subtraction 13250 - 72532 produces negative 59282. Using the procedure with complements, we have M = 13250 10’s complement of N = +27468 Sum = 40718 Take 10’s complement of Sum = 100000 -40718 The number is : 59282 Place negative sign in front of the number: -59282

  49. Subtract by Summation Subtraction with complement is done with binary numbers in a similar way. Using two binary numbers X=1010100 and Y=1000011 We perform X-Y and Y-X

  50. X-Y X= 1010100 2’s com. of Y= 0111101 Sum= 10010001 Answer= 0010001

More Related