copyright © 2015 pearson education, inc. chapter 1: data storage

Post on 25-Dec-2015

216 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Copyright © 2015 Pearson Education, Inc.

Chapter 1:Chapter 1:Data StorageData Storage

Copyright © 2015 Pearson Education, Inc.

• 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

Chapter 1: Data Storage

1-2

Copyright © 2015 Pearson Education, Inc.

• 1.6 Storing Integers

• 1.7 Storing Fractions

• 1.8 Data and Programming

• 1.9 Data Compression

• 1.10 Communications Errors

Chapter 1: Data Storage (continued)

1-3

Copyright © 2015 Pearson Education, Inc.

• Ask TA

• Mine: Monday 11-2 in room 135 or 129 maybe, not sure.

• (ask Rasha, the admin)

• Syllabus

Office Hours

1-4

Copyright © 2015 Pearson Education, Inc. 0-5

Copyright © 2015 Pearson Education, Inc. 0-6

Copyright © 2015 Pearson Education, Inc. 0-7

Copyright © 2015 Pearson Education, Inc.

• Bit: Binary Digit (0 or 1)• Bit Patterns are used to represent information

– Numbers– Text characters– Images– Sound– And others

Bits and Bit Patterns

1-8

Copyright © 2015 Pearson Education, Inc.

• Boolean Operation: An operation that manipulates one or more true/false values

• Specific operations– AND– OR– XOR (exclusive or)– NOT

Boolean Operations

1-9

Copyright © 2015 Pearson Education, Inc.

Figure 1.1 The possible input and output values of Boolean operations AND, OR, and XOR (exclusive or)

1-10

The NOT operation

NOT 1 NOT 0 0 1

Copyright © 2015 Pearson Education, Inc.

Figure 1.1 The possible input and output values of Boolean operations AND, OR, and XOR (exclusive or)

1-11

AND

OR XOR

1 1 ▬► 11 1 ▬► 11 0 ▬► 10 1 ▬► 1

1 0 ▬► 10 1 ▬► 1

Copyright © 2015 Pearson Education, Inc.

• 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)

Gates

1-12

Copyright © 2015 Pearson Education, Inc.

Figure 1.2 A pictorial representation of AND, OR, XOR, and NOT gates as well as their input and output values

1-13

Copyright © 2015 Pearson Education, Inc.

• 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

Flip-flops

1-14

Copyright © 2015 Pearson Education, Inc.

Figure 1.3 A simple flip-flop circuit

1-15

Copyright © 2015 Pearson Education, Inc.

Figure 1.4 Setting the output of a flip-flop to 1

1-16

Copyright © 2015 Pearson Education, Inc.

Figure 1.4 Setting the output of a flip-flop to 1 (continued)

1-17

Copyright © 2015 Pearson Education, Inc.

Figure 1.4 Setting the output of a flip-flop to 1 (continued)

1-18

Copyright © 2015 Pearson Education, Inc.

Figure 1.5 Another way of constructing a flip-flop

1-19

Copyright © 2015 Pearson Education, Inc.

• 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

Hexadecimal Notation

1-20

Copyright © 2015 Pearson Education, Inc.

Figure 1.6 The hexadecimal coding system

1-21

Copyright © 2015 Pearson Education, Inc.

• 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

1.2 Main Memory Cells

1-22

Copyright © 2015 Pearson Education, Inc.

Figure 1.7 The organization of a byte-size memory cell

1-23

Copyright © 2015 Pearson Education, Inc.

• 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.

Main Memory Addresses

1-24

Copyright © 2015 Pearson Education, Inc.

Figure 1.8 Memory cells arranged by address

1-25

Copyright © 2015 Pearson Education, Inc.

• Random Access Memory (RAM): Memory in which individual cells can be easily accessed in any order

• Dynamic Memory (DRAM): RAM composed of volatile memory

Memory Terminology

1-26

http://computer.howstuffworks.com/ram1.htm

Copyright © 2015 Pearson Education, Inc.

• 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

Measuring Memory Capacity

1-27

Copyright © 2015 Pearson Education, Inc.

Measuring Memory Capacity

1-28

A petabyte is (1,000,000,000,000,000) bytes

A terabyte is a trillion bytes (1,000,000,000,000)

A exabyte is (1,000,000,000,000,000,000) bytes

A zettabyte is (1,000,000,000,000,000,000,000) bytes

Copyright © 2015 Pearson Education, Inc.

• Are devices for storing data permanently.

• Advantages over main memory– Less volatility– Larger storage capacities– Low cost– In many cases can be removed

1.3 Mass Storage

1-29

Copyright © 2015 Pearson Education, Inc.

• Magnetic Devices– Magnetic disks– Magnetic tape

• Optical Devices– CDs– DVDs– Blu Ray

• Solid State Devices – Flash drives– Solid-state disks (SDD)

1.3 Mass Storage

1-30

Copyright © 2015 Pearson Education, Inc.

Figure 1.9 A magnetic disk storage system

1-31

Copyright © 2015 Pearson Education, Inc. 32

Magnetic Disks

• Bits of data (0’s and 1’s) are stored on circular magnetic platters called disks.

• A disk rotates rapidly (& never stops).

• A disk head reads and writes bits of data as they pass under the head.

• Often, several platters are organized into a disk pack (or disk drive).

Copyright © 2015 Pearson Education, Inc. 33

A Disk Drive

Disk drive with 4 platters and 8 surfaces and 8 RW heads

surfaces

Spindle BoomRead/Write heads

Copyright © 2015 Pearson Education, Inc. 34

Looking at a surface

Surface of disk showing tracks and sectors

sector

tracks

Copyright © 2015 Pearson Education, Inc. 35

Organization of Disks

• Disk contains concentric tracks.

• Tracks are divided into sectors

• A sector is the smallest addressable unit in a disk.

Copyright © 2015 Pearson Education, Inc. 36

Disk Controller

• Disk controllers: typically embedded in the disk drive, which acts as an interface between the CPU and the disk hardware.

• The controller has an internal cache (typically a number of MBs) that it uses to buffer data for read/write requests.

Copyright © 2015 Pearson Education, Inc.

Structure of Hard Disk

Copyright © 2015 Pearson Education, Inc.

Figure 1.10 CD storage

1-38

http://www.explainthatstuff.com/how-cd-writers-work.html

Copyright © 2015 Pearson Education, Inc. 39

Physical Organization of CD-ROM

• Compact Disk – read only memory (write once)• Data is encoded and read optically with a laser• Can store around 600MB data• Digital data is represented as a series of Pits

and Lands:1. Pit = a little depression, forming a lower level in

the track

2. Land = the flat part between pits, or the upper levels in the track

Copyright © 2015 Pearson Education, Inc. 40

Organization of data

• Reading a CD is done by shining a laser at the disc and detecting changing reflections patterns.– 1 = change in height (land to pit or pit to land)– 0 = a “fixed” amount of time between 1’s

LAND PIT LAND PIT LAND ...------+ +-------------+ +---... |_____| |_______|..0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 ..

• Note : we cannot have two 1’s in a row!=> uses Eight to Fourteen Modulation (EFM) encoding table.

Copyright © 2015 Pearson Education, Inc. 41

Properties

• Note that: Since 0's are represented by the length of time between transitions, we must travel at constant linear velocity (CLV)on the tracks.

• Sectors are organized along a spiral• Sectors have same linear length• Advantage: takes advantage of all storage space

available.• Disadvantage: has to change rotational speed

when seeking (slower towards the outside)

Copyright © 2015 Pearson Education, Inc.

Copyright © 2015 Pearson Education, Inc.

• Flash Memory – circuits that traps electrons in tiny silicon dioxide chambers

• Repeated erasing slowly damages the media

• Mass storage of choice for:– Digital cameras

• SD Cards provide GBs of storage

Flash Drives

1-43

– Smartphones

Copyright © 2015 Pearson Education, Inc.

• 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 up to 21-bits to represent the symbols used in languages world wide, 16-bits for world’s commonly used languages

1.4 Representing Text

1-44

Copyright © 2015 Pearson Education, Inc.

Figure 1.11 The message “Hello.” in ASCII or UTF-8 encoding

1-45

Copyright © 2015 Pearson Education, Inc.

• 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

Representing Numeric Values

1-46

Copyright © 2015 Pearson Education, Inc.

• Bit map techniques– Pixel: short for “picture element”– RGB– Luminance and chrominance

• Vector techniques– Scalable– TrueType and PostScript

• https://www.youtube.com/watch?v=fy9Pby0Gzsc

Representing Images

1-47

Copyright © 2015 Pearson Education, Inc.

• Sampling techniques– Used for high quality recordings– Records actual audio

• MIDI– Used in music synthesizers– Records “musical score”

Representing Sound

1-48

Copyright © 2015 Pearson Education, Inc.

Figure 1.12 The sound wave represented by the sequence 0, 1.5, 2.0, 1.5, 2.0, 3.0, 4.0, 3.0, 0

1-49

Copyright © 2015 Pearson Education, Inc.

The traditional decimal system is based

on powers of ten.

The Binary system is based on powers

of two.

1.5 The Binary System

1-50

Copyright © 2015 Pearson Education, Inc.

Figure 1.13 The base ten and binary systems

1-51

Copyright © 2015 Pearson Education, Inc. 0-52

Copyright © 2015 Pearson Education, Inc. 0-53

Copyright © 2015 Pearson Education, Inc.

Figure 1.14 Decoding the binary representation 100101

1-54

Copyright © 2015 Pearson Education, Inc.

Figure 1.15 An algorithm for finding the binary representation of a positive integer

1-55

Copyright © 2015 Pearson Education, Inc.

Figure 1.16 Applying the algorithm in Figure 1.15 to obtain the binary representation of thirteen

1-56

Copyright © 2015 Pearson Education, Inc.

Figure 1.17 The binary addition facts

1-57

Copyright © 2015 Pearson Education, Inc.

Figure 1.18 Decoding the binary representation 101.101

1-58

Copyright © 2015 Pearson Education, Inc.

• 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

1.6 Storing Integers

1-59

Copyright © 2015 Pearson Education, Inc.

Figure 1.19 Two’s complement notation systems

1-60

Copyright © 2015 Pearson Education, Inc.

Figure 1.20 Coding the value -6 in two’s complement notation using four bits

1-61

Copyright © 2015 Pearson Education, Inc.

Figure 1.21 Addition problems converted to two’s complement notation

1-62

Copyright © 2015 Pearson Education, Inc.

Figure 1.22 An excess eight conversion table

1-63

Copyright © 2015 Pearson Education, Inc. 0-64

Copyright © 2015 Pearson Education, Inc.

Figure 1.23 An excess notation system using bit patterns of length three

1-65

Copyright © 2015 Pearson Education, Inc.

• Floating-point Notation: Consists of a sign bit, a mantissa field, and an exponent field.

• Related topics include– Normalized form– Truncation errors

1.7 Storing Fractions

1-66

Copyright © 2015 Pearson Education, Inc.

Figure 1.24 Floating-point notation components

1-67

Copyright © 2015 Pearson Education, Inc.

Figure 1.25 Encoding the value 2 5⁄8

1-68

Copyright © 2015 Pearson Education, Inc.

A programming language is a computer system created to allow humans to precisely express algorithms using a higher level of abstraction.

1.8 Data and Programming

1-69

Copyright © 2015 Pearson Education, Inc.

• Python: a popular programming language for applications, scientific computation, and as an introductory language for students

• Freely available from www.python.org

• Python is an interpreted language– Typing:

print('Hello, World!')

– Results in:

Hello, World!

Getting Started with Python

1-70

Copyright © 2015 Pearson Education, Inc.

• Variables: name values for later use

• Analogous to mathematic variables in algebra

s = 'Hello, World!'print(s)

my_integer = 5my_floating_point = 26.2my_Boolean = Truemy_string = 'characters'my_integer = 0xFF

Variables

1-71

Copyright © 2015 Pearson Education, Inc.

print(3 + 4) # Prints 7print(5 – 6) # Prints -1print(7 * 8) # Prints 56print(45 / 4) # Prints 11.25print(2 ** 10) # Prints 1024

s = 'hello' + 'world's = s * 4print(s)

Operators and Expressions

1-72

Copyright © 2015 Pearson Education, Inc.

# A converter for currency exchange.

USD_to_GBP = 0.66 # Today's exchange rateGBP_sign = '\u00A3' # Unicode value for £dollars = 1000 # Number dollars to convert

# Conversion calculationspounds = dollars * USD_to_GBP

# Printing the resultsprint('Today, $' + str(dollars)) print('converts to ' + GBP_sign + str(pounds))

Currency Conversion

1-73

Copyright © 2015 Pearson Education, Inc.

• Syntax errorsprint(5 +)SyntaxError: invalid syntax

pront(5)NameError: name 'pront' is not defined

• Semantic errors– Incorrect expressions like

total_pay = 40 + extra_hours * pay_rate

• Runtime errors– Unintentional divide by zero

Debugging

1-74

Copyright © 2015 Pearson Education, Inc.

• Lossy versus lossless

• Run-length encoding

• Frequency-dependent encoding (Variable length encoding) (Huffman codes)

• Relative encoding

• Dictionary encoding (Includes adaptive dictionary encoding such as LZW encoding.)

1.9 Data Compression

1-75

Copyright © 2015 Pearson Education, Inc.

4, 11

4, 9, 2, 14, 9, 2, 14, 114, 94, 95, 70, 171, 15

Run Length Encoding Example

0-76

Copyright © 2015 Pearson Education, Inc. 0-77

4, 11 4, 9, 2, 1 4, 9, 2, 1 4, 11 4, 9 4, 9 5, 7 0, 17 1, 15

Run Length Encoding Example

Copyright © 2015 Pearson Education, Inc.

Huffman Codes

– Letters with high frequency are encoded using shorter symbols.

– Letters with low frequency are encoded using longer symbols.

– Huffman code (for a set of seven letters): • four bits per letter (minimum 3 bits).

– The string “abefd” is encoded as “1010000100100000”.

– Huffman codes are used in some UNIX systems for data compression.

Letter: a b c d e f gProbability: 0.4 0.1 0.1 0.1 0.1 0.1 0.1Code 1 010 011 0000 0001 0010 0011

Copyright © 2015 Pearson Education, Inc.

LZW Example

0-79

xxy yyx xxy xxy yyx

1123221343435

Copyright © 2015 Pearson Education, Inc.

• GIF: Good for cartoons

• JPEG: Good for photographs

• TIFF: Good for image archiving

Compressing Images

1-80

Copyright © 2015 Pearson Education, Inc.

• MPEG– High definition television broadcast– Video conferencing

• MP3– Temporal masking– Frequency masking

Compressing Audio and Video

1-81

Copyright © 2015 Pearson Education, Inc.

End End of of

ChapterChapter

top related