1/30
Comprehensive vocabulary flashcards covering basic assembly concepts, processor architectures, memory hierarchy, timing parameters, virtual memory, and storage devices.
Assembly Language
A human-readable form of machine language or machine code that uses mnemonics instead of binary, octal, or hex.
Assembler
A program that reads an assembly language program and parses it into machine code for a specific processor architecture.
Cross Assembler
An assembler run on a general-purpose computer that produces machine code for a different kind of processor.
Data Section
An assembly program section used specifically for declaring initialized data or constants.
BSS Section
An assembly program section declared as section.bss that is used for declaring variables.
Text Section
An assembly program section used for keeping actual code, which must begin with the declaration global _start.
Assembler Directives (Pseudo-ops)
Non-executable statements that inform the assembler about aspects of the assembly process without generating machine language instructions.
Macro
A statement type in assembly language that functions basically as a text substitution mechanism.
CISC (Complex Instruction Set Computer)
A general type of processor characterized by having many different and often complex machine language instructions.
RISC (Reduced Instruction Set Computer)
A processor architecture that features fewer and simpler instructions compared to CISC.
Toolchain
A software package that often consists of a compiler, assembler, and linker, such as the GNU binutils package.
Embedded System
A device other than a general-purpose computer that contains a microprocessor inside, such as a television, microwave oven, or engine control unit.
Subroutine
A block of instructions that performs a specific task and can be executed from various points in the main program via call, jump, or branch instructions.
Effective Address
The offset value that, when combined with the segment start address (typically in the DS register), identifies a data location in memory.
Direct-Offset Addressing
A memory addressing mode that utilizes arithmetic operators to modify an address.
Indirect Memory Addressing
An addressing mode that utilizes base registers (EBX, EBP) and index registers (DI, SI) for segment:offset addressing, commonly used for array elements.
Associative Access
A memory access method (used in cache) where data is located by comparison with the contents of a portion of the store, with access time independent of location.
Memory Cycle Time
The time required for memory to recover before the next access can begin, calculated as latency plus recovery time.
Bandwidth (Memory Bandwidth)
The rate at which data can be read from or stored into semiconductor memory by a processor, usually expressed in bytes/second.
High-Order Interleaving
A memory interleaving technique (memory banking) where the most significant bits select the memory chip and the least significant bits are sent as addresses to each chip.
Low-Order Interleaving
A memory interleaving technique where the least significant bits of the address are used to select the memory bank or module.
CAS (Column Address Strobe)
A memory timing parameter defining the number of clock cycles required to access data in a new column.
tRCD (RAS to CAS Delay)
The minimum number of clock cycles the memory controller must wait for a new row.
tRP (Row Precharge)
The minimum number of clock cycles the memory controller must wait for the current row to close.
tRAS (Row Active Time)
The minimum number of clock cycles the memory controller must wait between opening and closing a row.
Command Rate (CMD)
The number of cycles an instruction must be presented to assure that it is ready by the memory, with typical values of 1T and 2T.
Cache Coherence
The uniformity of shared resource data that ends up stored across multiple local caches.
Memory Management Unit (MMU)
A hardware component built into modern general-purpose microprocessors that translates virtual addresses into physical addresses.
Page Fault
An event that occurs when a program attempts to access a block of memory that is not currently stored in physical memory (RAM).
Solid-State Drive (SSD)
A non-volatile storage device with no moving parts that uses special floating gate transistors to store data electronically.
Hybrid Storage Device
A storage device combining an HDD with an SSD to take advantage of HDD storage capacity and SSD speed.