+ All Categories
Home > Documents > EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File...

EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File...

Date post: 14-Jan-2016
Category:
Upload: nicholas-cummings
View: 214 times
Download: 0 times
Share this document with a friend
54
EE1301: Intro. to Computer Science Browsing the “World Wide Webwith Microsoft ExplorerFile management Microsoft XP Operating System™ Writing documents with Microsoft WordPreparing presentations with Microsoft PowerpointOperating on spreadsheets with Microsoft ExcelReading and composing electronic mail, “e- mail,” with Microsoft OutlookThe students will learn the fundamentals of computer science including:
Transcript
Page 1: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

EE1301: Intro. to Computer Science

• Browsing the “World Wide Web” with Microsoft Explorer™• File management Microsoft XP Operating System™• Writing documents with Microsoft Word™• Preparing presentations with Microsoft Powerpoint™• Operating on spreadsheets with Microsoft Excel™• Reading and composing electronic mail, “e-mail,” with

Microsoft Outlook™

The students will learn the fundamentals of computer science including:

Page 2: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

CIS 106: Intro. to Computer Scienceat Pasadena City College

EE1301: Intro. to Computer Science

Page 3: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

EE1301: Intro. to Computer Science

Computer Systems

Computer Engineering

Page 4: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

EE1301: Intro. to Computing Systems

The course will introduce the fundamental concepts of computing systems from the machine level to high-level language programming, including:

• transistors and logic circuits• binary arithmetic and data representation• memory and pointer addressing• data types and structures• Assembly Language• C programming

Page 5: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

• Quantum Physics (what’s an atom?)

• Material Science (why does doped silicon behave as a semiconductor?)

• Device Physics (how does a transistor work?)

• Circuits (how do we put transistors together to get simple logic functions?)

• Logic Design (how do we get complicated logic functions from simpler ones?)

• Computer Architecture (how do we build a computer from logic functions?)

• Assembly Programming (how do we specify tasks in the form of instructions for the computer?)

• High-Level Programming (how do we specify tasks in a form that can be translated into instructions for the computer?)

Vertical Slice of Computer Engineering

Page 6: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

• Quantum Physics (what’s an atom?)

• Material Science (why does doped silicon behave as a semiconductor?)

• Device Physics (how does a transistor work?)

• Circuits (how do we put transistors together to get simple logic functions?)

• Logic Design (how do we get complicated logic functions from simpler ones?)

• Computer Architecture (how do we build a computer from logic functions?)

• Assembly Programming (how do we specify tasks in the form of instructions for the computer?)

• High-Level Programming (how do we specify tasks in a form that can be translated into instructions for the computer?)

EE1301

CS 1901 & CS1902

Vertical Slice of Computer Engineering

Page 7: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

No Hamsters, No Magic

Any sufficiently advanced technology is indistinguishable from magic.

– Arthur C. Clarke

Page 8: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Examples of Computing Systems

Are all these systems “equivalent”?

Page 9: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Examples of Computing Systems

Are all these systems “ Turing Equivalent”?

Page 10: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Concepts vs. Jargon

“Now this end is called the thagomizer, after the late Thag Simmons.”

Page 11: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Turing Machine

Page 12: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Turing Equivalence

“It can be shown that a single special machine of that type can be made to do the work of all. It could in fact be made to work as a model of any other machine. The special machine may be called the universal machine.”

– Alan Turing, 1947

“The problems solvable by a universal Turing machine are exactly those problems solvable by an algorithm or an effective method of computation, for any reasonable definition of those terms. .”

– Church-Turing Thesis

Page 13: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Turing Universal Systems

Machine that can execute any C program.

main(){ for(;;){

printf ("Hello World!\n");}

}

Page 14: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Turing Universal Systems

Machine that can execute any Assembly program.

Page 15: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Turing Universal Systems

clock

inputs

),,( 1 nxxX

outputs

),,( 1 mzzZ

memoryelements

),,( 1 kyyY

combinationalcircuit

Synchronous Digital System

Page 16: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Building Digital Circuits

Intel 4004(1971)

Intel “Nehalem”(2008)

~2000 gates

~2 billion gates

Page 17: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

1 transistor (1960’s) 2000 transistors(Intel 4004, 1971)

800 million transistors(Intel Penryn, 2007)

Boxes inside Boxes [inside boxes…]

Page 18: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

From Chips to Computers

IBM’s Blue Gene: 64,000 Processors

Page 19: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

The Computational Landscape

• Abutting true physical limits.

• Cost and complexity are starting to overwhelm.

“There are known ‘knowns’; and there are unknown ‘unknowns’; but today I’ll speak of the known ‘unknowns’.”

– Donald Rumsfeld, 2002

Semiconductors:exponentially smaller, faster, cheaper – forever?

Page 20: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Integrated Circuits

0

1

0

1

0

1

0

1

circuit

1

0

What do integrated circuits do? • accept zeros and ones as inputs;• produce zeros and ones as outputs.

inputs outputs

Page 21: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Integrated Circuits

0

1

0

1

0

1

0

1

circuit

1

0

Why do we want this? • zeros and ones represent information;• circuit performs computation.

inputs outputs

Page 22: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Integrated Circuits

0

1

0

1

0

1

0

1

circuit

1

0

How do we build (design) such circuits? • hierarchically, from components.

inputs outputs

Page 23: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

All (or mostly) About “Bits”

0 1

zero one

false true

off on

open closed

not asserted asserted

not set set… …

Page 24: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Truth Tables

Example

8 rows3 variables

4 rows2 variables

2m rowsm variables

264 rows64 variables

1 1 1 1

0000111

0011001

0101010

0001010

x1 x2 x3 f

Page 25: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.
Page 26: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

One made-up fact…

[well, an abstraction really…]

A Logic Gate

1x

2x

dx

di

ix

,,1allfor

{0,1}

{0,1}{0,1}: dg

),,( 1 dxxg

Page 27: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

“AND” gate

0001

Common Gate:

1x

2x

g0011

0101

1x 2x g

Logic Gates

Page 28: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

“OR” gate

0011

0101

0111

Common Gate:

1x

2x

g

1x 2x g

Logic Gates

Page 29: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

“NAND” gate

0011

0101

1110

Common Gate:

1x 2x g

Logic Gates

1x

2x

g

Page 30: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

“NOR” gate

0011

0101

1000

Common Gate:

1x 2x g

Logic Gates

1x

2x

g

Page 31: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

“XOR” gate

0011

0101

0110

Common Gate:

1x

2x

g

1x 2x g

Logic Gates

Page 32: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.
Page 33: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Linear Threshold Gates

1x

2x

nx

1w

2w

nw

0w... ),,( 1 nxxf x

ni

ix

,,1allfor

{0,1}

0if1

0if0

2210

2210

nn

nn

xwxwwxw

xwxwwxwf

w

ni

iw

,,0allfor

R

Page 34: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Linear Threshold Gates

Useful Model?

Page 35: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

),,( 11 mxxf a

),,( 12 mxxf a

),,( 1 mn xxf a

inputs outputs

Digital Circuit

1x

2x

mx

circuit

Page 36: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

),,( 1 mn xxf a

),,( 11 mxxf a

),,( 12 mxxf a),,( 1 mxxf a

inputs outputs

1x

2x

mx

circuit gate

Digital Circuit

Page 37: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

1x

2x

3x

4x

5x

6x

NAND

OR

ANDAND

AND

NOR

1

0

0

1

1

1

1

0

1

0

0

1

Digital Circuit

Page 38: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Data Structures

Example

Truth Tables

1 1 1 1

0000111

0011001

0101010

0001010

x1 x2 x3 f

x1

x2

x3

f

Page 39: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Sequential Circuits

clock

synchronous, finite number of states

inputs

),,( 1 nxxX

outputs

),,( 1 mzzZ

memoryelements

),,( 1 kyyY

combinationalcircuit

Page 40: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

A Computing System…

Page 41: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

“A person's mental activities are entirely due to the behavior of nerve cells, glial cells, and the atoms, ions, and molecules that make them up and influence them.”

– Francis Crick, 1982

Astonishing Hypothesis

“That the astonishing hypothesis is astonishing.”

– Christophe Koch, 1995

The Astonishing Part:

Page 42: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Domains of Expertise

• Vision• Language• Abstract Reasoning• Farming

Human

Circuit

• Number Crunching

• Mining Data• Iterative

Calculations

Page 43: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Artificial Life

US Patent 20070122826 (pending):“The present invention relates to a minimal set of protein-coding genes which provides the information required for replication of a free-living organism in a rich bacterial culture medium.” – J. Craig Venter Institute

Going from reading genetic codes to writing them.

Page 44: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Artificial Life

Going from reading genetic codes to writing them.

Moderator: “Some people have accused you of playing God.”

J. Craig Venter:“Oh no, we’re not playing.

Page 45: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Biochemistry in a Nutshell

DNA: string of n nucleotides (n ≈ 109)

... ACCGTTGAATGACG...

},,{},,,{ 2013 aaGTCA

Nucleotides:

Amino acid: coded by a sequence of 3 nucleotides.

Proteins: produced from a sequence of m amino

acids (m ≈ 103) called a “gene”.

},,,{ GTCA

protein},,{ 201 maa

Page 46: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Biochemical Reactions: how types of molecules combine.

+ +2a b c

Playing by the Rules

Page 47: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Biochemical Reactions

9

6

7

cellproteins count

+

8

5

9

Discrete chemical kinetics; spatial homogeneity.

Page 48: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Biochemical Reactions

+

+

+

slow

medium

fast

Relative rates or (reaction propensities):

Discrete chemical kinetics; spatial homogeneity.

Page 49: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Protein-ProteinChemistry

[computational] Biochemistry

y

x

quantities

z

Biochemical [computation]

quantity

Page 50: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Multiplication

pseudo-codebiochemical code

Page 51: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Exponentiation

biochemical code

pseudo-code

Page 52: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Raising-to-a-Power

pseudo-code

biochemical code

Page 53: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Language as a Window into the way the Brain Works

Steven Pinker, Harvard

Page 54: EE1301: Intro. to Computer Science Browsing the “World Wide Web” with Microsoft Explorer™ File management Microsoft XP Operating System™ Writing documents.

Circuits & Computers as a Window into our Linguistic Brains

CircuitBrainConceives of circuits and

computation by “applying” language.

Lousy at all the tasks that the brain that

designed it is good at (including language).

?


Recommended