Title: hosseini@um.ac.ir E.mail:
1??????? ?????? ???? ?????? ???? ???????
- ????? ?????
- ???? ??? ???? ?????
- hosseini_at_um.ac.ir E.mail
- Home page http//hosseini.staffcms.um.ac.ir
2Programming Languages
- A program is a set of step-by-step instructions
that directs the computer to do the tasks you
want it to do and produce the results you want. - A programming language is a set of rules that
provides a way of telling a computer what
operations to perform.
3What Can a Program Do?
- A program can only instruct a computer to
- Read Input
- Sequence
- Calculate
- Store data
- Compare and branch
- Iterate or Loop
- Write Output
4Sequence Control Structures
- Sequence control structures direct the order of
program instructions. - The fact that one instruction follows anotherin
sequenceestablishes the control and order of
operations.
5Calculate
- A program can instruct a computer to perform
mathematical operations.
Add 1 to Counter
6Store
- A program will often instruct a computer to store
intermediate results.
Place 1 in Counter
7Compare and Branch
- A program can instruct a computer to compare two
items and do something based on a match or
mismatch which, in turn, redirect the sequence of
programming instructions. - There are two forms
- IF-THEN
- IF-THEN-ELSE
8IF-THEN
Test condition p
9IF-THEN-ELSE
10Iterate
- A program loop is a form of iteration. A computer
can be instructed to repeat instructions under
certain conditions.
No
11Iteration Control Structures
- Iteration control structures are looping
mechanisms. - Loops repeat an activity until stopped. The
location of the stopping mechanism determines how
the loop will work - Leading decisions
- Trailing decisions
12Leading Decisions
- If the stop is at the beginning of the iteration,
then the control is called a leading decision. - The command DO WHILE performs the iteration and
places the stop at the beginning.
13DO WHILE Loop
14Trailing Decisions
- If the stop is at the end of the iteration, the
control mechanism is called a trailing decision. - The command DO UNTIL performs the iteration and
puts the stop at the end of the loop.
15DO UNTIL Loop
Loop statement a
16Programs are Solutionsto Problems
- Programmers arrive at these solutions by using
one or more of these devices - Logic flowcharts
- Structure charts
- Pseudocode
- Structured Programming
17Logic Flowcharts
- These represent the flow of logic in a program
and help programmers see program design.
18Common Flowchart Symbols
19Flowchart for aCash Register Program
20Structure Charts
- Structure charts illustrate the structure of a
program by showing independent hierarchical
steps. - Major divisions are subdivided into smaller
pieces of information.
21Psuedocode
- This device is not visual but is considered a
first draft of the actual program. - Pseudocode is written in the programmers native
language and concentrates on the logic in a
programnot the syntax of a programming language.
22Pseudocode for aCash Register Program
sum0 While More items do Input price
sumsumprice End While taxsum x
0.0725 totalsumtax Output sum, tax, total
23Structured Programming
- Structured program languages lend themselves to
flowcharts, structure charts, and pseudocode. - Structured programming languages work best where
the instructions have been broken up into small,
manageable parts.
24The Program Development Cycle
Analyze the problem
Design the solution algorithm
Design the user interface
Write the code
Test and debug the program
Complete the documentation
25Levels of Programming Languages
- Machine language
- Assembly Language
- High Level Languages
- Fourth Generation Languages (4GL)
26Machine Languages
- different for each computer processor
- 0100
- 001101 100000 001101 110001
- 00101 10001 10000
- 01110
- 111001
- . . .
27Assembly Languages
- different for each computer processor
- main proc pay
- mov ax, dseg
- mov ax, 0b00h
- add ax, dx
- mov a1, b1
- mul b1, ax
- mov b1, 04h
28High-Level Languages
- Higher Level Languages
- Use traditional programming logic where the
programming instructions tell the computer what
to do and how to perform the required operations. - 4GLs
- Use high-level English-like instructions to
specify what to do, not how to do it .
29PL hierarchy
30Interpreter vs Compiler
- Interpreter
- Translates instructions to machine code
line-by-line. - Compiler
- Translates the entire program to machine code
before running it.
31Interpreter Process
32Compiler Process
33Types of Programming Languages
- Machine language
- Procedure-oriented languages
- Object-oriented languages
- Event-driven languages
34Procedure-Oriented Languages
- FORTRAN
- COBOL
- Pascal
- C
- Ada
35OOED Languages
- Object-oriented languages
- Smalltalk
- C
- Java
- Event-driven languages
- Visual Basic
- most Visual languages