Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 204111 Computers and Programming อนันต์ ผลเพิ่ม Anan Phonphoem

Similar presentations


Presentation on theme: "1 204111 Computers and Programming อนันต์ ผลเพิ่ม Anan Phonphoem"— Presentation transcript:

1

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

3 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)

4 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

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

6 5 Computer Components

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

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

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

10 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)

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

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

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

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

15 14 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 OS Secondary Storage p1 USER

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

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

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

19 18 Translation Process Translation Phase Link Phase Execute Phase Source Program Translator Object Program Library Linker Execute Program Output CPUInput Data

20 19 Translators Assembler (assembly) Compiler (High-level language)

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

22 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

23 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

24 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

25 24 Pascal Program Structure Program Heading Declarations Main Routine (Program body)

26 25 Pascal Program Structure 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. Program Heading Declarations Program Body

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

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

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

30 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.

31 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

32 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.

33 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

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

35 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.


Download ppt "1 204111 Computers and Programming อนันต์ ผลเพิ่ม Anan Phonphoem"

Similar presentations


Ads by Google