CSE 410 Midterm Review Guide
Midterm: Wednesday, October 27th
Closed book, closed notes
Chapter 1
abstraction
assembler
assembly language
binary digit or bit
compiler
high-level programming language
implementation
instruction set architecture
memory
Chapter 3
address
addressing mode
base or displacement addressing
callee
caller
conditional branch
data transfer instruction
executable file
immediate addressing
instruction format
instruction set
jump-and-link instruction
linker or link editor
load-store machine
loader
object program
opcode
PC-relative addressing
procedure
procedure frame
program counter (PC)
pseudoinstruction
register addressing
return address
stack
stack pointer
stored-program concept
word
Chapter 6
branch or control hazard
branch prediction
data dependencies
data hazard
flush (instructions)
forwarding
latency (pipeline)
pipeline stall
speculative execution
structural hazard
Chapter 7
block
cache miss
capacity miss
compulsory or cold start miss
conflict or collision miss
direct-mapped cache
effective access time
fully associative cache
hit rate
least recently used (LRU)
memory hierarchy
miss rate
multilevel cache
set-associative cache
spatial locality
split cache
tag
temporal locality
valid bit
write-back
write-through
Chapter 8
bus
direct memory access (DMA)
I/O instruction
interrupt-driven I/O
memory-mapped I/O
polling
rotation time
sector
seek time
track
transfer time
Look over the solution guides for any homework questions you got wrong. Some homework questions may reappear on the midterm or the final.
Chapter 3
Know the following MIPS instructions:
add, sub, lw, sw, beq, bne, slt, j, jr, jal
Array indexing and variable array indexing
Instruction encoding: R-format, I-format, and J-format
Control flow with conditional branch and unconditional jump
Procedure call: use of the stack, calling conventions, recursive procedure call
Addressing modes
Starting a program: compiling, assembling, linking, and loading
Chapter 6
Pipelining
The stages of instruction execution: Instruction fetch, instruction decode, execute, memory access, and write back
Latency, throughput, and speedup
Hazards: structural hazards, control hazards, and data hazards
Dealing with hazards: pipeline stall, data forwarding, speculative execution, out of order execution, branch prediction
Chapter 7
The memory hierarchy
Effective access time
Exploiting temporal and spatial locality
Block placement: direct mapped, set associative, fully associative
Block lookup: Indexing, searching, lookup tables
Block replacement: random, least recently used
Write policies: write-through, write-back
The three C’s: compulsory misses, capacity misses, and conflict misses
Chapter 8
The system bus
Types of I/O devices: input, output, input and output, storage
I/O partners: human, machine
Components of disks: spindle, platters, tracks, sectors, cylinders
Accessing a disk: seek time, rotation time, transfer time