Levels of Computer Language

Computers can only execute programs in binary machine code.

In the beginning....programmers had to write programs in machine code...
A machine code program would look like..

00101000
10110011
10010101
01001011

etc...


Programming was difficult and tracking down errors (debugging) must have been a nightmare!

Assembly Language was developed which gave mnemonics (meaningful abbreviations) to the machine code instructions.

Assembly language programs look more readable...

MOV  AL,5
CLC
MOV AH,2
INT 21H

etc...

..but only just!

Programming languages are classified as Low level (near to the language a computer uses - ie machine code) or High level (near to the language a human uses).

Low level (Assembly) languages are 

  • computer orientated
  • difficult for programmers to develop code and to test and modify it. Simple tasks need a lot of instructions.
  • used to develop programs that need to run very fast.

High level languages started to be developed in the mid 1950s - to make it easier for programmers to develop complex programs. They are...

  • problem orientated
  • easier for humans to understand and use.
  • used to develop programs that can run on different computers.

Examples of high-level languages are :

  • FORTRAN (FORmula TRANslator); mainly used for engineering/scientific computing.
  • COBOL(COmmon Business Orientated Language). Still one of the main commercial data processing languages.
  • ALGOL (ALGOrithmic Language) was also developed in the 1950s and many of the languages such as C and C++ are developed from it.
  • BASIC (Beginners All-purpose Symbolic Instruction Code) was developed in the 1960s as a simple programming language.
  • PASCAL was developed in the 1970s as a well-structured teaching language.
  • JAVA - a recent language developed from C++; an object-oriented language useful for developing programs which work over the Internet.
  • Other high-level languages include : LISP, PROLOG, PL/1 , ADA

Scientific languages (like FORTRAN and ALGOL) would have high-precision mathematical functions, whereas commercial languages (like COBOL) would have powerful file handling facilities.

Scientific languages would be needed for eg. weather forecasting, real-time control systems, etc

Commercial languages would be needed for eg. information retrieval systems.