Programming
Languages
What is “Programming”
Writing source code and turning it into a sequence of machine
language instructions that the computer can execute.
“Generations” of Programming Languages
“Generations” of Programming Languages
First Generation
Machine language
Second Generation
Assembly language
Third Generation
“High-level” languages such as Pascal, C, COBOL, Fortran
Fourth Generation
Scripting languages such as SQL, Applescript, VBScript
Fifth Generation?
Natural language? Automatic code generation? Object-oriented
languages?
Four types of programming languages
Functional
Lisp, ML, Scheme
Good for evaluating expressions.
Declarative
Prolog
Good for making logical inferences.
Imperative
C, Pascal, Fortran, COBOL
Good at performing calculations, implementing algorithms.
Object-oriented
C++, Java, C#, Visual Basic
Much like imperative languages, but have support for “communication” among
objects.
History of Programming Languages
Computer Programming Languages:
A programming language is an artificial language that can be
used to control the behavior of a machine, particularly a
computer
Programming languages, like human languages, are defined
through the use of syntactic and semantic rules, to determine
structure and meaning respectively.
Computer Programming Languages (Contd…):
Programming languages are used to facilitate communication
about the task of organizing and manipulating information, and
to express algorithms precisely.
For 50 years, computer programmers have been writing code.
New technologies continue to emerge, develop, and mature at
a rapid pace. Now there are more than 2,500 documented
programming languages!
Machine language:
It is the lowest-level programming language.
Machine languages are the only languages understood by
computers.
Machine language:
While easily understood by computers, machine languages are
almost impossible for humans to use because they consist
entirely of numbers.
For example, an x86/IA-32 processor can execute the
following binary instruction as expressed in machine language:
Binary: 10110000 01100001 (Hexadecimal: 0xb061)
Assembly Level Language:
An assembly language is a low-level language for
programming computers.
The word "low" does not imply that the language is inferior to
high-level programming languages but rather refers to the
small or nonexistent amount of abstraction between the
language and machine language, because of this, low-level
languages are sometimes described as being "close to the
hardware."
It implements a symbolic representation of the numeric
machine codes and other constants needed to program a
particular CPU architecture.
Example (Adds 2 numbers):
name "add"
mov al, 5 ; bin=00000101b
mov bl, 10 ; hex=0ah or bin=00001010b
add bl, al ; 5 + 10 = 15 (decimal) or hex=0fh or
bin=00001111b
High-level language:
High-level languages are relatively easy to learn because the
instructions bear a close resemblance to everyday language,
and because the programmer does not require a detailed
knowledge of the internal workings of the computer.
Each instruction in a high-level language is equivalent to
several machine-code instructions, therefore it is more
compact than equivalent low-level programs.
High-level languages are used to solve problems and are often
described as problem-oriented languages
High-level language (Contd…):
Examples of HLL:
BASIC was designed to be easily learnt by first-time programmers;
COBOL is used to write programs solving business problems;
FORTRAN is used for programs solving scientific and mathematical
problems.
With the increasing popularity of windows-based systems, the next
generation of programming languages was designed to facilitate the
development of GUI interfaces;
for example, Visual Basic wraps the BASIC language in a graphical
programming environment.
Support for object-oriented programming has also become more
common, for example in C++ and Java.
Example (C program to add 2 numbers):
#include<stdio.h> //header files
Void main()
{
int a, b, c; // declaration of 3
variables
printf(“Enter two numbers:\n”);
Scanf(“%d”, &a); // read 1st number
Scanf(“%d”, &b); // read 2nd number
c=a+b; // compute the sum
printf(“Sum of 2 numbers is %d”, c); //print
sum
}
Visual C++ IDE
“Variables”
While loop control structure
For-loop control structure
If conditional control structure
Case conditional control structure
Thank You
Ananya Rajpal – Vth A