• 沒有找到結果。

Chapter 1:

N/A
N/A
Protected

Academic year: 2022

Share "Chapter 1:"

Copied!
61
0
0

加載中.... (立即查看全文)

全文

(1)

Chapter 1:

Data Storage

Computer Science: An Overview Twelfth Edition

by

J. Glenn Brookshear

Dennis Brylow

(2)

Copyright © 2015 Pearson Education, Inc. 1-2

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

(3)

Chapter 1: Data Storage (continued)

• 1.6 Storing Integers

• 1.7 Storing Fractions

• 1.8 Data and Programming

• 1.9 Data Compression

• 1.10 Communications Errors

(4)

Copyright © 2015 Pearson Education, Inc. 1-4

Bits and Bit Patterns

Bit: Binary Digit (0 or 1)

• Bit Patterns are used to represent information – Numbers

– Text characters – Images

– Sound

– And others

(5)

Boolean Operations

Boolean Operation: An operation that

manipulates one or more true/false values

• Specific operations

– AND – OR

– XOR (exclusive or)

– NOT

(6)

Copyright © 2015 Pearson Education, Inc. 1-6

Figure 1.1 The possible input and output

values of Boolean operations AND, OR,

and XOR (exclusive or)

(7)

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)

(8)

Copyright © 2015 Pearson Education, Inc. 1-8

Figure 1.2 A pictorial representation of AND,

OR, XOR, and NOT gates as well as their input

and output values

(9)

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

(10)

Copyright © 2015 Pearson Education, Inc. 1-10

Figure 1.3 A simple flip-flop circuit

(11)

Figure 1.4 Setting the output of a

flip-flop to 1

(12)

Copyright © 2015 Pearson Education, Inc. 1-12

Figure 1.4 Setting the output of a

flip-flop to 1 (continued)

(13)

Figure 1.4 Setting the output of a

flip-flop to 1 (continued)

(14)

Copyright © 2015 Pearson Education, Inc. 1-14

Figure 1.5 Another way of

constructing a flip-flop

(15)

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

(16)

Copyright © 2015 Pearson Education, Inc. 1-16

Figure 1.6 The hexadecimal coding

system

(17)

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

(18)

Copyright © 2015 Pearson Education, Inc. 1-18

Figure 1.7 The organization of a

byte-size memory cell

(19)

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.

(20)

Copyright © 2015 Pearson Education, Inc. 1-20

Figure 1.8 Memory cells arranged by

address

(21)

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

(22)

Copyright © 2015 Pearson Education, Inc. 1-22

Measuring Memory Capacity

Kilobyte: 2 10 bytes = 1024 bytes

– Example: 3 KB = 3 times1024 bytes

Megabyte: 2 20 bytes = 1,048,576 bytes

– Example: 3 MB = 3 times 1,048,576 bytes

Gigabyte: 2 30 bytes = 1,073,741,824 bytes

– Example: 3 GB = 3 times 1,073,741,824 bytes

(23)

Mass Storage

• Additional devices:

– Magnetic disks – CDs

– DVDs

• Advantages over main memory

– Less volatility

– Larger storage capacities – Low cost

– Magnetic tape – Flash drives

– Solid-state disks

(24)

Copyright © 2015 Pearson Education, Inc. 1-24

Figure 1.9 A magnetic disk storage

system

(25)

Figure 1.10 CD storage

(26)

Copyright © 2015 Pearson Education, Inc.

Flash Drives

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

1-26

– Smartphones

(27)

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 up to 21-bits to represent the symbols used in languages

world wide, 16-bits for world’s commonly used

(28)

Copyright © 2015 Pearson Education, Inc. 1-28

Figure 1.11 The message “Hello.” in

ASCII or UTF-8 encoding

(29)

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

(30)

Copyright © 2015 Pearson Education, Inc. 1-30

Representing Images

• Bit map techniques

– Pixel: short for “picture element”

– RGB

– Luminance and chrominance

• Vector techniques

– Scalable

– TrueType and PostScript

(31)

Representing Sound

• Sampling techniques

– Used for high quality recordings – Records actual audio

• MIDI

– Used in music synthesizers

– Records “musical score”

(32)

Copyright © 2015 Pearson Education, Inc. 1-32

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

(33)

The Binary System

The traditional decimal system is based on powers of ten.

The Binary system is based on powers

of two.

(34)

Copyright © 2015 Pearson Education, Inc. 1-34

Figure 1.13 The base ten and binary

systems

(35)

Figure 1.14 Decoding the binary

representation 100101

(36)

Copyright © 2015 Pearson Education, Inc. 1-36

Figure 1.15 An algorithm for finding the

binary representation of a positive integer

(37)

Figure 1.16 Applying the algorithm in Figure 1.15 to obtain the binary

representation of thirteen

(38)

Copyright © 2015 Pearson Education, Inc. 1-38

Figure 1.17 The binary addition facts

(39)

Figure 1.18 Decoding the binary

representation 101.101

(40)

Copyright © 2015 Pearson Education, Inc. 1-40

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

(41)

Figure 1.19 Two’s complement

notation systems

(42)

Copyright © 2015 Pearson Education, Inc. 1-42

Figure 1.20 Coding the value -6 in two’s

complement notation using four bits

(43)

Figure 1.21 Addition problems converted

to two’s complement notation

(44)

Copyright © 2015 Pearson Education, Inc. 1-44

Figure 1.22 An excess eight

conversion table

(45)

Figure 1.23 An excess notation system

using bit patterns of length three

(46)

Copyright © 2015 Pearson Education, Inc. 1-46

Storing Fractions

Floating-point Notation: Consists of a

sign bit, a mantissa field, and an exponent field.

• Related topics include

– Normalized form

– Truncation errors

(47)

Figure 1.24 Floating-point notation

components

(48)

Copyright © 2015 Pearson Education, Inc. 1-48

Figure 1.25 Encoding the value 2 5 8

(49)

Data and Programing

A programming language is a computer system created to allow humans to precisely express

algorithms using a higher level of

abstraction.

(50)

Copyright © 2015 Pearson Education, Inc.

Getting Started with Python

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!

1-50

(51)

Variables

Variables: name values for later use

• Analogous to mathematic variables in algebra

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

my_integer = 5

my_floating_point = 26.2

my_Boolean = True

(52)

Copyright © 2015 Pearson Education, Inc.

Operators and Expressions

1-52

print(3 + 4) # Prints 7 print(5 – 6) # Prints -1 print(7 * 8) # Prints 56

print(45 / 4) # Prints 11.25 print(2 ** 10) # Prints 1024

s = 'hello' + 'world' s = s * 4

print(s)

(53)

Currency Conversion

# A converter for currency exchange.

USD_to_GBP = 0.66 # Today's exchange rate GBP_sign = '\u00A3' # Unicode value for £

dollars = 1000 # Number dollars to convert

# Conversion calculations

pounds = dollars * USD_to_GBP

# Printing the results

print('Today, $' + str(dollars))

print('converts to ' + GBP_sign + str(pounds))

(54)

Copyright © 2015 Pearson Education, Inc.

Debugging

Syntax errors

print(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

1-54

(55)

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

(56)

Copyright © 2015 Pearson Education, Inc. 1-56

Compressing Images

• GIF: Good for cartoons

• JPEG: Good for photographs

• TIFF: Good for image archiving

(57)

Compressing Audio and Video

• MPEG

– High definition television broadcast – Video conferencing

• MP3

– Temporal masking

– Frequency masking

(58)

Copyright © 2015 Pearson Education, Inc. 1-58

Communication Errors

• Parity bits (even versus odd)

• Checkbytes

• Error correcting codes

(59)

Figure 1.26 The ASCII codes for the

letters A and F adjusted for odd parity

(60)

Copyright © 2015 Pearson Education, Inc. 1-60

Figure 1.27 An error-correcting code

(61)

Figure 1.28 Decoding the pattern 010100

using the code in Figure 1.27

參考文獻

相關文件

– The Parity flag is set when an instruction generates an even number of 1 bits in the low byte of the destination operand.. – The Auxiliary Carry flag is set when an

• The memory storage unit holds instructions and data for a running program.. • A bus is a group of wires that transfer data from one part to another (data,

• The memory storage unit is where instructions and data are held while a computer program is running.. • A bus is a group of parallel wires that transfer data from one part of

• When paging in from disk, we need a free frame of physical memory to hold the data we’re reading in. • In reality, size of physical memory is

• The memory storage unit holds instructions and data for a running program.. • A bus is a group of wires that transfer data from one part to another (data,

One of the main results is the bound on the vanishing order of a nontrivial solution to the Stokes system, which is a quantitative version of the strong unique continuation prop-

One of the main results is the bound on the vanishing order of a nontrivial solution u satisfying the Stokes system, which is a quantitative version of the strong unique

Al atoms are larger than N atoms because as you trace the path between N and Al on the periodic table, you move down a column (atomic size increases) and then to the left across