CS135602 Introduction to Information Engineering

22
CS135602 Introduction to Information Engineering Instructor: Shun-Ren Yang Office: A608 Email: [email protected] Office Hour: Tuesday morning 10:00- 12:00 Course slides are adapted from slides provided by Addison-Wesley Computin

description

CS135602 Introduction to Information Engineering. Instructor: Shun-Ren Yang Office: A608 Email: [email protected] Office Hour: Tuesday morning 10:00-12:00. Course slides are adapted from slides provided by Addison-Wesley Computing. People. Instructor: Shun-Ren Yang Office: A608 - PowerPoint PPT Presentation

Transcript of CS135602 Introduction to Information Engineering

Page 1: CS135602 Introduction to Information Engineering

CS135602 Introduction to Information Engineering

Instructor: Shun-Ren YangOffice: A608Email: [email protected] Hour: Tuesday morning 10:00-12:00

Course slides are adapted from slides provided by Addison-Wesley Computing

Page 2: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 2

People

Instructor: Shun-Ren Yang Office: A608 Tel: ext. 31212 Email: [email protected] Office hours:

Tuesday morning 10:00-12:00 Appointment via Email

TAs: 陳怡貝 Email: [email protected] 張正廷 Email: [email protected] 張晛承 Email: [email protected] 陳俞文 Email: [email protected] 王昱傑 Email: [email protected]

Office: 台達館 705R Phone: ext. 80919 Office Hours: to be determined

Page 3: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 3

Course Objectives

This course introduces the fundamentals of computer science. The covered topics are:

Data Storage Data Manipulation (program execution, communicating with other

devices, etc.) Operating Systems (Microsoft OS, UNIX-like OS) Networking and the Internet Algorithms Programming Languages (not to learn a particular language) Software Engineering Data Abstractions (data structures, object-oriented programming) Database Systems Computer Graphics Artificial Intelligence Theory of Computation

Provide a broad picture of the different aspects of computer science in the real world

Page 4: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 4

General Information Lectures:

Monday 10:10AM-12:00AM, Wednesday 9:00AM-9:50AM The course web page is located

http://wmnet.cs.nthu.edu.tw/Course/IIE_2012/ The course discussion group: to be announced Exams

Quiz Three closed-book exams, 1st: 10/22, 2nd: 12/3, 3rd: 1/14

Grading Homework : 0% - 作業會勾選但不用交 ; Quiz: 20% - 每週一小考 , 每次約考 10分鐘 ; First Exam: 20% ; Second Exam: 20%; Final Exam: 20%; Final Report: 10% Participation: 10% 期末不會調分

Page 5: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 5

Reading Materials

Text Book: J.Glenn Brookshear "Computer Science - AN OVERVIEW" ,

ELEVENTH edition, Addison-Wesley

Additional Reading: Check class website regularly

Handouts: Will be available at least one day before the class

Page 6: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 6

Course Academic Integrity Policy

You are not allowed: Copying all or part of someone else's work Giving another student in the class a copy of your work Consulting with others during an exam

Students who violate this policy In the quizzes: no credit In the exams: final score will be ZERO

Page 7: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 7

Computer History

Page 8: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 8

Origins of Computing Machines

Early computing devices Abacus: positions of beads represent numbers

Gear-based machines (1600s-1800s) Positions of gears represent numbers Blaise Pascal, Wilhelm Leibniz, Charles Babbage

http://www.computersciencelab.com/ComputerHistory/History.htm

Page 9: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 9

Origins of Computing Machines (Contd.)

Early data storage: punched cards First used in Jacquard Loom (1801) to store patterns for

weaving cloth Stored programs in Babbage’s Analytical Engine Popular through the 1970’s

Page 10: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 10

Early Computers

Based on mechanical relays 1940: Stibitz at Bell Laboratories 1944: Mark I: Howard Aiken and IBM at Harvard

mechanical relay memory

Harvard Mark I

Page 11: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 11

Early Computers (Contd.)

Based on vacuum tubes 1937-1941: Atanasoff-Berry at Iowa State College 1940s: Colossus: secret German code-breaker 1940s: ENIAC: Mauchly & Eckert at U. of Penn.

The Atanasoff-Berry Computer

Colossus

ENIAC: Electronic Numerical Integrator and Calculator

Page 12: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 12

Personal Computers

First used by hobbyists 1981: IBM introduces the PC

Accepted by business Became the standard hardware design for most desktop computers Most PCs use software from Microsoft

Page 13: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 13

Introduction to Computer Science

Page 14: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 14

What is Computer Science

Draws from other subjects, including Mathematics Engineering Psychology Business Administration linguistics

The science of algorithms

Page 15: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 15

Algorithms

Algorithm: a set of steps defining how a task is performed You can consider it as a recipe

Eg.:1 1/3-cups chocolate cookie crumbs 1/3-cup butter, melted 1-cup milk 1-egg 1/4-cup granulated sugar 2-tbsp cornstarch 3-tbsp orange juice 5-squares white chocolate or 5 oz (150 g)1-pkg (8 oz/250 g) cream cheese, diced1-tsp grated orange peel 3/4-cup chopped fresh or frozen strawberries(drain if frozen)

Page 16: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 16

Algorithms (Contd.)Line a pie plate with plastic wrapLightly oil the plastic wrap to prevent stickingIn a small bowl, mix crumbs with melted butterPress crumb mixture into the pie plate and up the sides to form a crustIn a small saucepan, whisk together milk, egg and sugarIn a small bowl, blend together cornstarch and orange juiceStir into Milk mixtureUntil a thick custard forms

Cook, stirring, over medium-high heatRemove from heatBreak white chocolate into chunks and add to milk mixtureUntil melted and smooth

stirringTransfer to a mixing bowl, until completely smooth

beat in cream cheese,Stir in orange peel and strawberries and spoon into prepared crustIf (frozen time < 1 1/2 hours) AND (the tart is firm)

Put tar in the frozen sectionTo serve, lift frozen tart from pie plate, remove plastic wraplet stand at room temperature for 20 minutesIf desired

Serve with additional fresh berries

Page 17: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 17

Algorithms: Definitions

Algorithm = a set of steps that defines how a task is performed

Program = a representation of an algorithm Programming = the process of developing a

program Software = programs + algorithms Hardware = machinery: whatever isn’t software

Page 18: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 18

History of Algorithms

The study of algorithms was originally a subject in mathematics.

Algorithms were studied before computers existed.

Early examples of algorithms Long division algorithm Euclidean Algorithm

Gödel's Incompleteness Theorem: some problems cannot be solved by algorithms

Completeness - Can a system solve all problems that can be posed of it, or, in particular, can it be used to reason about all properties of its own members?

Page 19: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 19

Central Questions of Computer Science

Which problems can be solved by algorithmic processes?

How can discovery of algorithms be made easier?

How can techniques of representing and communicating algorithms be improved?

How can our knowledge of algorithms and technology be applied to provide better machines?

How can characteristics of different algorithms be analyzed and compared?

Page 20: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 20

The central role of algorithms in computer science

Page 21: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 21

Use Of Abstraction

Computer scientists can use algorithms implemented by others without understanding their details

Abstraction = the distinction between the external properties of an entity and the details of the entity’s internal composition.

Abstract tool = a component of a larger system whose internal composition we ignore

Abstraction allows us to use things we don’t fully understand

Page 22: CS135602 Introduction to Information Engineering

Shun-Ren Yang, Introduction to Information Engineering 22

Outline of our study

Design and construction of computing machines Data storage (C1) Data manipulation (C2)

Operating systems (C3) Algorithms (C5) Programming languages (C6) Data abstractions (C8) Networks and the internet (C4) Software engineering (C7) Database systems (C9) Computer Graphics (C10) Artificial intelligence (C11) Theory of computation (C12)