PROG0101_CH02
PROG0101_CH02
INTRODUCTION TO PROGRAMMING
Chapter 2
Programming Languages
1
Introduction to Programming
Programming Languages
Topics
• Definition of Program, Computer
Programming, and
Computer Programmer.
• Generations of Programming Language
• Types of Programming Language
2
Introduction to Programming
Programming Languages
Computer Program
• A program is a set of instructions following
the rules
of the chosen language.
• Without programs, computers are useless.
• A program is like a recipe.
• It contains a list of ingredients (called
variables) and a list of directions (called
statements) that tell the computer what to
do with the variables.
3
Introduction to Programming
Programming Languages
Programming Language
• A vocabulary and set of grammatical rules
(syntax)
for instructing a computer to perform specific
tasks.
• Programming languages can be used to
create computer programs.
• The term programming language usually
refers to high-level languages, such as
BASIC, C, C++, COBOL, FORTRAN, Ada,
and Pascal.
4
Introduction to Programming
Programming Languages
Programming Language
• You eventually need to convert your program
into machine language so that the computer
can understand it.
• There are two ways to do this:
– Compile the program
– Interpret the program
5
Introduction to Programming
Programming Languages
Programming Language
• Compile is to transform a program written in a
high- level programming language from
source code into object code.
• This can be done by using a tool called
compiler.
• A compiler reads the whole source code and
translates it into a complete machine code
program to perform the required tasks
which is output as a new file.
6
Introduction to Programming
Programming Languages
Programming Language
• Interpreter is a program that executes
instructions
written in a high-level language.
• An interpreter reads the source code one
instruction or line at a time, converts this line
into machine code and executes it.
7
Introduction to Programming
Programming Languages
Computer Programming
• Computer programming is the process of
writing, testing, debugging/troubleshooting,
and maintaining the source code of computer
programs.
• This source code is written in a
programming
language like C++, JAVA, Perl etc.
8
Introduction to Programming
Programming Languages
Computer Programmer
• A programmer is someone who writes
computer
program.
• Computer programmers write, test, and
maintain programs or software that tell the
computer what to do.
9
Introduction to Programming
Programming Languages
Programming Languages
Programming Languages
Programming Languages
13
Introduction to Programming
Programming Languages
14
Introduction to Programming
Programming Languages
Generations of Programming Language
• The fourth generation or 4GL,
languages, statemen are
languages that
statements in aconsist
humanofts language.
similar to
Fourth
generation languages are commonly used in
database programming and scripts.
• The fifth generation languages, or 5GL, are
programming languages that contain visual
tools to help develop a program. A good
example of a fifth generation language is
Visual Basic.
15
Introduction to Programming
Programming Languages
16
Introduction to Programming
Programming Languages
Machine Language
• Machine language is a collection of binary
digits or
bits that the computer reads and interprets.
• Machine languages are the only languages
understood by computers.
• While easily understood by computers,
machine languages are almost impossible for
humans to use because they consist entirely
of numbers.
17
Introduction to Programming
Programming Languages
Machine Language
Machine Language
169 1 160 0 153 0 128 153 0 129 153 130
153 0 131
200 208 241 96
18
Introduction to Programming
Programming Languages
Machine Language
Example:
• Let us say that an electric toothbrush has a
processor and main memory.
• The processor can rotate the
bristles left and right,
and can check the on/off switch.
• The machine instructions are one byte
long, and correspond to the following
machine operations:
19
Introduction to Programming
Programming Languages
Machine Language
Machine Instruction Machine Operation
0000 0000 Stop
0000 0001 Rotate bristles left
0000 0010 Rotate bristles right
0000 0100 Go back to start of program
0000 1000 Skip next instruction if switch is
off
20
Introduction to Programming
Programming Languages
Assembly Language
• A program written in assembly language
consists of a series of instructions mnemonics
that correspond to a stream of executable
instructions, when translated by an
assembler, that can be loaded into memory
and executed.
• Assembly languages use keywords and
symbols, much like English, to form a
programming language but at the same
time introduce a new problem.
21
Introduction to Programming
Programming Languages
Assembly Language
• The problem is that the computer doesn't
understand the assembly code, so we need a
way to convert it to machine code, which the
computer does understand.
• Assembly language programs are
translated into machine language by a
program called an assembler.
22
Introduction to Programming
Programming Languages
Assembly Language
• Example:
– Machine language :
10110000 01100001
– Assembly language :
mov a1, #061h
– Meaning:
Move the hexadecimal value 61 (97
decimal) into the processor register
named "a1".
23
Introduction to Programming
Programming Languages
Programming Languages
High-Level Language
• Examples of High-level
Language:
• ADA
• C
• C++
• JAVA
• BASIC
• COBOL
• PASCAL
• PHYTON
25
Introduction to Programming
Programming Languages
Comparisson
Machine Language Assembly Language High-level Languages
Time to execute Since it is the A program called A program called a
basic language of an ‘assembler’ is compiler or
the computer, it required to convert interpreter is
does not the program required to convert
require any into machine the program into
translation, and language. Thus, it machine language.
hence ensures takes longer to Thus, it takes
better machine execute than a more time for a
efficiency. This machine language computer to
means the program. execute.
programs run
faster.
Time to develop Needs a lot of skill, Simpler to use Easiest to use. Takes
as instructions are than machine less time to
very lengthy and language, develop programs
complex. Thus, it though and, hence,
takes more time instruction ensures better
to program. codes must be program efficiency.
memorized. It
takes
less time to develop 26
Introduction to Programming
Programming Languages
BASIC
• Short for Beginner's All-purpose Symbolic
Instruction Code.
• Developed in the 1950s for teaching
University students to program and
provided with every self- respecting
personal computer in the 1980s,
• BASIC has been the first programming
language for many programmers.
• It is also the foundation for Visual Basic.
27
1 Introduction to Programming
Programming Languages
BASIC
Exampl
e:
PRINT "Hello world!"
28
Introduction to Programming
Programming Languages
Visual Basic
• A programming language and environment
developed by Microsoft.
• Based on the BASIC language, Visual Basic
was one of the first products to provide a
graphical programming environment and a
paint metaphor for developing user
interfaces.
29
Introduction to Programming
Programming Languages
Visual Basic
Example:
30
Introduction to Programming
Programming Languages
C
• Developed by Dennis Ritchie at Bell Labs in
the mid
1970s.
• C is much closer to assembly language
than are most other high-level languages.
• The first major program written in C was
the UNIX operating system.
• The low-level nature of C, however, can
make the language difficult to use for
some types of applications.
31
Introduction to Programming
Programming Languages
C
Exampl
e:
#include <stdio.h>
int main(void)
{
printf("hello, world\n");
return 0;
}
32
Introduction to Programming
Programming Languages
C++
• A high-level programming language developed
by
Bjarne Stroustrup at Bell Labs.
• C++ adds object-oriented features to its
predecessor, C.
• C++ is one of the most popular
programming language for graphical
applications, such as those that run in
Windows and Macintosh environments.
33
Introduction to Programming
Programming Languages
C++
Exampl
e:
#include <iostream>
int main()
{
std::cout << "Hello World!" <<
std::endl; return 0;
}
34
Introduction to Programming
Programming Languages
Pascal
• A high-level programming language
developed by
Niklaus Wirth in the late 1960s.
• The language is named after Blaise
Pascal, a seventeenth-century French
mathematician who constructed one of
the first mechanical adding machines.
• It is a popular teaching language.
35
Introduction to Programming
Programming Languages
Pascal
Exampl
e:
Program
HelloWorld(output);
begin
writeLn('Hello,
World!')
end.
36
Introduction to Programming
Programming Languages
Java
• A high-level programming language developed
by
Sun Microsystems.
• Java was originally called OAK, and was
designed for handheld devices and set-top
boxes.
• Oak was unsuccessful so in 1995 Sun
changed the name to Java and modified the
language to take advantage of the
burgeoning World Wide Web.
• Java is a general purpose programming
language with a number of features that 37
Introduction to Programming
Programming Languages
Java
Example:
Programming Languages