Ch.2 Instructions: Language of the Computer
One major difference between the variables of a programming language and registers is the limited number of registers, typically ____ on current computers, like MIPS.
32
The size of a register in MIPS architecture is ____ bits; groups of ____ bits occur so frequently that they are given the name ____ in the MIPS architecture.
32, 32, word
In MIPS, words must start at addresses that are multiples of ____. This requirement is called an ______ ________, and many architectures have it.
4, alignment restriction
A value used to delineate the location of a specific data element within a memory array.
address
A requirement that data be aligned in memory on natural boundaries.
alignment restriction
Does MIPS use big-endian addressing or little-endian addressing?
big-endian
MIPS assembly language includes two decision-making instructions, similar to an if statement with a go-to. They are ____ ____ ____ (__) and _______ ___ ______ _____ (__).
branch if equal (beq), branch if not equal (bne)
Virtually all architectures today address individual _______.
bytes
Design 3: Good design demands good _________.
compromises
Processors can only keep a small amount of instructions in registers so how do they handle data structures such as arrays? They are kept in memory. Therefore, MIPS must include instructions that transfer between the processor and memory. Such instructions are called _____ _____ instructions.
data transfer
A command that moves data between memory and registers.
data transfer instructions
Design Principle 2: Smaller is _____.
faster
Numbers in base 16.
hexadecimal
Instructions are kept in the computer as a series of _____ and ______ electronic signals and may be represented as _______.
high, low, numbers
A form of representation of an instruction composed of fields of binary numbers.
instruction format
The vocabulary of commands understood by a given architecture.
instruction set
The rightmost bit in a MIPS word.
least significant bit
MIPS offers two flavors of byte loads: ___ _____ (__) treats the byte as a signed number and thus sign-extends to fill the 24 left-most bits of the register. _____ ______ _______ (__) works with unsigned integers.
load byte, (lb), Load byte unsigned, (lbu)
The data transfer instruction that copies data from memory to a register is traditionally called load. The actual MIPS name for this is ____, which stands for ______ ______.
lw, load word
Binary representation used for communication within a computer system.
machine language
The compiler tries to keep the _____ _______ _______ variables in registers and places the rest in memory, using loads and stores to move variables between registers and memory.
most frequently used
The leftmost bit in a MIPS word.
most significant bit
Since registers are referred to in instructions, there must be a convention to map register names into ______. In MIPS assembly language, registers ____ to _____ map onto registers 16 to 23, and registers ____ to ____ map onto registers 8 to 15.
numbers, $s0, $s7, $t0, $t7
Each MIPS arithmetic instruction performs only ____ operation and must always have exactly _____ variables.
one, three
The field that denotes the operation and format of an instruction.
opcode
The format of a store is similar to that of a load: the name of the ______, followed by the register to be______, then ____ to select the array element, and finally the _____ ______.
operation, stored, offset, base register
In twos complement representation, the leading 0s mean ______ and leading 1s mean _____.
positive, negative
Design Principle 1: Simplicity favors _______.
regularity
In binary, negative numbers are _______ numbers.
signed
The process of putting less commonly used variables or those needed later is called _______ registers.
spilling
The instruction complementary to load is called ______.
store
The idea that instructions and data of many types can be stored in memory as numbers, leading to the stored-program computer.
stored-program concept
The actual MIPS name for store is _____, which stands for _____ ______.
sw, store word
In binary, positive numbers are ______ numbers.
unsigned
The compiler associates ______ with registers.
variables