CSCI 237

Computer Organization

Home | Lectures | Labs | Links | CS@Williams

The table below lists the practice problems from the book that test topics we emphasized in class. I recommend completing these practice problems to reinforce the course material in prepration for the exam.

Problem Page Topics Covered (Notes)
Ch. 2 31 Data Representation
2.17 65 Converting Hexadecimal to binary representations; unsigned vs. twos-complement.
2.22 79 Sign extension. (Equation 2.3 is on page 64)
2.23 80 Arithmetic shifting.
2.24 82 Effect of truncating on signed/unsigned.
2.29 93 Signed addition; overflow.
2.30 94 Overflow. (No need to compile the code, but this solution should help with add_ok in the lab)
2.45 111 Binary fractional values.
2.47 117 IEEE Floating point encoding/decoding.
Ch. 3 163 Assembly
3.1 182 Addressing/Operand Forms
3.2 185 Operand sizes
3.6 192 Load Effective Address
3.8 194 Arithmetic Operations
3.11(A) 197 Assembly Tricks
3.13 204 Comparisons
3.16 212 C if/else ↔ C goto code
3.18 213 if/else ↔ assembly
3.24 224 while loops ↔ assembly
3.27 231 C for loop ↔ C goto code
3.28 231 for ↔ assembly
3.30 236 Switch Statements
3.33 246 Procedure Arguments, Registers, & the Stack
3.34 253 Local storage & caller/callee saved registers
3.36 256 Arrays and addressing
3.40 262 Nested Array iteration and memory layout
3.41 268 Struct data types
Ch. 4 Y86-44 and Processor Design
4.1 360 Encoding Y86_64
4.2 360 Decoding Y86_64
4.4 370 C ↔ Y86_64
4.13 387 Instruction Processing Stages
Ch. 6 The Memory Hierarchy
6.2 592 Hard disk parameters
6.4 595 Hard disk access patterns
6.8 609 C code and spatial locality
6.9 616 Cache parameters
6.10 624 Direct-mapped caches
6.12-6.15 628 Set-associative caches
6.21 643 Locality & Memory Mountains
Ch. 9 Virtual Memory
9.1 805 Virtual Address Sizes
9.2 807 Page Table Entries
9.3 816 Address Translation
9.4 824 Address Translation with TLBs
9.6 849 Implicit free lists: Block size & header values
9.7 852 Minimum block sizes
9.10 864 Fragmentation and segregated lists