Chapter 1:
Data Storage
Computer Science: An Overview
Eleventh Edition
by
J. Glenn Brookshear
Copyright © 2012 Pearson Education, Inc.
Chapter 1: Data Storage
• 1.1 Bits and Their Storage
• 1.2 Main Memory
• 1.3 Mass Storage
• 1.4 Representing Information as Bit Patterns
• 1.5 The Binary System
Copyright © 2012 Pearson Education, Inc. 0-2
Chapter 1: Data Storage (continued)
• 1.6 Storing Integers
• 1.7 Storing Fractions
• 1.8 Data Compression
• 1.9 Communications Errors
Copyright © 2012 Pearson Education, Inc. 0-3
Bits and Bit Patterns
• Bit: Binary Digit (0 or 1)
• Bit Patterns are used to represent information.
– Numbers
– Text characters
– Images
– Sound
– And others
Copyright © 2012 Pearson Education, Inc. 0-4
Boolean Operations
• Boolean Operation: An operation that
manipulates one or more true/false values
• Specific operations
– AND
– OR
– XOR (exclusive or)
– NOT
Copyright © 2012 Pearson Education, Inc. 0-5
Figure 1.1 The Boolean operations AND,
OR, and XOR (exclusive or)
Copyright © 2012 Pearson Education, Inc. 0-6
Gates
• Gate: A device that computes a Boolean
operation
– Often implemented as (small) electronic
circuits
– Provide the building blocks from which
computers are constructed
– VLSI (Very Large Scale Integration)
Copyright © 2012 Pearson Education, Inc. 0-7
Figure 1.2 A pictorial representation of AND,
OR, XOR, and NOT gates as well as their input
and output values
Copyright © 2012 Pearson Education, Inc. 0-8
Flip-flops
• Flip-flop: A circuit built from gates that can
store one bit.
– One input line is used to set its stored value to 1
– One input line is used to set its stored value to 0
– While both input lines are 0, the most recently
stored value is preserved
Copyright © 2012 Pearson Education, Inc. 0-9
Figure 1.3 A simple flip-flop circuit
Copyright © 2012 Pearson Education, Inc. 0-10
Figure 1.4 Setting the output of a flip-
flop to 1
Copyright © 2012 Pearson Education, Inc. 0-11
Figure 1.4 Setting the output of a flip-
flop to 1 (continued)
Copyright © 2012 Pearson Education, Inc. 0-12
Figure 1.4 Setting the output of a flip-
flop to 1 (continued)
Copyright © 2012 Pearson Education, Inc. 0-13
Figure 1.5 Another way of
constructing a flip-flop
Copyright © 2012 Pearson Education, Inc. 0-14
Hexadecimal Notation
• Hexadecimal notation: A shorthand
notation for long bit patterns
– Divides a pattern into groups of four bits each
– Represents each group by a single symbol
• Example: 10100011 becomes A3
Copyright © 2012 Pearson Education, Inc. 0-15
Figure 1.6 The hexadecimal coding
system
Copyright © 2012 Pearson Education, Inc. 0-16
Main Memory Cells
• Cell: A unit of main memory (typically 8 bits
which is one byte)
– Most significant bit: the bit at the left (high-
order) end of the conceptual row of bits in a
memory cell
– Least significant bit: the bit at the right (low-
order) end of the conceptual row of bits in a
memory cell
Copyright © 2012 Pearson Education, Inc. 0-17
Figure 1.7 The organization of a
byte-size memory cell
Copyright © 2012 Pearson Education, Inc. 0-18
Main Memory Addresses
• Address: A “name” that uniquely identifies one
cell in the computer’s main memory
– The names are actually numbers.
– These numbers are assigned consecutively
starting at zero.
– Numbering the cells in this manner associates
an order with the memory cells.
Copyright © 2012 Pearson Education, Inc. 0-19
Figure 1.8 Memory cells arranged by
address
Copyright © 2012 Pearson Education, Inc. 0-20
Memory Terminology
• Random Access Memory (RAM):
Memory in which individual cells can be
easily accessed in any order
• Dynamic Memory (DRAM): RAM
composed of volatile memory
Copyright © 2012 Pearson Education, Inc. 0-21
Measuring Memory Capacity
• Kilobyte: 210 bytes = 1024 bytes
– Example: 3 KB = 3 times1024 bytes
• Megabyte: 220 bytes = 1,048,576 bytes
– Example: 3 MB = 3 times 1,048,576 bytes
• Gigabyte: 230 bytes = 1,073,741,824 bytes
– Example: 3 GB = 3 times 1,073,741,824 bytes
Copyright © 2012 Pearson Education, Inc. 0-22
Mass Storage
• On-line versus off-line
• Typically larger than main memory
• Typically less volatile than main memory
• Typically slower than main memory
Copyright © 2012 Pearson Education, Inc. 0-23
Mass Storage Systems
• Magnetic Systems
– Disk
– Tape
• Optical Systems
– CD
– DVD
• Flash Technology
– Flash Drives
– Secure Digital (SD) Memory Card
Copyright © 2012 Pearson Education, Inc. 0-24
Latency vs Transfer Rate
• Latency determines how fast you can
reach the required data
• Transfer rate tells you fast they are
transfered once they have been reached
Copyright © 2012 Pearson Education, Inc.
Famous Tanenbaum quote
“Never underestimate the transfer rate of a
pick-up full of tapes”
• Taking 50TB of flash disk on a three hour drive equals a
transfer rate of 4.74 GB/s
• The latency is 3 h.
Copyright © 2012 Pearson Education, Inc.
Figure 1.9 A magnetic disk storage
system
Copyright © 2012 Pearson Education, Inc. 0-27
Figure 1.10 Magnetic tape storage
Copyright © 2012 Pearson Education, Inc. 0-28
Figure 1.11 CD storage
Copyright © 2012 Pearson Education, Inc. 0-29
Files
• File: A unit of data stored in mass storage
system
– Fields and keyfields
• Physical record versus Logical record
• Buffer: A memory area used for the
temporary storage of data (usually as a
step in transferring the data)
Copyright © 2012 Pearson Education, Inc. 0-30
Figure 1.12 Logical records versus
physical records on a disk
Copyright © 2012 Pearson Education, Inc. 0-31
Representing Text
• Each character (letter, punctuation, etc.) is
assigned a unique bit pattern.
– ASCII: Uses patterns of 7-bits to represent most
symbols used in written English text
– ISO developed a number of 8 bit extensions to
ASCII, each designed to accommodate a major
language group
– Unicode: Uses patterns of 16-bits to represent the
major symbols used in languages world wide
Copyright © 2012 Pearson Education, Inc. 0-32
Figure 1.13 The message “Hello.” in
ASCII
Copyright © 2012 Pearson Education, Inc. 0-33
Representing Numeric Values
• Binary notation: Uses bits to represent a
number in base two
• Limitations of computer representations of
numeric values
– Overflow: occurs when a value is too big to be
represented
– Truncation: occurs when a value cannot be
represented accurately
Copyright © 2012 Pearson Education, Inc. 0-34
Representing Images
• Bit map techniques
– Pixel: short for “picture element”
– RGB
– Luminance and chrominance
• Vector techniques
– Scalable
– TrueType and PostScript
Copyright © 2012 Pearson Education, Inc. 0-35
Representing Sound
• Sampling techniques
– Used for high quality recordings
– Records actual audio
• MIDI
– Used in music synthesizers
– Records “musical score”
Copyright © 2012 Pearson Education, Inc. 0-36
Figure 1.14 The sound wave represented by the
sequence 0, 1.5, 2.0, 1.5, 2.0, 3.0, 4.0, 3.0, 0
Copyright © 2012 Pearson Education, Inc. 0-37
The Binary System
The traditional decimal system is based
on powers of ten.
The Binary system is based on powers
of two.
Copyright © 2012 Pearson Education, Inc. 0-38
Figure 1.15 The base ten and binary
systems
Copyright © 2012 Pearson Education, Inc. 0-39
Figure 1.16 Decoding the binary
representation 100101
Copyright © 2012 Pearson Education, Inc. 0-40
Figure 1.17 An algorithm for finding the
binary representation of a positive integer
Copyright © 2012 Pearson Education, Inc. 0-41
Figure 1.18 Applying the algorithm in
Figure 1.15 to obtain the binary
representation of thirteen
Copyright © 2012 Pearson Education, Inc. 0-42
Figure 1.19 The binary addition facts
Copyright © 2012 Pearson Education, Inc. 0-43
Binary addition in gates
A half-adder
Copyright © 2012 Pearson Education, Inc.
Addition in gates with carry
A full adder
Copyright © 2012 Pearson Education, Inc.
Full adder truth table
A B Cin Cout S
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
Copyright © 2012 Pearson Education, Inc.
Figure 1.20 Decoding the binary
representation 101.101
Copyright © 2012 Pearson Education, Inc. 0-47
Storing Integers
• Two’s complement notation: The most
popular means of representing integer
values
• Excess notation: Another means of
representing integer values
• Both can suffer from overflow errors.
Copyright © 2012 Pearson Education, Inc. 0-48
Figure 1.21 Two’s complement
notation systems
Copyright © 2012 Pearson Education, Inc. 0-49
Figure 1.22 Coding the value -6 in two’s
complement notation using four bits
Copyright © 2012 Pearson Education, Inc. 0-50
Figure 1.23 Addition problems converted
to two’s complement notation
Copyright © 2012 Pearson Education, Inc. 0-51
Figure 1.24 An excess eight
conversion table
Copyright © 2012 Pearson Education, Inc. 0-52
Figure 1.25 An excess notation system
using bit patterns of length three
Copyright © 2012 Pearson Education, Inc. 0-53
Storing Fractions
• Floating-point Notation: Consists of a
sign bit, a mantissa field, and an exponent
field.
• Related topics include
– Normalized form
– Truncation errors
Copyright © 2012 Pearson Education, Inc. 0-54
Figure 1.26 Floating-point notation
components
Copyright © 2012 Pearson Education, Inc. 0-55
Figure 1.27 Encoding the value
2 5⁄8
Copyright © 2012 Pearson Education, Inc. 0-56
Data Compression
• Lossy versus lossless
• Run-length encoding
• Frequency-dependent encoding
(Huffman codes)
• Relative encoding
• Dictionary encoding (Includes adaptive dictionary
encoding such as LZW encoding.)
Copyright © 2012 Pearson Education, Inc. 0-57
Compressing Images
• GIF: Good for cartoons
• JPEG: Good for photographs
• TIFF: Good for image archiving
Copyright © 2012 Pearson Education, Inc. 0-58
Compressing Audio and Video
• MPEG
– High definition television broadcast
– Video conferencing
• MP3
– Temporal masking
– Frequency masking
Copyright © 2012 Pearson Education, Inc. 0-59
Communication Errors
• Parity bits (even versus odd)
• Checkbytes
• Error correcting codes
Copyright © 2012 Pearson Education, Inc. 0-60
Figure 1.28 The ASCII codes for the
letters A and F adjusted for odd parity
Copyright © 2012 Pearson Education, Inc. 0-61
Figure 1.29 An error-correcting code
Copyright © 2012 Pearson Education, Inc. 0-62
Figure 1.30 Decoding the pattern 010100
using the code in Figure 1.30
Copyright © 2012 Pearson Education, Inc. 0-63