Types of Programming Language, Translators and Integrated Development Environments (IDEs)

2026 Syllabus Objectives

By the end of this topic, you should be able to:

  1. Explain what is meant by a high-level language and a low-level language, including the advantages and disadvantages of each
  2. Understand that assembly language is a form of low-level language that uses mnemonics, and that an assembler is needed to translate an assembly language program into machine code
  3. Describe the operation of a compiler and an interpreter, including how high-level language is translated by each and how errors are reported
  4. Explain the advantages and disadvantages of a compiler and an interpreter
  5. Explain the role of an IDE in writing program code and the common functions IDEs provide

1. Programming Languages: An Introduction

A programming language acts as a bridge between what humans understand and what a computer understands. Early computers required instructions to be written in binary code (just 0s and 1s), which was extremely slow and difficult. Over time, programming languages evolved to become more similar to human language, making it faster and easier for people to write programs.

Programming languages can be split into two main categories:

  • Low-level languages (closer to what the computer understands)
  • High-level languages (closer to what humans understand)

2. Low-Level Languages

What is a Low-Level Language?

A low-level language is a programming language that directly translates to machine code that the processor understands. These languages allow programmers to have direct control over hardware components such as memory and registers (special storage locations inside the processor).

Low-level languages are written for specific processors to ensure they match the exact machine architecture of that processor.

Two Types of Low-Level Languages

First Generation: Machine Code

Machine code is the most basic form of programming language.

  • Instructions are written entirely in binary code (0s and 1s)
  • These instructions can be executed directly by the processor without any translation
  • This is the only language the computer's processor truly understands

Example of machine code:

10110111
00110110
11100110

Each of these binary numbers represents a specific instruction that the processor can carry out.

Second Generation: Assembly Language

Assembly language is a step up from machine code. Instead of writing in binary, programmers can use short, abbreviated text commands called mnemonics (pronounced "neh-MON-iks").

Mnemonics are memory aids - short abbreviations that are easier to remember than binary code.

Common assembly language mnemonics include:

  • LDA = Load (puts a value into the accumulator, a special register for calculations)
  • ADD = Addition (adds a value to what's already in the accumulator)
  • STA = Store (saves the value from the accumulator into memory)
  • INP = Input (gets input from the user)

Example of assembly code:

INP X
STA X
LDA Y

Important point: One assembly language instruction translates to exactly one machine code instruction. This means assembly language and machine code have a one-to-one relationship.

However, the computer cannot directly execute assembly language - it needs to be translated into machine code first. A special program called an assembler does this translation.

Advantages and Disadvantages of Low-Level Languages

AdvantagesDisadvantages
Complete control over system components - you can manipulate exactly how the hardware behavesDifficult to write and understand - the code doesn't look like normal human language
Occupy less memory and execute faster because they work directly with the hardwareMachine dependent - code written for one type of processor won't work on another
Direct manipulation of hardware - you can access and control specific parts of the computerMore prone to errors - small mistakes can cause big problems
Requires knowledge of computer architecture - you need to understand how the processor works to program effectively

Sign in to view full notes