Sie sind auf Seite 1von 6

Outline

204111
Computers and Programming

Anan Phonphoem
anan@cpe.ku.ac.th

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)

Categories of Computers

Personal Computer, Desktop computer


Notebook, Laptop, Palmtop
Use by one person at a time

Workstation

Minicomputer

Categories of Computers

Microcomputer

Faster speed
Many users at the same time

CAD Workstation
Unix Workstation

Server

Client /Server (Networks)

Mainframe -> Supercomputer

High computation power


3

Computer Components

Computer Components
Secondary
Memory

Main
Memory

HD
CPU
5

Input Devices

Output Devices
6

Computer Memory

1. Main Memory

1. Main Memory
2. Secondary Memory

Store information

Memory
Address

000
001
002
003
...

100
-34.9
A
23

999

Memory Cell

1. Main Memory

2. Secondary Memory (Storage)

Memory Cell Byte Bit


1 Byte = 8 bits
Can be divided into 2 Categories

RAM (Random Access Memory)


ROM (Read Only Memory)

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

Main VS. Secondary Memory

Computer Components
Secondary
Memory

Main Memory

10

Much faster
More expensive
Volatile (RAM)

Main
Memory

Secondary Memory

HD

Slower
Less expensive
Permanent

CPU
11

Input Devices

Output Devices
12

Central Processor Unit (CPU)

How can we load and run program?

Retrieve information from memory


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

Boot process

Load OS into Memory

Tell user to load and run Program p1


User start using program

Secondary
Storage

HW
OS p1
13

14

How can a non-machine


language program be executed?

Programming Language

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

2 methods

Interpretation
Translation

15

16

The interpretation Process

Translation Process

Source Program
Interpreter
(on computer)

USER

Output

Input Data

Translation Phase
Link Phase
Execute Phase

Source
Program

Translator

Output
17

Library

Object
Program

CPU

Linker

Execute
Program

Input Data
18

Translators

High-Level Languages

Assembler (assembly)
Compiler (High-level language)

Procedural Language

Fortran
Cobol
Basic
C
Pascal

Object-Oriented Language

Functional Language

Lisp
Logic Language
Prolog

C++

19

Problem Solving and


Programming

Programming Strategy

Solve Problems
Combine art and science
Art

Transform a description (word to equation)


Difficult (problem is not clear, input, output)

Science

20

Knowledge of problems
Equation and formula

21

Introduction to Pascal

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

Pascal Program Structure

Procedural programming language


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

23

Program Heading
Declarations
Main Routine (Program body)

24

Pascal Program Structure

Basic Elements of Pascal

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.

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

25

Reserved Words ()

Character Set

Three categories

26

Letter (AZ, az)


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

Predefined meaning and usage


Cannot be redefined by the
programmer
Examples

program
begin / end
const / var
etc.

27

Reserved Words ()

28

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.

Symbolic names for program elements

Rules for constructing identifiers

29

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

Identifiers ()

Identifier examples

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.

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

31

Notes for Identifiers

Standard Identifiers

Identifiers are case-insensitive

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.

mystudentId
Mystudentid
MYSTUDENTID

Some identifiers are predefined


meanings (Standard Identifiers)

32

interger, real
write, writeln, read, readln
33

34

Das könnte Ihnen auch gefallen