0% found this document useful (0 votes)
109 views

Programming Languages - Ananya

The document discusses programming languages at different levels of abstraction from machine language to high-level languages. It describes that machine language uses binary and is difficult for humans to understand. Assembly language uses symbolic representations that are closer to machine code. High-level languages resemble everyday language and allow programmers to solve problems without detailed hardware knowledge. Examples are given of different language types including functional, declarative, imperative and object-oriented languages. A brief history of programming languages is provided from early machine and assembly languages to modern high-level languages.

Uploaded by

Kamlesh Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
109 views

Programming Languages - Ananya

The document discusses programming languages at different levels of abstraction from machine language to high-level languages. It describes that machine language uses binary and is difficult for humans to understand. Assembly language uses symbolic representations that are closer to machine code. High-level languages resemble everyday language and allow programmers to solve problems without detailed hardware knowledge. Examples are given of different language types including functional, declarative, imperative and object-oriented languages. A brief history of programming languages is provided from early machine and assembly languages to modern high-level languages.

Uploaded by

Kamlesh Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 22

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

You might also like