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

Evolution of Programming Language

The document discusses the evolution of computer programming languages from early machine languages to modern high-level languages. It describes how early computer programming involved manually setting switches to input instructions. The first recognized computer program was created by Ada Lovelace in 1842-1849. Machine language uses binary and is difficult for humans, while assembly language represents instructions symbolically but is processor-specific. Higher-level languages make programming easier for humans but require compiling to machine code.

Uploaded by

sinan
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
512 views

Evolution of Programming Language

The document discusses the evolution of computer programming languages from early machine languages to modern high-level languages. It describes how early computer programming involved manually setting switches to input instructions. The first recognized computer program was created by Ada Lovelace in 1842-1849. Machine language uses binary and is difficult for humans, while assembly language represents instructions symbolically but is processor-specific. Higher-level languages make programming easier for humans but require compiling to machine code.

Uploaded by

sinan
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

EVOLUTION OF PROGRAMMING LANGUAGE

Computer programming is essential in our world today, running the systems


for almost every device we use. Computer programming languages allow us to tell machines
what to do. Machines and humans “think” very differently, so programming languages are
necessary to bridge that gap.A computer needs to be given instructions in a programming
language that it understands. A programming language is an artificial language that can be
used to control the behavior of computer. Programming languages, like human languages,
are defined through the use of syntactic and semantic rules, to determine structure and
meaning respectively. Programming languages are used to facilitate communication about
the task of organizing and manipulating information, and to express algorithms precisely”.
Some authors restrict the term “programming language” to those languages that can express
all possible algorithms; sometimes the term “computer language” is used for more limited
artificial languages.We should know that in the primitive computers, the programming was
such a laborious task that the vacuum-tube ON-OFF switches had to be set by hand.The
development in technology has made the programming friendly to the developers.

The First Computer Programming Language:-

A History of Computer Programming Languages Who developed the


computer programming languages we use today? ... The first computer programming
language was created in 1883, when a woman named Ada Lovelace worked with Charles
Babbage on his very early mechanical computer, the Analytical Engine. During 1842–1849,Ada
lovelace translated the memoir of Italian mathematician Luigi Menabrea about Charles
Babbage's newest proposed machine: the Analytical Engine; she supplemented the memoir
with notes that specified in detail a method for calculating Bernoulli numbers with the engine,
recognized by some historians as the world's first published computer program.The first
computer codes were specialized for their applications: e.g., Alonz Church was able to
express the lambda calculus in a formulaic way and the Turing machine was an abstraction of
the operation of a tape-marking machine.
To some people, some degree of expressive power and human-readability is required
before the status of "programming language" is granted. Jacquard Looms and Charles
Babbage's Difference Engine both had simple, extremely limited languages for describing the
actions that these machines should perform.

MACHINE LANGUAGE;-

The computer’s own binary-based language, or machine language, is difficult for human
beings to use. The programmer is required to input every command every command and all
data in binary form. Machine-language programming is such a tedious, time consuming task
that the time saved in running the the program rarely justifies the days or weeks needed to
write the program.Machine languages are the most primitive types of the computer
language.

machine language is a collection of binary digits or bits that the computer reads and
interprets. Machine language is the only language a computer is capable of understanding.

The exact machine language for a program or action can differ by operating system on the
computer. The specific operating system will dictate how a compiler writes a program or
action into machine language.

Computer programs are written in one or more programming languages, like C++, Java,
or Visual Basic. A computer cannot directly understand the programming languages used to
create computer programs, so the program code must be compiled. Once a program's code
is compiled, the computer can understand it because the program's code is turned into
machine language.

Machine language example:-

Below is an example of machine language (binary) for the text "Hello World".

01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100
01100100
Below is another example of machine language (non-binary), which will print the letter "A"
1000 times to the computer screen.

169 1 160 0 153 0 128 153 0 129 153 130 153 0 131 200 208 241 96

ASSEMBLY LANGUAGE:-

Assembly language is a low-level programming language for a computer or other


programmable device specific to a particular computer architecture in contrast to most high-
level programming languages, which are generally portable across multiple systems.
Assembly language is converted into executable machine code by a utility program referred
to as an assembler like NASM, MASM, etc.each personal computer has a microprocessor
that manages the computer's arithmetical, logical, and control activities.

Each family of processors has its own set of instructions for handling various operations such
as getting input from keyboard, displaying information on screen and performing various
other jobs. These set of instructions are called 'machine language instructions'.

A processor understands only machine language instructions, which are strings of 1's and 0's.
However, machine language is too obscure and complex for using in software development.
So, the low-level assembly language is designed for a specific family of processors that
represents various instructions in symbolic code and a more understandable form.

Advantages of Assembly Language

Having an understanding of assembly language makes one aware of −

 How programs interface with OS, processor, and BIOS;

 How data is represented in memory and other external devices;

 How the processor accesses and executes instruction;

 How instructions access and process data;

 How a program accesses external devices.

Other advantages of using assembly language are −

 It requires less memory and execution time;

 It allows hardware-specific complex jobs in an easier way;

 It is suitable for time-critical jobs;


 It is most suitable for writing interrupt service routines and other memory resident
programs.

Local Environment Setup

Assembly language is dependent upon the instruction set and the architecture of the
processor. In this tutorial, we focus on Intel-32 processors like Pentium. To follow this tutorial,
you will need −

 An IBM PC or any equivalent compatible computer

 A copy of Linux operating system

 A copy of NASM assembler program

There are many good assembler programs, such as −

 Microsoft Assembler (MASM)

 Borland Turbo Assembler (TASM)

 The GNU assembler (GAS)

We will use the NASM assembler, as it is −

 Free. You can download it from various web sources.

 Well documented and you will get lots of information on net.

 Could be used on both Linux and Windows.

Installing NASM

If you select "Development Tools" while installing Linux, you may get NASM installed along
with the Linux operating system and you do not need to download and install it separately.
For checking whether you already have NASM installed, take the following steps −

 Open a Linux terminal.

 Type whereis nasm and press ENTER.


 If it is already installed, then a line like, nasm: /usr/bin/nasm appears. Otherwise, you
will see just nasm:, then you need to install NASM.

To install NASM, take the following steps −

 Check The netwide assembler (NASM) website for the latest version.

 Download the Linux source archive nasm-X.XX.ta.gz, where X.XX is the NASM version
number in the archive.

 Unpack the archive into a directory which creates a subdirectory nasm-X. XX.

 cd to nasm-X.XX and type ./configure. This shell script will find the best C compiler to
use and set up Makefiles accordingly.

 Type make to build the nasm and ndisasm binaries.

 Type make install to install nasm and ndisasm in /usr/local/bin and to install the man
pages.

This should install NASM on your system. Alternatively, you can use an RPM distribution for
the Fedora Linux. This version is simpler to install, just double-click the RPM file.

HIGH LEVEL LANGUAGE:-

The high level languages use the English words such as OPEN, LIST, PRINT, which might stand
for an array of instructions.These commands are entered via a keyboard or from a
programme in a storage device.Both High level language and low level language are the
programming language’s types.

The main difference between high level language and low level language is that,
Programmers can easily understand or interpret or compile the high level language in
comparison of machine. On the other hand, Machine can easily understand the low level
language in comparison of human beings.

Examples of high level languages are C, C++, Java, Python, etc.


S.NO HIGH LEVEL LANGUAGE LOW LEVEL LANGUAGE

It is programmer friendly

1. language. It is a machine friendly language.

High level language is less Low level language is high

2. memory efficient. memory efficient.

3. It is easy to understand. It is tough to understand.

It is complex to debug

4. It is simple to debug. comparatively.

It is complex to maintain

5. It is simple to maintain. comparatively.

6. It is portable. It is non-portable.

7. It can run on any platform. It is machine-dependent.

A high-level language is a programming language designed to simplify computer


programming. It is "high-level" since it is several steps removed from the actual code run on a
computer's processor. High-level source code contains easy-to-read syntax that is later
converted into a low-level language, which can be recognized and run by a specific CPU.

Most common programming languages are considered high-level languages.

Eg:-

1. C++
2. C#
3. Cobol
4. Fortran
5. Java
6. JavaScript
7. Objective C
8. Pascal
9. Perl
10. PHP
11. Python
12. Swift

Each of these languages use different syntax. Some are designed for writing desktop software
programs, while others are best-suited for web development. But they all are considered
high-level since they must be processed by a compiler or interpreter before the code is
executed.

Source code written in languages like C++ and C# must be compiled into machine code in
order to run. The compilation process converts the human-readble syntax of the high-level
language into low-level code for a specific processor. Source code written in scripting
languages like Perl and PHP can be run through an interpreter, which converts the high-level
code into a low-level language on-the-fly.

You might also like