A 64 bit register the CPU uses to put addresses for memory accesses on the address
bus
Memory Address Register (MAR)
A 64 bit register which the CPU uses to put data on the data bus for writes, or to retrieve
data from the data bus for reads from memory
Memory Data Register (MDR)
A collection of intertwined hardware and systems software that must cooperate in order
to achieve the ultimate goal of running application programs
System
A directive needed by the linker for symbol resolution, followed by the name of the
function
.globl
A logic element that does not store state, the output depends only on the current input
Combinatorial Logic Element
A logic element that is capable of storing state, has memory and can store prior states
Sequential (clocked) Logic Element
A method of optimizing a processor by predicting what instructions will be computed
next
Speculative execution
A requirement of the x86-64 ABI, should be satisfied prior to any call.
stack alignment
A value too large for representation
overflow
A value too small to be represented, not as serious because it's comparable to a loss of
precision, which can be approximated by zero.
underflow
Address displacement syntax
displacement (src, index, scale)
Adds first argument to second argument
add
, Allows a name to be assigned to the assembly language source code file
.file
Arithmic logic unit, sets the condition flags
ALU
.byte data size
1 byte (8 bits)
Changes or sets the current section to the data section
.data
Changes or sets the current section to the text (or code) section
.text
changing a given bit pattern to a related one
Data Transformation
chips that reside on the motherboard
Controller
Computes address math, does not touch memory or affect condition codes
lea
Computes bitwise NOT
not
Computes bitwise OR
or
Computes bitwise XOR
xor
Computes biwise AND
and
Data called by the program that is likely to be called again, EX: indexes in for loops
Temporal Locality
Do displacements require dollar signs?
No
Does the stack grow towards higher or lower addresses?
Lower
Dynamic Ram, slow memory dense needs constant refresh