cs135602 introduction to information engineering instructor: shun-ren yang office: a608 email:...
TRANSCRIPT
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
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
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
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% 期末不會調分
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
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
Shun-Ren Yang, Introduction to Information Engineering 7
Computer History
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
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
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
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
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
Shun-Ren Yang, Introduction to Information Engineering 13
Introduction to Computer Science
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
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)
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
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
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?
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?
Shun-Ren Yang, Introduction to Information Engineering 20
The central role of algorithms in computer science
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
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)