Chapter 2 Vocab Flashcards
lui
load upper immediate
puts the upper 16 bits of a constant into a register, allowing a subsequent instruction to specify the lower 16 bits of the constant
$fp
frame pointer
a value denoting the location of the saved registers and local variables for a given procedure
$gp
global pointer
the register that is reserved for pointing to the static area
$sp
stack pointer
a value denoting the most recently allocated address in the stack that shows where registers should be spilled or where old register values can be found
(PC)
program counter
the register containing the address of the instruction in the program currently being executed
procedure frame
also called the activation record
the segment of the stack containing a procedure’s saved registers and local variables
data transfer instructions
a command that moves data between memory and registers (sw, lw)
PC-relative addressing
an addressing regime in which the address is the sum of the PC and a constant in the instruction
immediate addressing
the operand is a constant within the instruction itself
register addressing
the operand(s) is a register
base addressing
the operand is at the memory location whose address is the sum of a register and a constant in the instruction
instructions that use this:
- lw
- sw
pseudo-direct addressing
the jump address is the 26 bits of the instruction concatenated with the upper bit of the PC
instructions that use this:
- j
- jal
format:
op (6 bits) address (26 bits)
ble
branch on less than or equal (pseudo instruction)
ble rs, rt, Label
translates to: slt, bne
instruction set
the vocabulary of a computer’s language
stored-program concept
the idea that instructions and data of many types can be stored in memory as numbers
address
a value used to delineate the location of a specific data element within a memory array
offset
a constant value added to a base address to locate a particular element
alignment restriction
a requirement that data be aligned in memory on natural boundaries
spilling registers
the process of putting less commonly use variables into memory
overflow
when the results of an operation are larger than can be represented in a register
instruction format
a form of representation of an instruction composed of fields of binary numbers
machine language
a binary representation of machine instructions
machine code
a sequence of instructions in machine language
basic block
a sequence of instructions without branches (except maybe at the end) and without branch targets (except maybe at the beginning)
instruction
the words of a computer’s language
jump address table
also called jump table
a table of addresses of alternative instruction sequences
procedure
a stored subroutine that performs a specific task based on the parameters with which it is provided in the execution of a procedure
caller
the program that instigates a procedure and provides the necessary parameter values
callee
a procedure that executes a series of stored instructions based on parameters provided by the caller and then returns control to the caller