Upload
others
View
16
Download
0
Embed Size (px)
Citation preview
Chapter 2
Binary Values and Number Systems
Numbers
2 2
Natural numbers, a.k.a. positive integers Zero and any number obtained by repeatedly adding
one to it.
Examples: 100, 0, 45645, 32
Negative numbers A value less than 0, with a – sign
Examples: -24, -1, -45645, -32
3 3
Integers A natural number, a negative number, zero
Examples: 249, 0, - 45645, - 32
Rational numbers An integer or the quotient of two integers
Examples: -249, -1, 0, 3/7, -2/5
Real numbers In general cannot be represented as the quotient of any
two integers. They have an infinite # of fractional digits.
Example: Pi = 3.14159265…
2.2 Positional notation
4 4
How many ones (units) are there in 642?
600 + 40 + 2
6 x 100 + 4 x 10 + 2 x 1
6 x 102 + 4 x 101 + 2 x 100
10 is called the base
We also write 64210
QUIZ
5 4
How many ones (units) are there in 6429
(642 in base nine)?
Use the base-10 model:
600 + 40 + 2
6 x 100 + 4 x 10 + 2 x 1
6 x 102 + 4 x 101 + 2 x 100
QUIZ
6 4
How many ones (units) are there in 6429
(642 in base nine)?
6 x 92 + 4 x 91 + 2 x 90 = 12510
Positional Notation
7 5
The base of a number determines how many
digits are used and the value of each digit’s
position.
To be specific:
• In base R, there are R digits, from 0 to R-1
• The positions have for values the powers of
R, from right to left: R0, R1, R2, …
Positional Notation
8 7
dn * Rn-1 + dn-1 * R
n-2 + ... + d2 * R + d1
Formula:
R is the base
of the number
n is the number of
digits in the number
d is the digit in the
ith position
in the number
Positional Notation reloaded
9 7
dn * Rn-1 + dn-1 * R
n-2 + ... + d2 * R + d1
… but, in CS, the digits are numbered from zero, to
match the power of the base:
dn-1 * Rn-1 + dn-2 * R
n-2 + ... + d1 * R1 + d0 * R
0
The text shows the digits numbered like this:
QUIZ
10 6 8
What is 642 in base 13?
QUIZ
11 6 8
What is 642 in base 13?
64213 = 106810
+ 6 x 132 = 6 x 169 = 1014
+ 4 x 131 = 4 x 13 = 52
+ 2 x 13º = 2 x 1 = 2
= 1068 in base 10
Nota bene!
12
In a given base R, the digits range
from 0 up to R – 1
R itself cannot be a digit in base R
Trick problem:
Convert the number 473 from base 6 to base 10
Binary
13 9
Decimal is base 10 and
has 10 digits:
0,1,2,3,4,5,6,7,8,9
Binary is base 2 and has 2
digits:
0,1
QUIZ: Converting Binary to Decimal
14
What is the decimal equivalent of the binary
number 110 1110?
110 11102 = ???10
13
15
What is the decimal equivalent of the binary
number 1101110?
1 x 26 = 1 x 64 = 64
+ 1 x 25 = 1 x 32 = 32
+ 0 x 24 = 0 x 16 = 0
+ 1 x 23 = 1 x 8 = 8
+ 1 x 22 = 1 x 4 = 4
+ 1 x 21 = 1 x 2 = 2
+ 0 x 2º = 0 x 1 = 0
= 110 in base 10
= 11010
13
Base 8 = octal system
16
What is the decimal equivalent of the octal
number 642?
6428 = ???10
11
Converting Octal to Decimal
17
What is the decimal equivalent of the octal
number 642?
6 x 82 = 6 x 64 = 384
+ 4 x 81 = 4 x 8 = 32
+ 2 x 8º = 2 x 1 = 2
Add the above = 418 in base 10
= 41810
11
Bases Higher than 10
18 10
How are digits in bases higher than 10
represented?
Base 16 (hexadecimal, a.k.a. hex) has 16
digits:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E, F
Converting Hexadecimal to Decimal
19
What is the decimal equivalent of the
hexadecimal number DEF?
D x 162 = 13 x 256 = 3328
+ E x 161 = 14 x 16 = 224
+ F x 16º = 15 x 1 = 15
= 3567 in base 10
QUIZ: 2AF16 = ???10
20
Are there any non-positional number systems? Hint: Why did the Roman civilization have no contributions to mathematics?
21
Today we’ve covered pp.33-39 of text
(stopped before Arithmetic in Other Bases)
Solve in notebook as individual work for
next class:
1, 2, 3, 4, 5, 20, 21
22
QUIZ: Convert to decimal
1101 00112 =
AB716 =
5138 =
6928 = 23
Addition in Binary
24
Remember that there are only 2 digits in binary,
0 and 1
1 + 1 is 0 with a carry
Carry Values 0 1 1 1 1 1
1 0 1 0 1 1 1
+1 0 0 1 0 1 1
1 0 1 0 0 0 1 0
14
Addition QUIZ
25
Carry values
go here
1 0 1 0 1 1 0
+1 0 0 0 0 1 1
14
Check in base ten!
Subtraction in Binary
26
Remember borrowing?
1 2
0 2 0 2
1 0 1 0 1 1 1
- 1 1 1 0 1 1
0 0 1 1 1 0 0
15
Borrow values
Check in base ten!
Subtraction QUIZ
27
1 0 1 1 0 0 0
- 1 1 0 1 1 1
15
Check in base ten!
Borrow values
go here
Direct conversions between bases that are powers of 2
28
binary
hexadecimal
octal
Counting
29
QUIZ: Add the hex column!
30
Conclusion:
• In order to represent any octal digit, we need at most ______ bits
• In order to represent any hex digit, we need at most ______ bits
31
Converting Binary to Octal
32
• Mark groups of three (from right)
• Convert each group
10101011 10 101 011
2 5 3
10101011 is 253 in base 8
17
Converting Binary to Hexadecimal
33
• Mark groups of four (from right)
• Convert each group
10101011 1010 1011
A B
10101011 is AB in base 16
18
Converting Octal to Hexadecimal
34
End-of-chapter ex. 25:
Explain how base 8 and base 16 are related
10 101 011 1010 1011
2 5 3 A B
253 in base 8 = AB in base 16
18
Extra-credit QUIZ: Convert from hex to octal 2AF16 = 8
Show all your work for credit!
35
?
Today we’ve covered pp.39-42 of text
(stopped before Converting from Base 10 to
Other Bases)
Solve in notebook as individual work for
next class: 6 through 11
36
Homework for ch.1 is due at the beginning of next class (this Friday)
37
Subtraction QUIZ
38
1 0 1 0 0 0 0
- 1 0 0 1 0 1
15
Borrow values
go here
Check in base ten!
Periodic patterns
39
The inverse problem: Converting Decimal to Other Bases
40
While (the quotient is not zero) Divide the decimal number by R Make the remainder the next digit to the left in the
answer Replace the original decimal number with the quotient
Algorithm for converting a number in base
10 to any other base R:
19
Known as repeated division (by the base)
Converting Decimal to Binary
41
Example: Convert 17910 to binary
179 2 = 89 rem. 1
2 = 44 rem. 1
2 = 22 rem. 0
2 = 11 rem. 0
2 = 5 rem. 1
2 = 2 rem. 1
2 = 1 rem. 0
17910 = 101100112 2 = 0 rem. 1
Notes: The first bit obtained is the rightmost (a.k.a. LSB)
The algorithm stops when the quotient (not the remainder!)
becomes zero
19
LSB MSB
Repeated division QUIZ
42
Convert 4210 to binary
42 2 = rem.
4210 = 2
19
The repeated division algorithm can be used to convert from any
base into any other base (but normally we use it only for 10 → 2)
43
Read text example on p.43: Converting Decimal to Hex using repeated division
Binary Numbers and Computers
44
Computers have storage units called binary digits or
bits
Low Voltage = 0
High Voltage = 1
All bits are either 0 or 1
22
Binary and Computers
45
Word= group of bits that the computer processes
at a time
The number of bits in a word determines the
word length of the computer. It is usually a
multiple of 8.
1 Byte = 8 bits
• 8, 16, 32, 64-bit computers
• 128? 256?
23
46
• Motivated by the 6-bit codes for printable graphic
patterns created by the U.S. Army and Navy
• 6, 18, 26, 36, 48-bit words
• Some history: – 18-Bit Computers from DEC
– 36-bit Wikipedia
• Edged out of the market by the need for floating-point numbers – IBM System/360 (1965)
– 8-bit microprocessors (1970s)
6-bit computers: an “Evolutionary dead-end”?
47
Unisys is still successful with their 36- and 48-bit machines :
• Clearpath Dorado line of 36-bit CISC high-end servers
• Clearpath Libra line of 48-bit mainframes
… although they are being transitioned to Intel Xeon chips (64-bit): see article
6-bit computers: an “Evolutionary dead-end”?
Grace Murray Hopper
48
• Ph.D. in mathematics
• Wrote “A-0”, the world’s first
compiler, in 1952!
• Co-invented COBOL
• Found the first “bug” in Mark II
• Rear-admiral of the US Navy
• “Nanosecond” wires
From the history of computing: bi-quinary
49 The front panel of the legendary
IBM 650 (source: Wikipedia)
Roman abacus (source: MathDaily.com)
Ethical Issues →Tenth Strand
50
What do the following acronyms stand for:
• ACM ?
• IEEE ? What is the tenth strand? Why the “tenth”?
51
Why the “tenth”? A: In the 1989 ACM report (“Computing as a Discipline” p.12), the following 9 areas (strands) of CS were defined:
• Algorithms and data structures • Programming languages • Computer Architecture • Numerical and symbolic computations • Operating systems (OS) • Software engineering • Databases • Artificial intelligence (AI) • Human-computer interaction
Ethical Issues →Tenth Strand
52
The latest official release of the IEEE/ACM CS Curriculum was in 2001:
• 3 levels of organization: areas → knowledge units → topics
• There are now 14 areas, and the “tenth strand” is listed in position 12
• What does “SP” stand for?
• How many knowledge units does the “SP” area have?
• Name two of these units!
Chapter Review questions
• Describe positional notation
• Convert numbers in other bases to base 10
• Convert base-10 numbers to numbers in other bases
• Add and subtract in binary
• Convert between bases 2, 8, and 16 using groups of digits
• Count in binary
• Explain the importance to computing of bases that are powers of 2
53 6 24
Individual work for next class:
solve in notebook end-of-chapter exercises
22, 26
54
Homework Due next Friday, Sept. 14:
End-of-chapter ex. 23, 24, 25, 28, 29, 30, 33, 38
The latest homework assigned is always available on the course webpage
55