1 / 34

204111 Computers and Programming

204111 Computers and Programming. อนันต์ ผลเพิ่ม Anan Phonphoem http://www.cpe.ku.ac.th/~anan anan@cpe.ku.ac.th. Outline. Intro to computer Computer components How can we load and run program? Programming languages Problem solving and programming Programming strategy Intro to Pascal

odele
Download Presentation

204111 Computers and Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 204111 Computers and Programming อนันต์ ผลเพิ่ม Anan Phonphoem http://www.cpe.ku.ac.th/~anan anan@cpe.ku.ac.th

  2. Outline • Intro to computer • Computer components • How can we load and run program? • Programming languages • Problem solving and programming • Programming strategy • Intro to Pascal • Program structure • Basic elements (reserved words, identifiers)

  3. Categories of Computers • Microcomputer • Personal Computer, Desktop computer • Notebook, Laptop, Palmtop • Use by one person at a time • Minicomputer • Faster speed • Many users at the same time • Mainframe -> Supercomputer • High computation power

  4. Categories of Computers • Workstation • CAD Workstation • Unix Workstation • Server • Client /Server (Networks)

  5. Computer Components

  6. Secondary Memory Main Memory CPU Output Devices Input Devices Computer Components HD

  7. Computer Memory 1. Main Memory 2. Secondary Memory

  8. Memory Cell 000 100 001 -34.9 002 A Memory Address 003 23 ... 999 W 1. Main Memory • Store information

  9. 1. Main Memory • Memory Cell  Byte  Bit • 1 Byte = 8 bits • Can be divided into 2 Categories • RAM (Random Access Memory) • ROM (Read Only Memory)

  10. 2. Secondary Memory (Storage) • Floppy disk • Hard disk • CD-ROM • Tape • Information called “file” (data file, output file, program file) • 1 Kbyte = 210 = 1024 bytes • 1 Mbyte = 220 = 1,048,576 bytes • 1 Gbyte = 230 = 1,073,741,824 bytes

  11. Main VS. Secondary Memory • Main Memory • Much faster • More expensive • Volatile (RAM) • Secondary Memory • Slower • Less expensive • Permanent

  12. Secondary Memory Main Memory CPU Output Devices Input Devices Computer Components HD

  13. Central Processor Unit (CPU) • Retrieve information from memory • Calculate • Put back results to memory • Intel / AMD (Pentium / Athlon)

  14. Secondary Storage USER OS p1 How can we load and run program? • Boot process • Load OS into Memory • Tell user to load and run Program “p1” • User start using program HW

  15. Programming Language • Machine Language • Assembly Language • High-Level Language • CPU can execute only the machine language

  16. How can a non-machine language program be executed? • 2 methods • Interpretation • Translation

  17. The interpretation Process Source Program Interpreter (on computer) Output Input Data

  18. Library Translator Object Program Linker Execute Program Output CPU Input Data Translation Process • Translation Phase • Link Phase • Execute Phase Source Program

  19. Translators • Assembler (assembly) • Compiler (High-level language)

  20. High-Level Languages • Procedural Language • Fortran • Cobol • Basic • C • Pascal • Object-Oriented Language • C++ • Functional Language • Lisp • Logic Language • Prolog

  21. Problem Solving and Programming • Solve Problems • Combine art and science • Art • Transform a description (word to equation) • Difficult (problem is not clear, input, output) • Science • Knowledge of problems • Equation and formula

  22. Programming Strategy • Don’t rush to key in the computer • Think carefully about the problem • Try to solve by hand • Plan your program • Test by hand if possible • Start programming • Program Compilation • Testing / Debug • Documentation • Maintenance

  23. Introduction to Pascal • Procedural programming language • Developed by Prof.Niklaus Wirth (Switzerland, 1970s) • Named in honor to mathematician, Blaise Pascal • Most popular -> Turbo Pascal

  24. Pascal Program Structure • Program Heading • Declarations • Main Routine (Program body)

  25. Pascal Program Structure Program Heading program myFirstProgram; const myStudentId = 1234567; var courseTaken: integer; begin write(‘Please Enter a number of courses’); read(‘courseTaken’); writeln(‘Student’, myStudentId, ‘ takes ’, courseTaken, ‘ courses in this semester’); end. Declarations Program Body

  26. Basic Elements of Pascal • Character set • Reserved words • Identifiers • Constants / Variables • Statement / Expression • Function / Procedure

  27. Character Set • Three categories • Letter (A…Z, a…z) • Digit (0…9) • Special character (+ - * / _ = ! <> []{})

  28. Reserved Words (คำสงวน) • Predefined meaning and usage • Cannot be redefined by the programmer • Examples • program • begin / end • const / var • etc.

  29. Reserved Words (คำสงวน) program myFirstProgram; const myStudentId = 1234567; var courseTaken: integer; begin write(‘Please Enter a number of courses’); read(‘courseTaken’); writeln(‘Student’, myStudentId, ‘ takes ’, courseTaken, ‘ courses in this semester’); end.

  30. Identifiers(คำบ่งชี้) • Symbolic names for program elements • Program name • Variable name • Data Type name • Etc. • Rules for constructing identifiers • Letters, digits, and under score (_) • First character letter • Can be long (63 char) • Reserved words are not allowed

  31. Identifiers (คำบ่งชี้) program myFirstProgram; const myStudentId = 1234567; var courseTaken: integer; begin write(‘Please Enter a number of courses’); read(‘courseTaken’); writeln(‘Student’, myStudentId, ‘ takes ’, courseTaken, ‘ courses in this semester’); end.

  32. Identifier examples • Valid examples • score, count, total • score1, count99, total09 • score_1, count_99, total_99 • myStudentId • my_student_id • Invalid examples • point&score • total-number • 9points

  33. Notes for Identifiers • Identifiers are case-insensitive • mystudentId • Mystudentid • MYSTUDENTID • Some identifiers are predefined meanings (Standard Identifiers) • interger, real • write, writeln, read, readln

  34. Standard Identifiers program myFirstProgram; const myStudentId = 1234567; var courseTaken: integer; begin write(‘Please Enter a number of courses’); read(‘courseTaken’); writeln(‘Student’, myStudentId, ‘ takes ’, courseTaken, ‘ courses in this semester’); end.

More Related