cs 111.002 concepts of computer science spring 2008 mwf 2:00-2:50 pm engineering building 1033...

13
CS 111.002 Concepts of CS 111.002 Concepts of Computer Science Computer Science Spring 2008 Spring 2008 MWF 2:00-2:50 PM MWF 2:00-2:50 PM Engineering Building 1033 Engineering Building 1033 Chapter 0 Chapter 0 Introduction Introduction Page Page 1 Instructor: Bill White Instructor: Bill White Office: EB 3041 Office: EB 3041 Phone: (618)650-3483 Phone: (618)650-3483 E-Mail: [email protected] E-Mail: [email protected] Office Hours: Office Hours: MWF MWF 9AM-1PM 9AM-1PM TR 9:30-10:30AM TR 9:30-10:30AM

Upload: elaine-norton

Post on 16-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

CS 111.002 Concepts of CS 111.002 Concepts of Computer ScienceComputer ScienceSpring 2008Spring 2008MWF 2:00-2:50 PMMWF 2:00-2:50 PMEngineering Building 1033Engineering Building 1033

Chapter 0Chapter 0IntroductionIntroduction

Page Page 11

Instructor: Bill WhiteInstructor: Bill WhiteOffice: EB 3041Office: EB 3041Phone: (618)650-3483Phone: (618)650-3483E-Mail: [email protected]: [email protected] Hours:Office Hours: MWF 9AM-MWF 9AM-1PM1PM

TR 9:30-10:30AMTR 9:30-10:30AM

Page 2: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

Tentative SyllabusTentative Syllabus

Chapter 0Chapter 0IntroductionIntroduction

Page Page 22

First Quarter (1/14/08-2/08/08)First Quarter (1/14/08-2/08/08)• Data Representation & Hardware Data Representation & Hardware (Chapters 1-5)(Chapters 1-5)Second Quarter (2/11/08-3/07/08)Second Quarter (2/11/08-3/07/08)• Algorithms & Programming (Chapters 6-Algorithms & Programming (Chapters 6-9)9)

Third Quarter (3/17/08-4/09/08)Third Quarter (3/17/08-4/09/08)• Operating Systems & Applications Operating Systems & Applications (Chapters 10-14)(Chapters 10-14)Fourth Quarter (4/11/08-4/30/08)Fourth Quarter (4/11/08-4/30/08)• Networks & Ethical Considerations Networks & Ethical Considerations (Chapters 15-17)(Chapters 15-17)

Page 3: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

GradingGrading

Chapter 0Chapter 0IntroductionIntroduction

Page Page 33

Page 4: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

Chapter 1: The Big PictureChapter 1: The Big Picture

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 44

The Layers of a Computing The Layers of a Computing SystemSystem

Page 5: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 55

The AbacusThe AbacusOriginally developed by the Originally developed by the Babylonians around 2400 BC, this Babylonians around 2400 BC, this arithmetic calculating tool was also arithmetic calculating tool was also used by ancient Egyptians, Greeks, used by ancient Egyptians, Greeks, Romans, Indians, and Chinese.Romans, Indians, and Chinese.

The AlgorithmThe AlgorithmIn the year 825, the Persian In the year 825, the Persian

mathematician mathematician Muhammad ibn Mūsā al-Muhammad ibn Mūsā al-Khwārizmī developed the concept of performing Khwārizmī developed the concept of performing

a series of steps in order to accomplish a task, a series of steps in order to accomplish a task, such as the systematic application of arithmetic such as the systematic application of arithmetic

to algebrato algebra..

Page 6: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 66

The Analytical The Analytical EngineEngine

Designed by British Designed by British mathematician Charles mathematician Charles Babbage in the mid-19Babbage in the mid-19thth

century, this steam-century, this steam-powered mechanical device powered mechanical device (never successfully built) (never successfully built) had the functionality of had the functionality of

today’s modern computers.today’s modern computers.Binary LogicBinary LogicAlso in the mid-1800’s, Also in the mid-1800’s, British mathematician British mathematician

George Boole developed a George Boole developed a complete algebraic system complete algebraic system that allowed computational that allowed computational

processes to be processes to be mathematically modeled mathematically modeled

with zeros and ones with zeros and ones (representing true/false, (representing true/false,

on/off, etc.).on/off, etc.).

Page 7: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 77

ComputabilityComputabilityIn the early 20In the early 20thth century, American century, American mathematician Alonzo Church and mathematician Alonzo Church and British mathematician Alan Turing British mathematician Alan Turing

independently developed the thesis that independently developed the thesis that a mathematical method is effective if it could be set out a mathematical method is effective if it could be set out as a list of instructions able to be followed by a human as a list of instructions able to be followed by a human clerk (a “computer”) with paper and pencil, for as long clerk (a “computer”) with paper and pencil, for as long

as necessary, and without ingenuity or insightas necessary, and without ingenuity or insight..

Turing MachineTuring MachineIn 1936, Turing developed In 1936, Turing developed a a

mathematical model for an extremely basic mathematical model for an extremely basic abstract symbol-manipulating device which, abstract symbol-manipulating device which,

despite its simplicity, could be adapted to despite its simplicity, could be adapted to simulate the logic of any computer that simulate the logic of any computer that

could possibly be constructedcould possibly be constructed..

Page 8: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 88

Digital Circuit DesignDigital Circuit DesignIn 1937, Claude Shannon, an American In 1937, Claude Shannon, an American electrical engineer, electrical engineer, recognized that Boolean algebra recognized that Boolean algebra could be used to arrange electromechanical relays, which were could be used to arrange electromechanical relays, which were then used in telephone routing switches, to solve logic then used in telephone routing switches, to solve logic problems, the basic concept underlying all electronic digital problems, the basic concept underlying all electronic digital computerscomputers..

CyberneticsCyberneticsDuring World War II, During World War II,

American American mathematician Norbert mathematician Norbert Wiener experimented Wiener experimented

with anti-aircraft with anti-aircraft systems that systems that automatically automatically

interpreted radar interpreted radar images to detect images to detect

enemy planes. This enemy planes. This approach of developing approach of developing

artificial systems by artificial systems by examining real systems examining real systems

became known as became known as cyberneticscybernetics..

Page 9: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 99

TransistorTransistorThe fundamental building block of the circuitry in The fundamental building block of the circuitry in

modern electronic devices was developed in the early modern electronic devices was developed in the early 1950s. 1950s. Because of its fast response and accuracy, the transistor is used Because of its fast response and accuracy, the transistor is used

in a wide variety of digital and analog functions, including switching, in a wide variety of digital and analog functions, including switching, amplification, voltage regulation, and signal modulationamplification, voltage regulation, and signal modulation..

Programming LanguagesProgramming LanguagesIn 1957, IBM released the Fortran programming In 1957, IBM released the Fortran programming language (the IBM Mathematical Formula Translating language (the IBM Mathematical Formula Translating System), designed to facilitate numerical System), designed to facilitate numerical computation and scientific computing.computation and scientific computing.

In 1958, a committee of European and American In 1958, a committee of European and American scientists developed ALGOL, the Algorithmic scientists developed ALGOL, the Algorithmic Language, which pioneered the language design Language, which pioneered the language design features that characterize most modern languages.features that characterize most modern languages.

In 1959, under the supervision of the U.S. In 1959, under the supervision of the U.S. Department of Defense, a consortium of technology Department of Defense, a consortium of technology companies (IBM, RCA, Sylvania, Honeywell, companies (IBM, RCA, Sylvania, Honeywell, Burroughs, and Sperry-Rand) developed COBOL, the Burroughs, and Sperry-Rand) developed COBOL, the Common Business-Oriented Language, to help Common Business-Oriented Language, to help develop business, financial, and administrative develop business, financial, and administrative systems for companies and governments.systems for companies and governments.

Page 10: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 1010

Operating SystemsOperating SystemsIn 1964, IBM’s System 360 mainframe In 1964, IBM’s System 360 mainframe

computers utilized a single operating system computers utilized a single operating system (rather than using separate ad hoc systems for (rather than using separate ad hoc systems for

each machine) to schedule and manage the each machine) to schedule and manage the execution of different jobs on the computer.execution of different jobs on the computer.

MouseMouseIn 1967, Stanford’s In 1967, Stanford’s Douglas Engelbart Douglas Engelbart

employed a wooden employed a wooden case and two metal case and two metal wheels to invent his wheels to invent his

“X-Y Position “X-Y Position Indicator for a Indicator for a

Display System”.Display System”.

Page 11: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 1111

Relational DatabasesRelational DatabasesIn 1969, IBM’s Edgar Codd developed a table-based In 1969, IBM’s Edgar Codd developed a table-based

model for organizing data in large systems so it could model for organizing data in large systems so it could be easily accessed.be easily accessed.

Computational ComplexityComputational ComplexityIn 1971, American computer scientist Stephen Cook In 1971, American computer scientist Stephen Cook pioneered research into pioneered research into NP-completenessNP-completeness, the notion , the notion that some problems may not be solvable on a that some problems may not be solvable on a computer in a “reasonable” amount of time.computer in a “reasonable” amount of time.

SupercomputersSupercomputersIn 1976, Seymour Cray developed the first In 1976, Seymour Cray developed the first

computer to utilize multiple processors in order to computer to utilize multiple processors in order to vastly accelerate the computation of extremely vastly accelerate the computation of extremely

complex scientific calculations.complex scientific calculations.

Personal ComputersPersonal ComputersIn 1976, Steve Jobs and Steve Wozniak In 1976, Steve Jobs and Steve Wozniak formed Apple Computer, Inc., facilitating formed Apple Computer, Inc., facilitating the capability of purchasing a computer for the capability of purchasing a computer for home use.home use.

Page 12: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 1212

InternetInternetIn 1969, DARPA (the Defense Advanced Research Projects In 1969, DARPA (the Defense Advanced Research Projects

Agency) established ARPANET as a computer communication Agency) established ARPANET as a computer communication network that did not require dedicated lines between every pair network that did not require dedicated lines between every pair

of communicating terminals.of communicating terminals.

By 1977, ARPANET had grown from its initial four nodes in By 1977, ARPANET had grown from its initial four nodes in California and Utah to over 100 nodes nationwide.California and Utah to over 100 nodes nationwide.

In 1988, the National Science Foundation established five In 1988, the National Science Foundation established five supercomputer centers and connected them via ARPANET in supercomputer centers and connected them via ARPANET in

order to provide supercomputer access to academic researchers order to provide supercomputer access to academic researchers nationwide.nationwide.

By 1995, private sector entities had begun to find it profitable to By 1995, private sector entities had begun to find it profitable to build and expand the Internet’s infrastructure, so NSFNET was build and expand the Internet’s infrastructure, so NSFNET was

retired and the Internet backbone was officially privatized.retired and the Internet backbone was officially privatized.

Page 13: CS 111.002 Concepts of Computer Science Spring 2008 MWF 2:00-2:50 PM Engineering Building 1033 Chapter 0 Introduction Page 1 Instructor: Bill White Office:

History of Computer ScienceHistory of Computer Science

Chapter 1Chapter 1The Big The Big PicturePicturePage Page 1313

MicrosoftMicrosoftIn 1975, Bill Gates and Paul Allen founded the software company In 1975, Bill Gates and Paul Allen founded the software company

that would ultimately achieve numerous milestones in the that would ultimately achieve numerous milestones in the history of computer science:history of computer science:

•1981: Contracted with IBM to produce DOS (Disk Operating 1981: Contracted with IBM to produce DOS (Disk Operating System) for use in IBM’s new line of personal computers.System) for use in IBM’s new line of personal computers.

•1985: Introduced Microsoft Windows, providing PC users with a 1985: Introduced Microsoft Windows, providing PC users with a graphical user interface, which promoted ease of use in PCs. graphical user interface, which promoted ease of use in PCs. (Resulted in “look-and-feel” lawsuit from Apple.)(Resulted in “look-and-feel” lawsuit from Apple.)

•1989: Released Microsoft Office, a suite of office productivity 1989: Released Microsoft Office, a suite of office productivity applications, including Microsoft Word and Microsoft Excel. applications, including Microsoft Word and Microsoft Excel. (Accused of unfairly exploiting its knowledge of underlying (Accused of unfairly exploiting its knowledge of underlying operating systems by office suite competitors.)operating systems by office suite competitors.)

•1995: Entered Web browser market with Internet Explorer. 1995: Entered Web browser market with Internet Explorer. (Criticized for security flaws and lack of compliance with many (Criticized for security flaws and lack of compliance with many Web standards.)Web standards.)