---
# System prepended metadata

title: Low-level and High-level Programming language

---

Low-level and High-level Programming language
---
Programming languages are often grouped into low-level and high-level languages based on how close they are to the computer’s hardware.

**Low-Level Programming Languages**
Low-level languages are close to hardware and give more control over system resources.

**Types**
**1.** **Machine Language**
* Binary code (0s and 1s)
* Directly executed by the CPU
* Example: 10101000 00000001

**2. Assembly Language** **:**
    Is the low-level programming language that provides a human-readble symbolic representation of computer's specific machine code instructions.
    
*  Uses mnemonics instead of binary
* Requires an assembler


High-Level Programming Languages
---
High-level languages are user-friendly and closer to human language.

**Examples**

* Python
* Java
* C++
* JavaScript
* C#
* PHP

Transletor
---
A translator is system software that converts a program written in a high-level or assembly language into machine language so that the computer can execute it.

**Types of translators**
**1. Compiler**
*  Translates the entire source code at once
* Produces machine code or bytecode
* Errors are shown after compilation
**Examples:**
C, C++ → machine code
Java → bytecode (via javac)

**2. Interpreter**
* Translates and executes line by line
* Stops at the first error 
* No separate executable file

**Examples:**
Python
JavaScript

Main types of errors
---
Errors are bugs or mistakes in a program that prevent it from working correctly.

**1. Syntax Errors**
* Mistakes in grammar of the language
* Detected by compiler or interpreter
* Program will not run

**2. Runtime Errors**
* Occur while the program is running
* Program starts but crashes

**3. Logical Errors**
* Program runs but gives wrong output
* Hardest to find




