History of Programming Languages
Lesson Objectives
- list and describe the three major programming language levels
- define the terms compiler and interpreter
- list at least five high-level programming languages
Programming Language Levels
A programming language is used by a human programmer to direct a computer
to accomplish a specific set of steps which lead to a desired outcome.
As illustrated by the figure at right, programming languages can be divided
into three major groups. They are:
- machine
- assembly
- high-level
Machine language is the "native tongue" of the computer, the language
closest to the hardware itself. Each unique computer has a unique machine
language. A machine language program is made up of a series of binary
patterns (e.g., 01011100) which represent simple operations that can be
accomplished by the computer (e.g., add two operands, move data to a memory
location). Machine language programs are executable, meaning that they can
be run directly. Programming in machine language requires memorization of
the binary codes and can be difficult for the programmer.
Assembly language represents an effort to make programming easier for the human.
The machine language instructions are replaced with simple pneumonic abbreviations
(e.g., ADD, MOV). Thus assembly languages are unique to a specific computer (machine).
Prior to execution, an assembly language program requires translation to machine language
prior to execution. This translation is accomplished by a computer program known
as an Assembler. Assemblers are written for each unique machine language.
High-level languages are more English-like and, therefore, make it easier for programmers
to "think" in the programming language.
High-level languages require translation to machine language before execution.
Translations are accomplished by either a compiler or an interpreter.
Compilers translate the entire source code program before execution.
Interpreters translate source code programs one line at a time.
Interpreters are more interactive than compilers.
This course deals with high-level languages.
Related Links
The History of Programming Languages
A Brief History of Programming Languages
Visual Programming Languages: A Survey
The Development of the C Language
History of Ada
The Design and Evolution of C++
Introduction to Java
A Brief Introduction to FORTH
|