QUIZ: Generations of computer technology
Hardware:
1.
2.
3.
4.
5.
1
QUIZ: Generations of computer technology
Software:
1.
2.
3.
4.
5.
6. 2
Chapter 2
Binary Values and Number Systems
Numbers
4 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
5 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
6 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
This is called the
polynomial expansion of the
number
QUIZ
7 4
Write the polynomial expansion of 6429
(642 in base nine), and convert it to
decimal.
Use the previous expansion as example:
600 + 40 + 2
6 x 100 + 4 x 10 + 2 x 1
6 x 102 + 4 x 101 + 2 x 100
QUIZ
8 4
How many ones (units) are there
in 6429 (642 in base nine)?
6 x 92 + 4 x 91 + 2 x 90 = 52410
6429 = 52410
Positional Notation
9 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
10 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
11 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
12 6 8
What is 642 in base 13?
QUIZ
13 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!
14
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
15 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
16
What is the decimal equivalent of the binary
number 110 1110?
110 11102 = ???10
13
17
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
18
What is the decimal equivalent of the octal
number 642?
6428 = ???10
11
Converting Octal to Decimal
19
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
20 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
21
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
22
Are there any non-positional number systems? Hint: Why did the Roman civilization have no contributions to mathematics?
23
QUIZ: Convert to decimal
0001 00112 =
C716 =
426 =
718 = 24
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
25
QUIZ: Convert to decimal
1101 00112 =
AB716 =
5137 =
6928 = 26
The inverse problem: Converting Base 10 to Other Bases
27
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
28
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
29
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)
30
For next time: Read text example on p.43: Converting Decimal to Hex using repeated division
Addition in Binary
31
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
32
Carry values
go here
1 0 1 0 1 1 0
+1 0 0 0 0 1 1
14
Check in base ten!
Compute in binary
Putting it all together!
33
1
1001
+ 101
1110
Python
(or another
high-level language) Convert decimal
to binary
Convert binary to decimal
Computer hardware
Direct conversions between bases that are powers of 2
34
binary
hexadecimal
octal
Converting Binary to Octal
35
• 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
36
• Mark groups of four (from right)
• Convert each group
10101011 1010 1011
A B
10101011 is AB in base 16
18
Extra-credit QUIZ:
37
Converting Octal to Hexadecimal
38
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
End-of-chapter ex.37
39 14
Perform the following octal additions:
a. 770 + 665
b. 101 + 707
Read and take notes:
Binary SUBTRACTION (with “borrow” bits)
• p.40 of text
40
Today we’ve covered pp.36-43 of text
(stopped before Binary Values and
Computers)
Solve in notebook as individual work for
next class: 6 through 11
41
Addition QUIZ
42
Carry values
go here
1 1 1 0 1 1 0
+1 0 0 0 1 1 1
14
Check in base ten!
End-of-chapter ex.37
43 14
Perform the following octal additions:
c. 202 + 667
Counting
44
Basic skill: counting (in any base!)
• 0, 1, 2, 3, 4, 5, …
• 0, 1, 10, 11, 100, 101, …
45
46
Hex
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
47
Binary and Computers
48
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
49
• Motivated by the 6-bit codes for printable graphic
patterns created by the U.S. Army and Navy
• 6, 18, 24, 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”?
Not in text
50
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”?
Not in text
Grace Murray Hopper
51
• Ph.D. in mathematics
• Wrote “A-0”, the world’s first
compiler, in 1952!
• Co-invented COBOL
• Rear-admiral of the US Navy
• “Nanosecond” wires
Grace also liked telling this story
52 Harvard University Mark II Aiken Relay Calculator
Ethical Issues →Tenth Strand
53
What do the following acronyms stand for:
• ACM ?
• IEEE ? What is the tenth strand? Why the “tenth”?
54
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
55
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 (polynomial in the base)
• 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
56 6 24
Chapter Review questions
• IEEE/ACM CS Curriculum and the “Tenth Strand”
57 6 24
Homework for Ch.2
End-of-ch. 23, 24, 25, 28, 29, 30, 33, 38
Due next Wednesday, Sep.9
The latest homework assigned is always available on the course webpage
58
FYI: Subtraction in Binary
59
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
60
1 0 1 0 0 0 0
- 1 0 0 1 0 1
15
Borrow values
go here
Check in base ten!
Subtraction QUIZ
61
1 1 1 0 1 0 0
- 1 1 0 1 1 1
15
Check in base ten!
Borrow values
go here
Another subtraction QUIZ
62
1 0 1 0 0 0 1
- 1 0 0 1 1 1
15
Borrow values
go here
Check in base ten!