Sunteți pe pagina 1din 34

204111 Computers and Programming

Anan Phonphoem http://www.cpe.ku.ac.th/~anan anan@cpe.ku.ac.th


1

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)


2

Categories of Computers

Microcomputer

Personal Computer, Desktop computer Notebook, Laptop, Palmtop Use by one person at a time Faster speed Many users at the same time High computation power
3

Minicomputer

Mainframe -> Supercomputer

Categories of Computers

Workstation

CAD Workstation Unix Workstation Client /Server (Networks)

Server

Computer Components

Computer Components
Secondary Memory

Main Memory

HD CPU Input Devices

Output Devices
6

Computer Memory
1. Main Memory 2. Secondary Memory

1. Main Memory

Store information
Memory Cell 000 001 002 003 ... 999 100 -34.9 A 23

Memory Address

W
8

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)

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
10

Main VS. Secondary Memory

Main Memory

Much faster More expensive Volatile (RAM) Slower Less expensive Permanent
11

Secondary Memory

Computer Components
Secondary Memory

Main Memory

HD CPU Input Devices

Output Devices
12

Central Processor Unit (CPU)


Retrieve information from memory Calculate Put back results to memory Intel / AMD (Pentium / Athlon)

13

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

Secondary Storage

HW OS p1 USER
14

Programming Language

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

15

How can a non-machine language program be executed?

2 methods

Interpretation Translation

16

The interpretation Process


Source Program Interpreter (on computer) Input Data

Output

17

Translation Process

Translation Phase Link Phase Execute Phase


Translator
Object Program

Library Linker
Execute Program

Source Program

Output

CPU

Input Data
18

Translators

Assembler (assembly) Compiler (High-level language)

19

High-Level Languages

Procedural Language

Fortran Cobol Basic C Pascal


C++

Object-Oriented Language

Functional Language
Lisp Logic Language Prolog

20

Problem Solving and Programming


Solve Problems Combine art and science Art


Transform a description (word to equation) Difficult (problem is not clear, input, output) Knowledge of problems Equation and formula
21

Science

Programming Strategy

Dont 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

22

Introduction to Pascal

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

23

Pascal Program Structure


Program Heading Declarations Main Routine (Program body)

24

Pascal Program Structure


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

Basic Elements of Pascal


Character set Reserved words Identifiers Constants / Variables Statement / Expression Function / Procedure

26

Character Set

Three categories

Letter (AZ, az) Digit (09) Special character (+ - * / _ = ! <> []{})

27

Reserved Words ()

Predefined meaning and usage Cannot be redefined by the programmer Examples


program begin / end const / var etc.


28

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

Identifiers ()

Symbolic names for program elements


Program name Variable name Data Type name Etc. Letters, digits, and under score (_) First character letter Can be long (63 char) Reserved words are not allowed
30

Rules for constructing identifiers


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

Identifier examples

Valid examples

score, count, total score1, count99, total09 score_1, count_99, total_99 myStudentId my_student_id point&score total-number 9points
32

Invalid examples

Notes for Identifiers

Identifiers are case-insensitive


mystudentId Mystudentid MYSTUDENTID

Some identifiers are predefined meanings (Standard Identifiers)


interger, real write, writeln, read, readln


33

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

S-ar putea să vă placă și