UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images,...
-
Upload
piers-ford -
Category
Documents
-
view
220 -
download
3
Transcript of UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images,...
![Page 1: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/1.jpg)
UNIT: Data and UNIT: Data and RepresentationRepresentation
Goal: Learn how 0,1 can be used to Goal: Learn how 0,1 can be used to represent numbers, text, images, represent numbers, text, images, sound.sound.– Facility with binary numbersFacility with binary numbers– Understand methods of text compressionUnderstand methods of text compression– Understand concepts such as Understand concepts such as
discretization/digitization, bit depth, discretization/digitization, bit depth, resolution, sampling, in the context of resolution, sampling, in the context of images and sound.images and sound.
![Page 2: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/2.jpg)
Representations are Representations are Arbitrary!Arbitrary!
'When 'When II use a word,' Humpty use a word,' Humpty Dumpty said, in a rather Dumpty said, in a rather scornful tone,' it means just scornful tone,' it means just what I choose it to mean, what I choose it to mean, neither more nor less.‘neither more nor less.‘
'The question is,' said Alice, 'The question is,' said Alice, 'whether you 'whether you cancan make make words mean so many words mean so many different things.different things.
''The question is,' said Humpty ''The question is,' said Humpty Dumpty, 'which is to be Dumpty, 'which is to be master - that's all.'master - that's all.'
![Page 3: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/3.jpg)
Symbols & RepresentationSymbols & Representation
““analogous”analogous”
![Page 4: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/4.jpg)
Symbols & RepresentationSymbols & Representation
““abstract”abstract”
aattggaagcaaatgacatcacagcaggtcagag…
![Page 5: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/5.jpg)
DigitalDigital
““Relating to, or resembling a digit”Relating to, or resembling a digit” ““Expressed in discrete numerical Expressed in discrete numerical
form, especially for use by a form, especially for use by a computer or other electronic device”computer or other electronic device”
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23...
![Page 6: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/6.jpg)
Analog or Digital?Analog or Digital?
![Page 7: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/7.jpg)
Number RepresentationsNumber Representations
1/2 + 1/6 + 1/9
5137
011000101000
![Page 8: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/8.jpg)
Analog Digital
are analogous not necessarily analogous
can be continuous discrete symbols
precision a problem add extra digits
errors hard to detect errors easier to detect
requires little decoding requires some decoding
![Page 9: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/9.jpg)
![Page 10: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/10.jpg)
Why Binary?Why Binary?
Because 2 is special! It’s the smallest Because 2 is special! It’s the smallest number that’s not 1.number that’s not 1.
So simple a computer could do it!So simple a computer could do it!
![Page 11: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/11.jpg)
Why Binary?Why Binary?
So simple a computer could do it!So simple a computer could do it!
![Page 12: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/12.jpg)
Bits, Bytes, WordsBits, Bytes, Words
Bit = 0 or 1. One character of informationBit = 0 or 1. One character of information Byte = 8 bits. Example: 01101101Byte = 8 bits. Example: 01101101 Word = some number of bytes, depending Word = some number of bytes, depending
on computer. on computer. Typical = 4 bytes = 32 bitsTypical = 4 bytes = 32 bits
““A 32-bit machine”A 32-bit machine”
Word size limits what can be represented Word size limits what can be represented easilyeasily
(more on this later)(more on this later)
![Page 13: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/13.jpg)
51371
00
0
10
01
0 1
Decimal Numbers….
![Page 14: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/14.jpg)
67895
0234
1 01
decimal digits binary digits
Binary Numbers….
b its
bits
![Page 15: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/15.jpg)
16
8 4 2 1
0 1 1 1116 + 4 + 2 + 1 =
23
![Page 16: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/16.jpg)
16
8 4 2 1
1 1 1 008 + 4 + 2 = 14
![Page 17: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/17.jpg)
16
8 4 2 1
1 1 0 1116 + 8 + 4 + 1 =
29
![Page 18: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/18.jpg)
1 1 0 1 8 + 4 + 1 = 13
16
8 4 2 1
![Page 19: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/19.jpg)
16
8 2 1
![Page 20: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/20.jpg)
![Page 21: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/21.jpg)
There are 10 kinds of people in the world:
-Those who know binary-Those who do not
![Page 22: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/22.jpg)
Other Bases
Base 3: 2012 = 2 x 33 + 0 x 32 + 1 x 31 + 2 x 30
= 2 x 27 + 0 x 9 + 1 x 3 + 2 x 1
= 54 + 0 + 3 + 2
= 59
![Page 23: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/23.jpg)
Other BasesBase 16…. what are the numerals ?
Base 2: {0,1}Base 3: {0,1,2}Base 10: {0,1,2,3,4,5,6,7,8,9}
Base 16: {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
1CF == 1 x 162 + 12 x 161 + 15 x 160
= 256 + 192 + 15 = 463
![Page 24: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/24.jpg)
Word sizeWord size
8 bits:8 bits:
can only represent 11111111 = 255can only represent 11111111 = 255
16 bits: 16 bits:
can represent 1111111111111111 = 65535can represent 1111111111111111 = 65535
32 bits:32 bits:
can represent 4292967295can represent 4292967295
![Page 25: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/25.jpg)
Binary and HexadecimalBinary and Hexadecimal
How do we write 463 How do we write 463 in Binary?in Binary?
463=256 + 128 + 64463=256 + 128 + 64 + 8 + 4 + 2 + 1 + 8 + 4 + 2 + 1
463 = 111001111463 = 111001111 463 = 1 1100 1111463 = 1 1100 1111 463 = 1 C F in Hex463 = 1 C F in Hex
and vice-versa:and vice-versa: 2EA = 0010 1110 2EA = 0010 1110
10101010
00 00000000
11 00000011
22 00100100
33 00100111
44 01001000
55 01001011
66 01101100
77 01101111
88 10001000
99 10011001
A A (10)(10)
10101010
B B (11)(11)
10111011
C C (12)(12)
11001100
D D (13)(13)
11011101
E (14)E (14) 11101110
F (15)F (15) 11111111
![Page 26: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/26.jpg)
Binary Addition
Decimal Addition
8423 6915----------
Binary Addition
1101011 1001101 ------------
see http://www.youtube.com/watch?v=GcDshWmhF4A
![Page 27: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/27.jpg)
Binary Subtraction
What about 1001101 – 1101011?How do we represent negative numbers?
Decimal Subtraction
8423 6915----------
Binary Subtraction
1101011 1001101 ------------ WAIT!
![Page 28: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/28.jpg)
Properties of a Properties of a Good RepresentationGood Representation
Should be simpleShould be simple
Allows us to do useful thingsAllows us to do useful things
Should be efficientShould be efficient
Recovering from errors should be Recovering from errors should be possiblepossible
![Page 29: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/29.jpg)
Negative NumbersNegative Numbers
How would we represent -5 in binary?How would we represent -5 in binary?
Sign-magnitude: use an extra bit for +/-Sign-magnitude: use an extra bit for +/-+ 5 = (+) 101 = 00000101+ 5 = (+) 101 = 00000101- 5 = (-) 101 = 100001015 = (-) 101 = 10000101
(Assumes we have a fixed (known) word size (example above: 8) (Assumes we have a fixed (known) word size (example above: 8) so that we know the first bit represents +/-, not the next power of so that we know the first bit represents +/-, not the next power of 2)2)
What about 0?What about 0?– different 0’s can cause problemsdifferent 0’s can cause problems
![Page 30: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/30.jpg)
Negative NumbersNegative Numbers
Sign-magnitude (use one bit for sign) is Sign-magnitude (use one bit for sign) is perfectly acceptable, with minor perfectly acceptable, with minor inconvenience, but is not as good as a inconvenience, but is not as good as a clever alternative.clever alternative.
““Two’s complement notation” is used. Two’s complement notation” is used. – only one representation of 0only one representation of 0– allows computation of subtraction via additionallows computation of subtraction via addition– a bit confusing on first sight.a bit confusing on first sight.
![Page 31: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/31.jpg)
Towards understanding two’s Towards understanding two’s
complement:complement: Using 1 digit Using 1 digit
Suppose we had the symbols 0 Suppose we had the symbols 0 through 9. How many (positive and through 9. How many (positive and negative) numbers can we negative) numbers can we represent?represent?
Which symbol gets which number?Which symbol gets which number?
![Page 32: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/32.jpg)
10’s complement10’s complement
representation
01
2
3
45
9
8
7
6
01
2
3
4-5
-1
-2
-3
-4
addition of positive numbers works fine?
OVERFLOW: if sum is more than max positive, it becomes negative: 2+4 = - 4(unavoidable since we have a fixed word size)
value represented
![Page 33: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/33.jpg)
10’s complement10’s complement
representation
01
2
3
45
9
8
7
6
01
2
3
4-5
-1
-2
-3
-4
addition of positive and negative numbers…
ex: 4-2 = 4 + (-2) represented by 4+8 = 12and 122 on this clock.…works because going clockwise 8 is like going counterclockwise 2
value represented
![Page 34: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/34.jpg)
10’s complement10’s complement
Addition is moving forward along the Addition is moving forward along the number line, subtraction is moving number line, subtraction is moving backback
A – B = A + (– B)A – B = A + (– B)
Clock DiagramClock Diagram
![Page 35: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/35.jpg)
Using 3 digitsUsing 3 digits
If we had 3 digits, which positive and If we had 3 digits, which positive and negative numbers could we negative numbers could we represent?represent?
What would the representation of -7 What would the representation of -7 be?be?
1000’s clock1000’s clock
![Page 36: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/36.jpg)
10’s complement10’s complement
0100
200
300
400500
900
800
700
600
000100
200
300
400-500
-100
-200
-300
-400
addition of positive and negative numbers…
…works because going clockwise n is like going counterclockwise 1000-n
representation
value represented
![Page 37: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/37.jpg)
Moving to BinaryMoving to Binary
Using 4 bits, which positive and negative Using 4 bits, which positive and negative numbers can we represent?numbers can we represent?
What is the representation of -5?What is the representation of -5?
Given a binary number, how can we quickly Given a binary number, how can we quickly find out what number it represents?find out what number it represents?
2’s Complement2’s Complement
![Page 38: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/38.jpg)
2’s complement2’s complement
0000
01
2
3
4-5
-1
-2
-3-4
1000
01001100
00010010
0011
0101
0110
01111001
1010
1011
1101
1110
1111
5-6
-7 -
8
6
7
java int: 32 bits: 231-1 = 2,147,483,647java long: 64 bits: 9,223,372,036,854,775,807
6-4 = 6 + -4 = 0110 + 1100 = 10010
= 0010(ignoring overflow bit)
![Page 39: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/39.jpg)
Real NumbersReal Numbers
16 8 4 2 1
1/4 1/8 1/161/2
![Page 40: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/40.jpg)
11 0 . 0 1 0 10 . 0 1 0 1
= 2 + 1/4 + 1/16 = 2 + 1/4 + 1/16
= 2 + .25 + .0625= 2 + .25 + .0625
= 2.3125= 2.3125
2 1 1/4 1/8 1/161/2
![Page 41: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/41.jpg)
Recall Scientific NotationRecall Scientific Notation
3204.671 = 3.204671 x 103204.671 = 3.204671 x 1033
.0003671 = 3.671 x 10.0003671 = 3.671 x 10-4-4
MantissaMantissa ExponentExponent
Base 10 representation: (3.671, -4)Base 10 representation: (3.671, -4)
multiplying by 10 is just shifting by one position
![Page 42: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/42.jpg)
Binary Scientific NotationBinary Scientific Notation
.001101 = 1.101 x 2.001101 = 1.101 x 2-3-3
1101.11 = 1.10111 x 21101.11 = 1.10111 x 233
MantissaMantissa Exponent Exponent Base 2 representation: (1.10111, 11)Base 2 representation: (1.10111, 11) Note, mantissa is always “1” (why?) Note, mantissa is always “1” (why?)
so can just store (10111, 11) so can just store (10111, 11) What if mantissa or exponent is What if mantissa or exponent is
negative?negative?
multiplying by 2 is just shifting by one position
![Page 43: UNIT: Data and Representation Goal: Learn how 0,1 can be used to represent numbers, text, images, sound. Goal: Learn how 0,1 can be used to represent numbers,](https://reader034.fdocuments.net/reader034/viewer/2022051516/56649db45503460f94aa4400/html5/thumbnails/43.jpg)
SummarySummary
Binary notation uses numerals 0,1 Binary notation uses numerals 0,1 and place values that are powers of 2and place values that are powers of 2
Use “clock” to see how negative Use “clock” to see how negative numbers are represented in 2’s numbers are represented in 2’s complement form; subtracting can be complement form; subtracting can be done by adding.done by adding.
Real valued numbers are represented Real valued numbers are represented by a pair of integers: mantissa and by a pair of integers: mantissa and exponentexponent