What programming paradigm involves giving a series of specific steps for the computer to follow?
Imperative programming
What type of programming language has a high level of abstraction?
High-level language
What command process takes C source code and produces assembly code?
Compiler
What open-source organization developed the GCC compiler?
GNU Project
What does IoT stand for?
Internet of Things
What programming paradigm organizes code into reusable “objects” that contain data and functions?
Object-oriented programming
Give an example of a high-level language.
Javascript
What process happens after compiling and before linking?
Assembling
What low-level code provides a direct interface to hardware?
Firmware
Give an example of an IoT device.
Smart thermostat, motion sensor, or light bulb
Which type of programming allows multiple tasks to run at the same time?
Concurrent programming
What is a low-level programming language example?
Assembly
What is the output of the linking process?
Executable program
What type of processor helps render real-time graphics in games?
GPU
What computing approach uses multiple processors working together simultaneously?
Parallel computing
What is a disadvantage of using GOTO statements in programming?
It can make code hard to read and maintain.
Which level of programming language is often used to build operating systems and kernels?
Middle-level
What type of variable in C stores the memory address of another variable?
Pointer
What happens when memory is allocated but never released?
Memory leak
Difference between high-level vs low-level languages & abstrction
High-level languages are less labor-intensive due to abstraction; programmers can focus on structure instead of hardware details. Low-level languages require managing specific architecture and hardware directly.
What paradigm is associated with executing parts of a program simultaneously to increase performance?
Parallel programming
Explain one advantage of high-level languages compared to low-level languages.
Easier to write and maintain; less hardware-specific.
Why might static libraries be less efficient than dynamic libraries?
They duplicate code in executables and must be re-linked for every update.
What type of file is provided when creating a library for other programs to integrate?
Shared object or dynamic linked library
Describe how parallel computing improves performance.
It allows multiple processes to execute at once, reducing runtime for large tasks.