chap1 Computer Programming Fall 2006 李秀惠
chap1 2 About this Course Instructor 李秀惠 TAs 呂詩禹 Office: 德田館428, 每週三 AM10:00~PM1:00 林于聖 Office: 德田館428, 每週一 PM1:00~4:00 Time & Places 課堂課: 每週三5, 6 資102 實習課: 每週四5, 6 計資中心312 Textbook “Problem Solving and Program Design in C” Jeri R. Hanly & Elliot B. Koffman, 4th Edition (2004). Addison Wesley. ISBN Requirements Labs / Mid-term exam / Final exam Website
chap1 3 Course Outline Introduction Overview of C Top-Down Design with Functions Selection Structures Loop Statements Simple Data Types Arrays Strings Recursion Structure and Union Types Dynamic Data Structures On to C++
chap1 Chapter 1 Overview of Computers and Programming
chap1 5 Objectives Overview of the development of computers. Computer system components Software categories and languages Software development steps Process of writing, compiling, and executing high-level language programs. An example
chap1 6 Computers IBM ThinkPad ® Sony Clié PDA ® IBM NetVista Desktop
chap1 7 Computer Components Memory: main secondary CPU Input devices Output devices
chap1 8 Central Processing Unit (CPU) Coordinating all computer operations Performing arithmetic and logical operations in data The processor above can execute a simple instruction such as an integer addition in one six-billionth of a second.
chap1 9 Memory Memory cells Address Contents Main Memory Random access memory Read-only access memory Secondary Memory CD, DVD, etc.
chap1 10 Computer Networks (1) Local area network (LAN)
chap1 11 Computer Networks (2) Wide Area Network (WAN)
chap1 12 Computer Software: Operation System (OS) Command-Line Interface UNIX MS-DOS VMS Graphical User Interface Macintosh OS Windows OS/2 Warp UNIX + X Window System
chap1 13 Computer Languages Machine Language Collection of binary numbers Not standardized Assembly Language Represented by Mnemonic codes Not standardized High-Level Language Independent of the CPU
chap1 14 High-Level Languages (1) LanguageApplications AreasOrigin of Name FORTRAN Scientific programmingFormula Translation COBOL Business data processingCommon Business-Oriented Language LISP Artificial IntelligenceList processing C Systems programmingAfter B Prolog Artificial IntelligenceLogic programming Ada Real-time distributed systemsAda Augusta Byron Smalltalk GUI, object-oriented programmingObjects “talk” to one another. C++ Supports objects and object-oriented programming Incremental modification of C Java Support Web programmingOriginally named “Oak”
chap1 15 High-Level Languages (2)
chap1 16 High-Level Language Program
chap1 17 Flow of Information During Program Execution
chap1 18 Software Development Method 1. Specify the problem requirements 2. Analyze the problem 3. Design the algorithm to solve the problem 4. Implement the algorithm 5. Test and verify the completed program 6. Maintain and update the program
chap1 19 Integrated Development Environment (IDE)