Skip to content
TheCScience
TheCScience

Everything About Computer Science

  • Pages
    • About US
    • Contact US
    • Privacy Policy
    • DMCA
  • Human values
  • NCERT Solutions
  • HackerRank solutions
    • HackerRank Algorithms Problems Solutions
    • HackerRank C solutions
    • HackerRank C++ problems solutions
    • HackerRank Java problems solutions
    • HackerRank Python problems solutions
TheCScience
TheCScience

Everything About Computer Science

Types of Programming Languages

YASH PAL, March 12, 2022July 13, 2025

Programming Languages Types – Languages are defined as communication skills which is used to interact with any person or device. The skill should be such that a proper interaction could be established between the two communicating persons or a person and a device.

The microprocessor is a programmable device that recognizes and operates in binary numbers (0’s and 1’s). Each microprocessor has its own set of instructions based on the hardware design.

This instruction set is known as the programming language of that microprocessor. So in this article, we are going to learn about the evolution of programming languages, starting from machine language to high-level languages.

Types of Programming Languages

  1. Machine Language
  2. Assembly Language
  3. High-Level Language

Machine Language

Machine language was the first in the evolution of programming languages. A machine language is a binary language that is composed of 0s and 1s. This language is specific to each processor.

A microprocessor directly understands a program written in machine language. In fact, even today, basically, microprocessors understand only the 0s and 1s. A microprocessor recognizes and processes a fixed number of bits at a time. This is known as the word length of the microprocessor.

For example, the 8085 microprocessor can recognize and process 8-bit data at a time; hence, its word length is 8 bits. The instruction set of the 8085 microprocessor is designed by using various combinations of these eight bits.

The 8085 microprocessor has 256 (2^8) such bit patterns, but only 74 different bit patterns are used for various operations. These 74 different bit patterns (instructions) are called the instruction set.

Example

  1. 1000 0001 – is an instruction that adds the number in the register named C to the number in the accumulator, and stores the result in the accumulator.
  2. 0111 1000 – is an instruction that copies the number in the register named B to the accumulator.

Sometimes, to make the representation easier, hexadecimal codes for bit patterns are used. Hexadecimal codes are easy to write and remember rather than binary codes or patterns. For example, 1000 0001 can be coded as 81 in hexadecimal.

Advantages of Machine Language

  1. The machine language program is executed faster than a program written in a high-level language.
  2. No translator or converter is required since the microprocessor directly understands 0s and 1s.

Disadvantages of Machine Languages

  1. Difficult to learn and remember.
  2. Programs are lengthy and complex.
  3. Programs are machine-dependent, so programs written for one processor may not run on different processors.
  4. Computer architecture and organization must be known before writing the program.

Machine language is rarely used nowadays, except where very high-speed execution is required. it is also used in cheap microcomputer systems.

Assembly Language

The next evolution of programming language was the assembly language. Assembly language uses abbreviated names, called mnemonics, instead of a sequence of 0s and 1s. Since microprocessors can understand only 0s and 1s, the program written in assembly language is of no use for microprocessors without a translator.

A translator called an assembler translates the assembly language (source program) to machine language (object program).

Types of computer programming languages
Use of Assembler

As shown in the above image the input to an assembler is a source program written in assembly language and its output is an object program that is in machine language.

Since the assembler translates each assembly language instruction into an equivalent machine language instruction there is one correspondence between the assembly instruction of the source program and the machine instruction of the object program.

Since mnemonics are only abbreviated names they do not specify the complete operations. the complete description of each instruction must be supplied by the manufacturer. the complete set of 8085 mnemonics is called the 8085 assembly language and a program written in these mnemonics is called an assembly language program.

Example

Machine CodeMnemonicRemark
1000 0001ADD Cis an instruction that adds the number in the register named C to the number in the accumulator and stores the result in the accumulator
0111 1000MOV A, Bis an instruction that copies the number in the register named B to the accumulator

An assembly language program written for one microprocessor is not transferable to a computer with another microprocessor unless the two microprocessors are compatible with their machine code.

Advantages of assembly language

  1. Easy to learn and remember.
  2. With a glance through the program, it is much easier to visualize its function of the program.
  3. An Assembly language program is also executed faster than a program written in a high-level language.

Disadvantages of assembly language

  1. The programs are written in assembly language not portable.
  2. Computer architecture and organization must be known before writing the program.
  3. An assembler is needed for translating the assembly language program into machine code.

Similar to machine language, assembly language is rarely used nowadays, except where very high-speed execution is required. Both machine language and assembly language are termed low-level languages.

High-level language

Even though assembly language was an advanced step in the development of programming languages over machine language, both languages are machine-dependent. So the next development in the evolution of programming languages is high-level languages. Some examples of high-level languages are as follows

  1. BASIC (Beginners All-Purpose Symbolic Instruction Code)
  2. FORTRAN (Formula Translation)
  3. COBOL (Common Business Oriented Language)

High-level language has its own sets of rules and is written with English words and mathematical symbols. a complete instruction written in a high-level language is known as a statement.

High-level languages are machine-independent os programmer is not supposed to know the details of the computer. Thus the programmer can mainly concentrate on the logic to solve the given problem or to fulfill the application.

Since the microprocessor can understand 0s and 1s only, a converter, which converts the high-level instruction to the binary pattern, is required. A compiler or interpreter is a program that takes English-like statements as its input and, after conversion, produces machine language (binary pattern) as its output, as shown in the image below.

Types of computer programming languages
Use of a compiler and an Interpreter

The compiler is a program that translates the whole high-level program into object code (machine code).

If it does not find any syntax error. On the other hand, the interpreter reads one instruction at a time, produces its object code, and executes the instruction before reading the next instruction.

In the case of the compiler, the object code program is saved for further use of instructions for repetitive processes, whereas in the case of an interpreter, no object code is saved for future use because the translation and execution processes are alternatives.

The compiler is used for larger computers, whereas the interpreter is used for small computers. Compilers require large main memory as compared to interpreters. Assemblers, compilers, and interpreters are part of system software that translates a source program written by the user to an object program that is meaningful to the hardware of the computer or to the microprocessor.

These translators are also referred to as language processors since they are used for processing a particular language.

Advantages of high-level language

  1. Easy to learn and remember.
  2. With a glance through the program, it is much easier to visualize its function of the program.
  3. The programmer does not need to be familiar with computer architecture and organization.
  4. The program written in a high-level language is portable, provided the other computer has a compiler for the language in which the program is written.
  5. Productivity has increased enormously.

Disadvantages of high-level language

  1. A compiler is required for translating the high-level language program into machine code.
  2. Each high-level instruction is translated into more than one instruction in machine language, so it is quite expensive.
  3. The code generated by the compiler might not be as compact as written straightaway in the low-level language. Thus, a program written in a high-level language usually takes longer to execute.
  4. Knowledge of specific rules, syntax, and programming techniques for any particularly high-level language is required.
  5. Additional software and hardware support is required.

A high-level language is almost always used nowadays, except where very high-speed execution is required. Nowadays, nonprocedural languages like Object Oriented Programming languages (OOPs) and Graphical User Interface Languages (GUI) are the most common high-level languages.

These can be drawn into different categories of an advanced high-level language. In these languages many commonly used tasks are predefined. user has to simply specify the name of that procedure instead of writing many statements as in the case of a high-level language.

computer fundamentals microprocessor developer guideengineering subjectsinternet

Post navigation

Previous post
Next post

Leave a Reply

You must be logged in to post a comment.

Similar websites

  • Programming
  • Data Structures
©2025 TheCScience | WordPress Theme by SuperbThemes