# Midterm Topics

## Overview

The midterm will cover everything we've done thus far.
The format will be short answer. Below are the topics you
can expect to be on the exam:

## C Programming

- Understanding of pointers, arrays and structures.
- Understand operation of the bitwise operators (
`~`, `&`, `|`, `^`).
- Be able to interpret short C programs.
- Be able to write snippets of C to accomplish some task.

## Game Boy Advance

- Know how the graphics modes of the GBA function at a high level.
- Understand the idea of a hardware register.
- Understand the GBA numerical representation of color.
- Understand writing to video memory, and using a palette.
- Understand the concepts of double-buffering, and the video blank cycle.

You will not need to remember specific memory addresses related to the GBA.

## Numbers and Bases

- Converting back and forth between bases 2, 10 and 16.
- Representing negative numbers with two's complement.

## Logic Circuits

- Understanding of transistors, logic gates and simple circuits.
- Be able to build a simple circuit given a truth table or boolean expression.
- Be able to give the output for circuits given their inputs.

Copyright © 2019 Ian Finlayson | Licensed under a Creative Commons Attribution 4.0 International License.