Computer Concepts - Programming Languages


A program is a set of instructions that help computer to perform tasks. This set of instructions is also called as scripts. Programs are executed by processor whereas scripts are interpreted. The languages that are used to write a program or set of instructions are called "Programming languages". Programming languages are broadly categorized into three types −

  • Machine level language
  • Assembly level language
  • High-level language

Machine Level Language

Machine language is lowest level of programming language. It handles binary data i.e. 0’s and 1’s. It directly interacts with system. Machine language is difficult for human beings to understand as it comprises combination of 0’s and 1’s. There is software which translate programs into machine level language. Examples include operating systems like Linux, UNIX, Windows, etc. In this language, there is no need of compilers and interpreters for conversion and hence the time consumption is less. However, it is not portable and non-readable to humans.

Machine Level Language

Assembly Level Language

Assembly language is a middle-level language. It consists of a set of instructions in a specific format called commands. It uses symbols to represent field of instructions. It is very close to machine level language. The computer should have assembler to translate assembly level program to machine level program. Examples include ADA, PASCAL, etc. It is in human-readable format and takes lesser time to write a program and debug it. However, it is a machine dependent language.

Assembly Language Machine Code
SUB AX, BX 0010101110000011
MOV CX, AX 100010111001000
MOV DX, 0 10111010000000000000000

High-level Language

High-level language uses format or language that is most familiar to users. The instructions in this language are called codes or scripts. The computer needs a compiler and interpreter to convert high-level language program to machine level language. Examples include C++, Python, Java, etc. It is easy to write a program using high level language and is less time-consuming. Debugging is also easy and is a human-readable language. Main disadvantages of this are that it takes lot of time for execution and occupies more space when compared to Assembly- or Machine-level languages. Following is a simple example for a high level language −

if age < 18 {
   printf("You are not eligible to vote");
} else{
   printf("You are eligible to vote");