Operating system: An operating system is software that manages computer hardware and software resources, providing common services for computer programs. Examples include Windows, macOS, and Linux.
Interrupts: Interrupts are signals sent to the CPU from hardware devices, software programs, or user input that temporarily pause the CPU's current task to handle a higher-priority task.
Peripherals: Peripherals are devices that connect to a computer, such as keyboards, mice, printers, and scanners, providing additional input or output functionality.
Firmware: Firmware is a type of software that is embedded in hardware devices and is responsible for controlling the device's behaviour. Interrupt: An interrupt is a signal sent to the CPU that temporarily stops the CPU's current task and switches to a higher-priority task. Applications software: Applications software are programs designed to perform specific tasks for end-users, such as word processing, spreadsheet management, or gaming.
High-level language: A high-level language is a programming language designed to be easy to read and write for humans, often with complex tasks automated behind the scenes.
Low-level language: A low-level language is a programming language designed to be closer to the machine code of the CPU, often with direct control over memory management and hardware.
Assembly language: Assembly language is a low-level programming language that provides a symbolic representation of the machine code instructions for a CPU.
Assembler: An assembler is a program that converts assembly language into machine code instructions.
Machine code: Machine code is the set of binary instructions that the CPU can understand and execute directly.
Compiler: A compiler is a program that translates high-level code into machine code that can be executed by the CPU.
Interpreter: An interpreter is a program that directly executes high-level code without first compiling it into machine code.
IDE: An Integrated Development Environment (IDE) is a software application that provides a comprehensive environment for developing, debugging, and deploying software.
Run-time environment: A run-time environment is the environment in which a program executes, including the operating system, hardware resources, and libraries.
Code editors: Code editors are software programs that provide an environment for editing, managing, and manipulating code, often with features like syntax highlighting and auto-completion.
Translators: Translators are programs that convert code from one language or format to another, often used to port applications across different platforms or environments.
Error diagnostics: Error diagnostics are tools that analyse code for errors, often providing detailed feedback to help developers identify and fix problems.
Auto-completion: Auto-completion is a feature in code editors that automatically suggests code snippets or completions based on context or user behaviour.
Auto-correction: Auto-correction is a feature in code editors that automatically corrects common errors or syntax mistakes in code.
Prettyprint: Prettyprint is a feature in code editors that formats code for readability, often aligning and indenting code blocks to improve readability.