1/104
BRING THAT MONEY HOME DADDY WAITIN ON IT
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Central processing unit (CPU)
often referred to as the "brain" of the computer. It is a critical component that carries out the majority of the processing inside a device.
Arithmetic logic unit (ALU)
This unit is responsible for performing arithmetic and logic operations.
Control unit (CU)
directs the operations of the processor. It is responsible for the fetch–decode–execute cycle, managing all three operations and directing the computer's memory, ALU and input/output devices to respond appropriately
Registers
very small amounts of storage that are available directly on the CPU to hold temporary data that the CPU may be working on.
instruction register (IR)
When an instruction is fetched from memory, it is held in the __ within the CPU. This register holds the instruction that is currently being executed by the CPU.
program counter (PC)
holds the address of the next instruction that is to be fetched from memory.
memory address register (MAR)
holds the memory address that is currently being fetched.
memory data register (MDR)
This holds the data that has been fetched or is about to be written to the memory address currently in the MAR.
accumulator (AC)
This stores the intermediate arithmetic or logical results produced by the ALU.
control bus
used to transmit command and control signals from the CPU to other components of the system, and vice versa.
data bus
carries the data being processed between the CPU, memory and other peripherals.
address bus
used to transmit the address that is to be read from or written to in memory.
bidirectional
a bus that can transfer data in both directions.
single core processor
This CPU has a single processing unit, meaning it can only handle one task at a time.
multi-core processor
A CPU with multi-core processors has two or more cores that can run multiple instructions simultaneously.
co-processors
a special type of processor that has a specific job to support the main CPU.
graphics processing unit (GPU)
s a specialized electronic circuit designed to accelerate the rendering of images, videos and animations by performing rapid mathematical calculations.
Volatile memory
a type of memory or storage that loses its data when the power is turned off.
Non-volatile memory
it does not lose its contents when the computer does not have power.
V-RAM (video RAM)
The GPU uses its own special memory called
cache
memory is small, but provides high-speed access to the CPU compared to the RAM. It acts as a buffer between the CPU and the slower RAM, storing frequently used data and instructions.
L1 cache
located directly on the CPU, making it the fastest type of cache.
L2 cache
can either be on the CPU, like L1, or situated very close to the CPU.
L3 cache
often located the furthest from the CPU chip.
main memory (RAM)
olds instructions and data for programs that are currently running.
read-only memory (ROM)
used for storing instructions that are very rarely modified.
latency
the delay between the initiation of an action and the corresponding response, often referring to the time it takes for data to travel from its source to its destination in a network or system.
cache miss
when the CPU requests data and it is not found in the cache memory, necessitating retrieval from slower main memory or storage.
cache hit
when the CPU requests data and it is found in the cache memory.
prefetching
a technique where the CPU predicts what data it will need and loads it into cache ahead of time
fetch
The CPU fetches an instruction from the memory
decode
The CPU interprets the instruction and prepares the necessary operations to execute it
execute
The CPU performs the actions required by the instruction
operands
a value used in a mathematical expression.
pipelining
a powerful technique used in multi-core architectures to enhance CPU performance by overlapping the execution of multiple instructions.
multi-core architecture
systems with multiple CPU cores on a single chip, allowing parallel execution of instructions and tasks.
lossless compression
when data is compressed to a smaller size, but can be restored back to the original without any loss of information.
lossy compression
generally outperforms lossless compression when it comes to file sizes; however, it reduces files by permanently eliminating certain information.
run-length encoding
an effective lossless data-compression technique used to reduce the size of files containing many consecutive repeated characters
cloud computing
has revolutionized how organizations manage and deploy IT resources, offering flexible and scalable solutions to meet diverse business needs.
software as a service (SaaS)
delivers software applications over the internet.
platform as a service (PaaS)
provides a cloud-based platform that allows developers to build, test and deploy applications without managing the underlying infrastructure.
infrastructure as a service (IaaS)
provides virtualized computing resources over the internet, such as virtual machines, storage and networks.
binary
(base-2) is the language for modern-day computers
hexadecimal
s a base-16 number system that uses 16 distinct symbols to represent values, rather than the 10 of decimal or 2 of binary.
bit
binary digit; a single digit, either 1 or 0
byte
8 bits
nibble
4 bits
ASCII (American Standard Code Information Interchange)
started out as a 7-bit encoding system, which gave it the ability to represent 128 (2^7) different characters, which was considered sufficient for most basic text data
least significant bit (LSB)
the rightmost bit in a binary number, representing the smallest value position (0 or 1).
quotient
the result obtained when one number is divided by another
integer
a data type used to represent a whole number.
unsigned integer
This system only represents positive integers using straightforward binary digits (0s and 1s)
Two’s complement representation
a method for representing signed integers in binary, where the most significant bit (MSB) indicates the sign (0 for positive, 1 for negative).
Fixed-point representation
is a method used to represent real numbers that can have a very large range or fractional parts. It does this by storing numbers in a format that includes a sign, an exponent and a mantissa (or significand).
mantissa
This represents the significant digits of the number.
exponent
This is used to scale the number by a power of two and is stored using the Excess-127 system in its "biased" form
logic gates
fundamental components in digital electronics, crucial for building various types of circuits within computers and other digital devices. The basic types of logic gates include AND, OR and NOT gates, each performing a specific logical function.
truth tables
systematically list all possible input combinations and their corresponding outputs, providing a clear representation of the gate's function.
Karnaugh maps (K-maps)
are a tool that helps simplify Boolean expressions, making it easier to create simpler and more efficient digital circuits.
actuators
are the components in a control system that carry out the physical actions or adjustments in response to commands from the controller.
base case
a terminating solution that is not recursive to a process.
Big O notation
used to find the upper bound (worst-case scenario) or the highest possible amount of the growth of a function: the longest time or space required to turn the input into output.
buffering
the process of temporarily storing data in a memory area (buffer) while it is being transferred between two devices or processes, helping to manage differences in data-flow rates and ensuring smooth, uninterrupted operation.
Caching
the process of temporarily storing frequently accessed data in a high-speed storage area (cache) to reduce access time and improve system performance by enabling quicker retrieval of the data.
controller
the central component of a control system that governs the operation by processing inputs and generating appropriate outputs.
deadlock
a problem in multitasking systems where processes get stuck because each one is waiting for a resource that another process has, creating a cycle with no way to move forward.
defragmentation
the process of reorganizing the data on a hard drive so that files are stored in contiguous blocks, reducing fragmentation and improving access speed and overall system performance.
device drivers
specialized software programs that allow the operating system to communicate with and control hardware devices, e.g. printers, graphics cards or network adapters, by providing the necessary instructions and protocols.
file extension
a suffix at the end of a filename that indicates the file type and the program associated with opening or processing that file (e.g. .docx for Word documents, .jpg for images).
general case
Hypervisor
software that creates and manages virtual machines by allowing multiple operating systems to run simultaneously on a single physical machine, sharing the underlying hardware resources.
Interrupt service routine (ISR)
a special function in a computer system that automatically executes in response to an interrupt signal, handling specific tasks, e.g. processing input from hardware devices or managing system events, before returning control to the main program.
load balancing
the process of distributing network or application traffic across multiple servers or resources to ensure optimal performance, reliability and availability, preventing any single server from becoming overwhelmed.
Malware
a general term for any software designed with malicious intent, e.g. viruses, worms, trojans, spyware and ransomware, which can damage systems, steal data or disrupt operations.
memory management
is a fundamental function of an operating system (OS), involving the control and co-ordination of a computer's primary memory (RAM).
Monopolize resources
the control or domination of the use of system resources (e.g. CPU, memory or network bandwidth) by a single process or user, often to the detriment of other processes or users, leading to inefficiency or system slowdowns.
Plug and Play (PnP)
a technology that allows the operating system to detect, configure and install drivers automatically for new hardware devices when they are connected to the computer, enabling them to work without requiring manual setup by the user
Recursion
represents a technique that involves the use of functions, procedures or algorithms calling themselves one or more times until one or more specific conditions are met, at which point the process unwinds itself to produce a solution, by processing the last call to the first.
Security tokens
physical or digital devices that generate or store authentication credentials, such as one-time passwords or cryptographic keys, used to verify a user's identity and secure access to systems, networks or online services.
Sensors
are devices that detect and measure physical quantities from the environment or the system itself, such as temperature, pressure, speed or light.
Spooling
the process of queuing data or tasks in a buffer, typically for input/output devices such as printers, so that they can be processed sequentially and at their own pace, allowing the system to continue working on other tasks in the meantime
Transducers
are devices that convert one form of energy into another, typically used to bridge the gap between sensors and actuators and the control system.
Unwinding
a process occurring when the base case is reached, and the values are returned to build a solution.
Virtual memory
a memory-management technique that allows a computer to use more memory than is physically available by temporarily transferring data from RAM to disk storage, enabling the execution of larger programs and multitasking.
Winding
a process occurring when recursive calls are made until the base case is reached.
Problem specification
short, clear explanation of an issue, which may include: a problem statement, constraints and limitations, objectives and goals; input and output specifications, and evaluation criteria.
Stakeholder
an individual or group(s) of people within or outside an organization who are affected or think they are affected by a software development project.
Problem statement
a description of the problem itself, identification of who the solution is designed for, the issues encountered and what needs to be solved.
Computational thinking
a toolkit of available techniques for problem-solving, its fundamental concepts are abstraction, decomposition, algorithmic thinking and pattern recognition.
Algorithm
a finite sequence of instructions that needs to be followed step-by-step to solve a problem.
Decomposition
breaking down complex problems into smaller, more manageable parts.
Abstraction
having a higher-level, simplified model to represent a complex system. It allows you to focus on the core ideas or concepts that matter, without being overly concerned about the intricate details of implementation.
Pattern recognition
identifying similarities in the details of problems.
variable
a designated memory location that stores a value that can change during the execution of a program.
String
a data type used to represent a sequence of characters, digits and/or symbols.
Assignment
to set, reset or copy a value into a variable.
Comment
a note that explains some code, which will be ignored at compilation stage.
Function
a set of statements that can be grouped together and called in a program as needed; they always return at least one value.
Float
a data type used to represent a decimal number.