---
title: "High level vs low level languages"
subject: "Computer Programming"
chapter: 1
key: "semester_1/computer_programming:high-low-level-languages"
source: https://www.bctengineer.com/q/semester_1/computer_programming/high-low-level-languages
site: BCT Engineering
---

# High level vs low level languages

Computer Programming · Chapter 1: Overview of computer software & programming languages

- Asked in: 2073 Chaitra, 3 marks; 2069 Asar, 4 marks (asked 2 times)
- Video: [C_02 Low level vs High level Languages | Machine and Assembly Language | Programming in C](https://www.youtube.com/watch?v=E6jtj-7xJoA) — Jenny's Lectures CS IT
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_1/computer_programming/high-low-level-languages
- Whole chapter: https://www.bctengineer.com/md/semester_1/computer_programming/chapter-1

## Question

Distinguish between high level and low level programming languages.

## Short answer

High-level languages use English-like statements, are machine-independent, portable, and easier to debug but slower. Low-level languages (machine and assembly) are machine-dependent, give direct hardware control, run faster, but are difficult to write and debug.

## Answer

**High-level languages** (C, Java, Python) use English-like statements and are independent of the machine. **Low-level languages** (machine and assembly language) are close to the hardware and depend on the CPU.

| High-level language | Low-level language |
|---|---|
| Easy to learn, read and write | Difficult to learn and write |
| Machine independent (portable) | Machine dependent |
| Needs a compiler or interpreter | Needs an assembler (or none for machine language) |
| One statement becomes many machine instructions | One statement is about one machine instruction |
| Programmer cannot control hardware directly | Direct control of registers, memory and I/O |
| Programs run slower and use more memory | Programs run faster and use less memory |
| Easy to debug and maintain | Hard to debug and maintain |
| Used for application software | Used for device drivers, embedded systems |

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. Which statement is true of high-level languages?
   A. They depend on the CPU
   B. They need no translator
   C. They are only used for device drivers
   D. They are machine independent
   Answer: D. High-level languages are portable across machines. (Key point: Portability)

2. Which type gives direct control of registers, memory and I/O?
   A. Low-level languages
   B. High-level languages
   C. Both equally
   D. Neither
   Answer: A. Low-level languages are close to hardware and give direct control. (Key point: Hardware control)

3. In a high-level language, one statement typically becomes
   A. about one machine instruction
   B. many machine instructions
   C. no machine instruction
   D. one object file
   Answer: B. In low-level languages one statement is about one instruction; high-level statements expand to many. (Key point: Statement to instruction)

4. Low-level languages are typically used for
   A. office application software
   B. web page design
   C. device drivers and embedded systems
   D. report generation
   Answer: C. They are fast and compact, suiting drivers and embedded systems. (Key point: Typical use)

## Related in Computer Programming

- [High level languages; C versus FORTRAN](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Ahll-types-c-vs-fortran) — Computer Programming, chapter 1
- [High level languages and natural language](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Ahll-similar-natural-language) — Computer Programming, chapter 1
- [Generations of programming languages](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Agenerations-programming-languages) — Computer Programming, chapter 1, asked 4×
- [Categories of programming languages](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Acategorise-languages) — Computer Programming, chapter 1

## Related in other subjects

- [Low vs high spin; VBT of [Ni(CO)₄]](https://www.bctengineer.com/question.md?key=semester_2%2Fengineering_chemistry%3Alow-high-spin-ni-co4) — Engineering Chemistry, chapter 6
- [Recirculation in trickling filters; low vs high rate](https://www.bctengineer.com/question.md?key=semester_6%2Fsanitary_engineering%3Atrickling-recirculation-low-high-rate) — Sanitary Engineering, chapter 7
- [Transform given low pass ladder to 2 kHz high pass](https://www.bctengineer.com/question.md?key=semester_5%2Ffilter_design%3Ahighpass-2khz-from-ladder) — Filter Design, chapter 3
- [High and low explosives; TNT preparation](https://www.bctengineer.com/question.md?key=semester_2%2Fengineering_chemistry%3Ahigh-low-explosives-tnt) — Engineering Chemistry, chapter 7, asked 3×
