Quiz Structure

As discussed in the syllabus, the quizzes in this class are meant to assess your proficiency on a specific set of learning objectives. Each quiz will have a posted set of learning objectives that you can demonstrate proficiency/mastery in for that quiz, and each learning objective will appear on at least 2 quizzes.

Quiz Learning Objectives

The learning objectives that have appeared (or soon will) on quizzes will be listed here.

  • Explaining how arrays are stored in memory
  • Using null-terminated strings
  • Using pointers
  • Using pointer arithmetic
  • Using binary notation
    • Converting from unsigned binary to decimal and hex
  • Using hexadecimal notation
    • Converting from hex to binary and decimal
  • Using two’s complement representation
    • Proficiency: Negating a positive binary value with two’s complement
    • Mastery: Converting from decimal to two’s complement form
  • Using bit-level operations
    • Proficiency: solve given bitwise operation
    • Mastery: Use mask to make bitwise transformation
  • Using UTF-8 encoding (with table provided)
    • Proficiency: codepoint that only needs 1 byte
    • Mastery: codepoint that needs 2 bytes
  • Interpreting assembly addressing modes
    • Proficiency: constant, registers, basic memory
    • Mastery: Offsets, indexing, and scaling
  • Interpreting core assembly instructions
    • Proficiency: mov, add
    • Mastery: sub
  • Explaining the call stack
    • Proficiency: Draw call stack after push/pop
    • Mastery: Identify locations on the call stack with offsets
  • Interpreting assembly jumps
    • Proficiency: Determine outcome of cmp jump sequence
    • Mastery: Determine outcome of test jump sequence
  • Identifying core assembly structures (such as loop vs recursion vs conditional etc)
  • Explaining high-level functionality of given assembly (similar to HW6.1)
  • Explaining fork call execution
    • Proficiency: Single fork call
    • Mastery: Multiple fork calls
  • Explaining cache address division
    • Proficiency: direct-mapped
    • Mastery: Set associative
  • Explaining cache designs
    • Proficiency: Identify cache design based on parameters
    • Mastery: Explain how parameters determine cache design

You can see how you are doing on each of these on Moodle under the “Grades” tab. I will continue to update this page throughout the term.