2.5.1

High-Level vs Low-Level Languages

Test yourself

High-Level Languages

Most computer languages are written in high-level programming languages.

Illustrative background for High-Level LanguagesIllustrative background for High-Level Languages ?? "content

High-Level Languages

  • High-level languages (HLLs) include most programming languages such as Python, C++ and Java.
  • High-level languages are made of human-readable statements that make it easier for us to program.
  • High-level languages are portable, which means that they can be run on many different types of hardware.
Illustrative background for What does a HLL look like?Illustrative background for What does a HLL look like? ?? "content

What does a HLL look like?

  • Commands in a high-level language look very like English. For example:
    • print()
    • SELECT * FROM users;
Illustrative background for Why don't we always use HLLs?Illustrative background for Why don't we always use HLLs? ?? "content

Why don't we always use HLLs?

  • Computers can only process instructions in the form of binary numbers.
  • We use special software called a translator to convert our HLL source code into an executable binary file.

Low-Level Languages

Low-level programming languages are languages which are much closer to computer-understandable binary.

Illustrative background for Low-Level LanguagesIllustrative background for Low-Level Languages ?? "content

Low-Level Languages

  • Low-level languages (LLLs) are much closer to executable machine code than high-level languages.
  • LLLs are harder to read by humans, but are easier to read for the computer.
Illustrative background for What does a LLL look like?Illustrative background for What does a LLL look like? ?? "content

What does a LLL look like?

  • LLL commands are not easy to read, and might include commands such as:
    • MOV ax, bx
    • CMP ch, dh
    • CLI
Illustrative background for Why do we use LLLs?Illustrative background for Why do we use LLLs? ?? "content

Why do we use LLLs?

  • LLLs provide exact control over the central processing unit.
  • LLLs need less translation, and often lead to faster code which is useful for computers with low specifications such as embedded systems.

Jump to other topics

1Computer Systems

1.1Systems Architecture

1.2Memory & Storage

1.3Computer Networks, Connections & Protocols

1.4Network Security

1.5Systems Software

1.6Ethical, Legal, Cultural & Environmental Concern

2Computational Thinking, Algorithms and Programming

Go student ad image

Unlock your full potential with GoStudent tutoring

  • Affordable 1:1 tutoring from the comfort of your home

  • Tutors are matched to your specific learning needs

  • 30+ school subjects covered

Book a free trial lesson