2.5.1
High-Level vs Low-Level Languages
After reading these notes, test your knowledge with free interactive questions on Seneca — used by over 10 million students.
High-Level Languages
Most computer languages are written in high-level programming languages.

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.

What does a HLL look like?
- Commands in a high-level language look very like English. For example:
- print()
- SELECT * FROM users;

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.

Advantages
- HLLs are quicker to create software because one line of code can perform multiple actions on the CPU.
- A programmer does not have to think about how a program interacts with hardware. They can focus on creative problem-solving.
Low-Level Languages
Low-level programming languages are languages which are much closer to computer-understandable binary.

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.

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

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.

Comparison
- How would you write a simple addition program using values stored in two variables?
- High-level language
num1 = 17
num2 = 4
print(num1+num2) - Low-level language (Little Man Code)
INP // Input first number
STA A // Store it in mailbox A
INP // Input second number
ADD A // Add the stored first number to the second
OUT // Output the sum
HLT // Stop
A DAT
1Computer Systems
1.1Systems Architecture
1.2Memory & Storage
1.2.1Types of Memory1.2.2Flash Memory1.2.3Properties of Flash Memory1.2.4Running Out of Memory1.2.5Virtual Memory1.2.6Units of Capacity1.2.7Calculating Capacity Requirements1.2.8Solid State Storage1.2.9Properties of Solid State Media1.2.10Magnetic Storage1.2.11Properties of Magnetic Media1.2.12Examples of Magnetic Storage1.2.13Optical Storage1.2.14Properties of Optical Media1.2.15Examples of Optical Storage1.2.16Types of Optical Disk1.2.17Number Bases1.2.18Converting Number Bases1.2.19Hexadecimal1.2.20Using Hexadecimal1.2.21Converting Denary & Hexadecimal1.2.22Binary Addition1.2.23Binary Shifts1.2.24Representing Text1.2.25ASCII & Unicode1.2.26Representing Images1.2.27Converting Binary & Images1.2.28Representing Sound1.2.29Data Compression1.2.30Grade 9 - Storage1.2.31Exam-Style Questions - Primary Memory1.2.32Exam-Style Questions - Storage1.2.33Exam-Style Questions - Data Conversions1.2.34Diagnostic Misconceptions - RAM vs ROM1.2.35Diagnostic Misconceptions - Bits, Nibbles & Bytes1.2.36Diagnostic Misconceptions - Bits Required to Store1.2.37End of Topic Test - Computer Systems1.2.38End of Topic Test - Representation
1.3Computer Networks, Connections & Protocols
1.3.1Benefit of Networks1.3.2Types of Networks1.3.3Network Performance1.3.4Networks: How Do Packets Get Routed?1.3.5Client-Server Model1.3.6Pros & Cons of Client-Server Model1.3.7Peer-to-Peer Model1.3.8Pros & Cons of Peer-to-Peer Model1.3.9Network Hardware1.3.10Transmission Media1.3.11What is the Internet?1.3.12URLs1.3.13DNS & Web Hosting1.3.14The Cloud1.3.15Pros & Cons of the Cloud1.3.16Star & Mesh Network Topologies1.3.17WiFi1.3.18WiFi Frequency & Channels1.3.19WiFi Encryption1.3.20IP Addresses1.3.21MAC Addresses1.3.22Network Protocols1.3.23Transmission Protocols1.3.24Application Protocols1.3.25Layers1.3.26Advantages of Layering1.3.27Exam-Style Questions - Networking Models1.3.28Exam-Style Questions - Network Protocols1.3.29Diagnostic Misconceptions - LAN vs WAN
1.4Network Security
1.4.1Forms of Attack1.4.2Penetration Testing1.4.3Malware1.4.4How Malware Spreads1.4.5Social Engineering1.4.6Phishing1.4.7Cracking Passwords1.4.8Denial of Service Attacks1.4.9Data Interception1.4.10Methods of Data Interception1.4.11SQL Injection1.4.12Network Administration1.4.13Network Forensics1.4.14Protecting Against Malware1.4.15Firewalls1.4.16User Access Levels1.4.17Passwords1.4.18Encryption1.4.19End of Topic Test - Networks
1.5Systems Software
1.6Ethical, Legal, Cultural & Environmental Concern
1.6.1Open Source Software1.6.2Proprietary Software1.6.3Licensing Issues1.6.4Ethical Issues - The Digital Divide1.6.5Ethical Issues - Net Neutrality1.6.6Ethical Issues - Working Conditions1.6.7Ethical Issues - Censorship1.6.8Exam-Style Questions - Ethical Issues1.6.9Data Protection Act 19981.6.10Computer Misuse Act (1990)1.6.11Copyright Designs & Patents Act (1988)1.6.12Creative Commons Licensing1.6.13Freedom of Information Act (2000)1.6.14Cultural Issues1.6.15Environmental Issues1.6.16Online Activity Tracking & The Internet of Things1.6.17Stakeholders1.6.18Other Impacts of Digital Technology on Society1.6.19End of Topic Test - Software & Issues1.6.20Diagnostic Misconceptions - Open Source
2Computational Thinking, Algorithms & Programming
2.1Algorithms
2.1.1Computational Thinking - Abstraction2.1.2Computational Thinking - Decomposition2.1.3Algorithmic Thinking2.1.4Pseudocode2.1.5Flowchart Diagrams2.1.6Interpreting Algorithms2.1.7Correcting Algorithms2.1.8Completing Algorithms2.1.9Search Algorithms2.1.10Binary Search2.1.11Linear Search2.1.12Overview of Sort Algorithms2.1.13Bubble Sort2.1.14Merge Sort2.1.15Insertion Sort2.1.16Exam-Style Questions - Sorting Algorithms
2.2Programming Fundamentals
2.2.1Variable Declaration & Assignment2.2.2Input & Output2.2.3Program Flow - Sequence2.2.4Program Flow - Selection2.2.5Program Flow - Iteration2.2.6Arithmetic Operators2.2.7Relational Operators2.2.8Boolean Operators2.2.9Data Types2.2.10Casting2.2.11Arrays2.2.12Strings2.2.13File Handling2.2.14Structuring Data - Records2.2.15Structured Query Language2.2.16Random Number Generation2.2.17End of Topic Test - Programming2.2.18Exam-Style Questions - Translation2.2.19Diagnostic Misconceptions - Comparison Operators2.2.20Diagnostic Misconceptions - = & ==2.2.21Diagnostic Misconceptions - Types of Data2.2.22Diagnostic Misconceptions - Last Line of Code2.2.23Diagnostic Misconceptions - Array Index
2.3Producing Robust Programs
2.4Boolean Logic
Jump to other topics
1Computer Systems
1.1Systems Architecture
1.2Memory & Storage
1.2.1Types of Memory1.2.2Flash Memory1.2.3Properties of Flash Memory1.2.4Running Out of Memory1.2.5Virtual Memory1.2.6Units of Capacity1.2.7Calculating Capacity Requirements1.2.8Solid State Storage1.2.9Properties of Solid State Media1.2.10Magnetic Storage1.2.11Properties of Magnetic Media1.2.12Examples of Magnetic Storage1.2.13Optical Storage1.2.14Properties of Optical Media1.2.15Examples of Optical Storage1.2.16Types of Optical Disk1.2.17Number Bases1.2.18Converting Number Bases1.2.19Hexadecimal1.2.20Using Hexadecimal1.2.21Converting Denary & Hexadecimal1.2.22Binary Addition1.2.23Binary Shifts1.2.24Representing Text1.2.25ASCII & Unicode1.2.26Representing Images1.2.27Converting Binary & Images1.2.28Representing Sound1.2.29Data Compression1.2.30Grade 9 - Storage1.2.31Exam-Style Questions - Primary Memory1.2.32Exam-Style Questions - Storage1.2.33Exam-Style Questions - Data Conversions1.2.34Diagnostic Misconceptions - RAM vs ROM1.2.35Diagnostic Misconceptions - Bits, Nibbles & Bytes1.2.36Diagnostic Misconceptions - Bits Required to Store1.2.37End of Topic Test - Computer Systems1.2.38End of Topic Test - Representation
1.3Computer Networks, Connections & Protocols
1.3.1Benefit of Networks1.3.2Types of Networks1.3.3Network Performance1.3.4Networks: How Do Packets Get Routed?1.3.5Client-Server Model1.3.6Pros & Cons of Client-Server Model1.3.7Peer-to-Peer Model1.3.8Pros & Cons of Peer-to-Peer Model1.3.9Network Hardware1.3.10Transmission Media1.3.11What is the Internet?1.3.12URLs1.3.13DNS & Web Hosting1.3.14The Cloud1.3.15Pros & Cons of the Cloud1.3.16Star & Mesh Network Topologies1.3.17WiFi1.3.18WiFi Frequency & Channels1.3.19WiFi Encryption1.3.20IP Addresses1.3.21MAC Addresses1.3.22Network Protocols1.3.23Transmission Protocols1.3.24Application Protocols1.3.25Layers1.3.26Advantages of Layering1.3.27Exam-Style Questions - Networking Models1.3.28Exam-Style Questions - Network Protocols1.3.29Diagnostic Misconceptions - LAN vs WAN
1.4Network Security
1.4.1Forms of Attack1.4.2Penetration Testing1.4.3Malware1.4.4How Malware Spreads1.4.5Social Engineering1.4.6Phishing1.4.7Cracking Passwords1.4.8Denial of Service Attacks1.4.9Data Interception1.4.10Methods of Data Interception1.4.11SQL Injection1.4.12Network Administration1.4.13Network Forensics1.4.14Protecting Against Malware1.4.15Firewalls1.4.16User Access Levels1.4.17Passwords1.4.18Encryption1.4.19End of Topic Test - Networks
1.5Systems Software
1.6Ethical, Legal, Cultural & Environmental Concern
1.6.1Open Source Software1.6.2Proprietary Software1.6.3Licensing Issues1.6.4Ethical Issues - The Digital Divide1.6.5Ethical Issues - Net Neutrality1.6.6Ethical Issues - Working Conditions1.6.7Ethical Issues - Censorship1.6.8Exam-Style Questions - Ethical Issues1.6.9Data Protection Act 19981.6.10Computer Misuse Act (1990)1.6.11Copyright Designs & Patents Act (1988)1.6.12Creative Commons Licensing1.6.13Freedom of Information Act (2000)1.6.14Cultural Issues1.6.15Environmental Issues1.6.16Online Activity Tracking & The Internet of Things1.6.17Stakeholders1.6.18Other Impacts of Digital Technology on Society1.6.19End of Topic Test - Software & Issues1.6.20Diagnostic Misconceptions - Open Source
2Computational Thinking, Algorithms & Programming
2.1Algorithms
2.1.1Computational Thinking - Abstraction2.1.2Computational Thinking - Decomposition2.1.3Algorithmic Thinking2.1.4Pseudocode2.1.5Flowchart Diagrams2.1.6Interpreting Algorithms2.1.7Correcting Algorithms2.1.8Completing Algorithms2.1.9Search Algorithms2.1.10Binary Search2.1.11Linear Search2.1.12Overview of Sort Algorithms2.1.13Bubble Sort2.1.14Merge Sort2.1.15Insertion Sort2.1.16Exam-Style Questions - Sorting Algorithms
2.2Programming Fundamentals
2.2.1Variable Declaration & Assignment2.2.2Input & Output2.2.3Program Flow - Sequence2.2.4Program Flow - Selection2.2.5Program Flow - Iteration2.2.6Arithmetic Operators2.2.7Relational Operators2.2.8Boolean Operators2.2.9Data Types2.2.10Casting2.2.11Arrays2.2.12Strings2.2.13File Handling2.2.14Structuring Data - Records2.2.15Structured Query Language2.2.16Random Number Generation2.2.17End of Topic Test - Programming2.2.18Exam-Style Questions - Translation2.2.19Diagnostic Misconceptions - Comparison Operators2.2.20Diagnostic Misconceptions - = & ==2.2.21Diagnostic Misconceptions - Types of Data2.2.22Diagnostic Misconceptions - Last Line of Code2.2.23Diagnostic Misconceptions - Array Index
2.3Producing Robust Programs
2.4Boolean Logic
Practice questions on High-Level vs Low-Level Languages
Can you answer these? Test yourself with free interactive practice on Seneca — used by over 10 million students.
- 1What does it mean for a language to be portable?Multiple choice
- 2
- 3Why don't we always use high-level languages?Multiple choice
- 4Which of these look like low-level statements?True / false
- 5
Unlock your full potential with Seneca Premium
Unlimited access to 10,000+ open-ended exam questions
Mini-mock exams based on your study history
Unlock 800+ premium courses & e-books