* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download + 1
Mathematics of radio engineering wikipedia , lookup
Law of large numbers wikipedia , lookup
Principia Mathematica wikipedia , lookup
Bra–ket notation wikipedia , lookup
Abuse of notation wikipedia , lookup
Large numbers wikipedia , lookup
Location arithmetic wikipedia , lookup
History of mathematical notation wikipedia , lookup
Musical notation wikipedia , lookup
Big O notation wikipedia , lookup
Data Representation The Binary Number System Binary The binary number system is a means of representing quantities using only 2 digits: 0 and 1. Like other number systems it’s based on Positional Notation. Positional Notation In the Decimal system each column of a number represents a power of 10. 103 102 101 100 1000 100 10 1 Positional Notation In the Binary system each column of a number represents a power of 2. 23 22 21 20 8 4 2 1 Binary Rather than referring to each of the numbers as a binary digit, we shorten the term to bit. To facilitate addressing, binary values are typically stored in units of 8 bits, which is called a byte. Large values occupy multiple bytes. Natural Numbers Consider the pattern: 10010101 To calculate the Decimal equivalent of this number, multiply the each digit by the value of the column and sum the products. Natural Numbers 27 26 25 24 23 22 21 20 Natural Numbers 27 26 128 64 25 32 24 23 16 8 22 4 21 2 20 1 Natural Numbers 27 26 128 64 1 0 25 32 0 24 23 16 8 1 0 22 4 1 21 2 0 20 1 1 Natural Numbers 27 26 25 24 23 22 128 64 32 16 8 4 1 0 0 1 0 1 128 + 0 + 0 +16 +0 +4 + 21 20 2 1 0 1 0 + 1 Natural Numbers 27 26 25 24 23 22 128 64 32 16 8 4 1 0 0 1 0 1 128 + 0 + 0 +16 +0 +4 + =149 21 20 2 1 0 1 0 + 1 Natural Numbers 27 26 25 24 23 22 128 64 32 16 8 4 1 1 1 1 1 1 128 +64 +32 +16 +8 +4 + 21 20 2 1 1 1 2 + 1 =255 This is the largest Unsigned value that can be stored in 8 bits. How many patterns are there? Natural Numbers Conversion from Decimal to Binary uses the same technique, in reverse. Consider the value 73. This is 7 units of 10, plus 3 units of 1. Natural Numbers We need to express the value in terms of powers of 2. 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 Natural Numbers What is the largest power of 2 that is included in 73? 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 Natural Numbers 64 is the largest power of 2 that is included in 73, so a 1 is needed in that position 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 0 1 Natural Numbers Subtracting 64 from 73 leaves 9, which cannot include 32 or 16, but does include 8. 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 0 1 0 0 1 Natural Numbers Subtracting 8 from 9 leaves 1, which cannot include 4 or 2, but does include 1. 27 26 25 24 23 22 21 20 128 64 32 16 8 4 2 1 0 1 0 0 1 0 0 1 Integer Storage • To store integers, half the combinations are used to represent negative values. • The Most Significant Bit is used to represent the sign. • Which value of the sign bit (0 or 1) will represent a negative number? 2’s Complement Notation (examples in 8 bits to save space) • The notation system that uses 1 to represent negative values. • Fixed length notation system. • Zero is the first non-negative value: 00000000 • The pattern immediately before zero is -1 11111111 • The largest value is stored as 01111111 • The smallest value is stored as 10000000 2’s Complement Notation Note that the representations of non-negative integers in 2’s Complement look the same as they do for Natural numbers. However, negative values look VERY different than we might expect. 2’s Complement Notation Complementary numbers sum to 0. Decimal is a Signed Magnitude system so complements have the same magnitude but different signs: 5 and -5, for example. 2’s Complement is a Fixed Length system. There are no signs, so to find the complement of a number another technique is needed. 2’s Complement Notation One such technique is to simply change each bit to its opposite, and then add 1. To find the 2’s complement notation for -5, first find the representation of 5: 00000101 Then “flip the bits” and add 1. 11111010 +1 11111011 Arithmetic in 2’s Complement (remember it’s a fixed length system) 00 00 01 01 + + + + 00 01 00 01 -1 +1 in 2’s complement 0 discard the carry bit in 2’s complement = = = = 00 01 01 10 11111111 + 00000001 1 00000000 Fractions • A radix separates the integer part from the fraction part of a number. 101.101 • Columns to the right of the radix have negative powers of 2. Fractions 22 21 20 . 2-1 2-2 2-3 Fractions 22 21 20 . 2-1 2-2 2-3 4 2 1 . ½ ¼ ⅛ Fractions 22 21 20 . 2-1 2-2 2-3 4 2 1 . ½ ¼ ⅛ 1 0 1 . 1 0 1 Fractions 22 21 20 . 2-1 2-2 2-3 4 2 1 . ½ ¼ ⅛ 1 0 1 . 1 0 1 4 + 1 + ½ + ⅛ Fractions 22 21 20 . 2-1 2-2 2-3 4 2 1 . ½ ¼ ⅛ 1 0 1 . 1 0 1 4 + 1 + ½ + ⅛ 5⅝ Scientific Notation Very large and very small numbers are often represented such that their order of magnitude can be compared. The basic concept is an exponential notation using powers of 10. a × 10b Where b is an integer, and a is a real number such that: 1 ≤ |a| < 10 Scientific Notation An electron's mass is about 0.00000000000000000000000000000091093826 kg. In scientific notation, this is written 9.1093826×10−31 kg. The Earth's mass is about 5,973,600,000,000,000,000,000,000 kg. In scientific notation, this is written 5.9736×1024 kg. E Notation To allow values like this to be expressed on calculators and early terminals × 10b was replaced by Eb So 9.1093826×10−31 becomes 9.1093826E−31 And 5.9736×1024 becomes 5.9736E+24 E Notation The ‘a’ part of the number is called the mantissa or significand. The ‘Eb’ part is called the exponent. Since exponents could also be negative they would typically have a sign as well. Floating Point Storage In floating point notation the bit pattern is divided into 3 components: Sign – 1 bit (0 for +, 1 for -) Exponent – stored in Excess notation Mantissa – must begin with 1 Excess Notation (examples are in 8 bits to save space) • The notation system that uses 0 to represent negative values. • Fixed length notation system. • Zero is the first non-negative value: 10000000 • The pattern immediately before zero is -1 01111111 • The largest value is stored as 11111111 • The smallest value is stored as 00000000 Mantissa • Assumes a radix point immediately left of the first digit. • The exponent will determine how far and in which direction to move the radix. An example in 8 bits If the following pattern stores a floating point value, what is it? 01101001 An example in 8 bits If the following pattern stores a floating point value, what is it? 01101001 Separate it into its components: An example in 8 bits If the following pattern stores a floating point value, what is it? 01101001 Separate it into its components: sign exponent mantissa An example in 8 bits If the following pattern stores a floating point value, what is it? 0 110 1001 Separate it into its components: sign exponent mantissa An example in 8 bits 0 110 1001 A sign bit of 0 means the number is…? An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to …? An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to +2. Place the radix in the mantissa … An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to +2. Place the radix in the mantissa .1001 Put it all together … An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to +2. Place the radix in the mantissa .1001 Put it all together … + .1001 * 22 An example in 8 bits + .1001 * 22 Multiplying a binary number by 2 shifts the bits left (moves the radix to the right) one position. So this exponent tells us to shift the radix 2 positions right. + 10.01 = 2¼ Normal Form • The first bit of the mantissa must be 1 to prevent multiple representations of the same value. 0 100 1000 0 .1000 .1000 0 101 0100 1 .0100 .1000 0 110 0010 2 .0010 .1000 0 111 0001 3 .0001 .1000