Presentation is loading. Please wait.

Presentation is loading. Please wait.

0. Problem solving in IT (COMP1001)

Similar presentations


Presentation on theme: "0. Problem solving in IT (COMP1001)"— Presentation transcript:

1 0. Problem solving in IT (COMP1001)
Rocky K. C. Chang September 4, 2017

2 The teaching team Lecturer: Dr. Rocky K. C. Chang (PQ829, Office hour: By appointment Tutor: Dr. Dennis Liu (PQ730, Classes: Group 1: 14:30-16:20 on Mon and 14:30-16:20 on Wed Group 2: 09:30-11:20 on Wed and 09:30-11:20 on Fri Couse website: Slides Assignments Latest timetable

3 Question Which of the following is NOT the name of a programming language? B Prolog PLC Modula-3 Smalltalk

4 Question Google has two datacenters in Asia. Where are they? Shanghai
Hong Kong Changhua County, Taiwan Singapore Seoul, Korea Tokyo, Japan Guam

5 Question Out of the ten richest men in the world, according to Forbes’ report in July, how many of them work in the IT and software field?

6 Questions Who owns Whatsapp? Who owns Instagram? IBM HP Microsoft
Amazon Facebook Who owns Instagram?

7 Question According to the most recent survey, what is the average salary for a graduate to be an application developer? US$35,000 per year US$45,000 per year US$55,000 per year US$65,000 per year US$75,000 per year US$85,000 per year

8 Question? Any big news about computing very recently? Built by NUDT
16,000 nodes 3,120,000 cores 54,902.4 TFlop/s 17,808 kW 1,024,000 GB Mainly Intel Xeon E5-2692v2 12C 2.2GHz processors.

9

10

11

12

13

14

15 Computer System: Layers of Abstraction
Application Program Language Instruction Set Architecture (and I/O Interfaces) Microarchitecture Circuits Devices Algorithms Software Hardware

16 Big Idea #1: Universal Computing Device
All computers, given enough time and memory, are capable of computing exactly the same things. = = PDA Workstation Supercomputer

17 From Theory to Practice
In theory, computer can compute anything that’s possible to compute given enough memory and time In practice, solving problems involves computing under constraints. time weather forecast, next frame of animation, ... cost cell phone, automotive engine controller, ... power cell phone, handheld video game, ...

18 Big Idea #2: Transformations Between Layers
How do we solve a problem using a computer? A systematic sequence of transformations between layers of abstraction. Problem Software Design: choose algorithms and data structures Algorithm Programming: use language to express design Program Compiling/Interpreting: convert language to machine instructions Instr Set Architecture

19 Deeper and Deeper… Processor Design:
Instr Set Architecture Processor Design: choose structures to implement ISA Microarch Logic/Circuit Design: gates and low-level circuits to implement components Circuits Process Engineering & Fabrication: develop and manufacture lowest-level components Devices

20 Descriptions of Each Level
Problem Statement stated using "natural language" may be ambiguous, imprecise Algorithm step-by-step procedure, guaranteed to finish definiteness, effective computability, finiteness Program express the algorithm using a computer language high-level language, low-level language Instruction Set Architecture (ISA) specifies the set of instructions the computer can perform data types, addressing mode

21 Descriptions of Each Level (cont.)
Microarchitecture detailed organization of a processor implementation different implementations of a single ISA Logic Circuits combine basic operations to realize microarchitecture many different ways to implement a single function (e.g., addition) Devices properties of materials, manufacturability

22 Many Choices at Each Level
Solve a system of equations Gaussian elimination Jacobi iteration Red-black SOR Multigrid FORTRAN C C++ Java Intel x86 Sun SPARC Compaq Alpha Pentium II Pentium III AMD Athlon Ripple-carry adder Carry-lookahead adder CMOS Bipolar GaAs Tradeoffs: cost performance power (etc.) Sun and Java are trademarks of Sun Microsystems, Inc. SPARC is a trademark of SPARC International, Inc. Intel and Pentium are trademarks of Intel Corporation. Compaq and Alpha are trademarks or service marks of Compaq Computer Corporation. AMD and Athlon and trademarks of Advanced Micro Devices, Inc.

23 Three components Computer system (~5%) Computer algorithms (~20%)
CPU, memory, registers, instruction sets Computer algorithms (~20%) Divide and conquer, backtracking, brute force, … Computer programming (~75%) Python is now the top programming language, according to IEEE Spectrum's recently released fourth interactive ranking of the leading languages. Python was ranked third last year, but this year passed C and Java to claim the top stop. (July 18, 2017)

24 Pre-requisite and teaching approach
Assumed no computing background Teaching approach: practice, practice, and practice Understand the problem. Design computer solutions. Implement the solutions as computer programs. Make sure they are correct and efficient. Teaching approach: lecture-lab integration

25 No textbook required John Zelle Python Programming: An Introduction to Computer Science 2nd Edition. Franklin, Beedle & Associates Inc., Wilsonville, OR, USA. Allen B. Downey Think Python: How to Think Like a Computer Scientist. Green Tea Press. Charles Dierbach Introduction to Computer Science Using Python. Wiley.

26 What after COMP1001? COMP1011: Programming fundamentals (C programming) COMP2011: Data structures (and algorithms) COMP2021: Object-oriented programming COMP2421: Computer organization COMP2423: Operating Systems COMP2322: Computer Networking COMP3438: System Programming COMP4433: Embedded System

27 How will you be assessed?
Assignments: 15% Two-three tests: 20% Project: 20% Exam: 45%

28 My expectations and policies
Attend all lectures on time. Read the covered materials on your own. Complete your assignments and project yourself and on time. Policy regarding late submission of works 10% off for every hour late Policy regarding plagiarism You will betray your own integrity, whether it will be found out or not! Both giver and receiver subject to the same penalty below All the students involved not only will receive 0 marks for this assessment, they will also lose additional, same number of marks from their total assessment marks. Moreover, we may report the serious cases to the Departmental Learning and Teaching Committee for further disciplinary actions.

29 That’s about it for the introduction.
Let’s enjoy the course together.

30 What you need to do this week is
Installing Python 3.5 or above from and playing with it. Bring your notebook, if you have one, starting from the next time.

31 Acknowledgements Slides are from those prepared for Y. Patt and S. Patel, Introduction to Computing Systems, Second Edition, McGraw Hill 2004.

32 End "All hard work brings a profit, but mere talk leads only to poverty." Proverbs 14:23


Download ppt "0. Problem solving in IT (COMP1001)"

Similar presentations


Ads by Google