Some of the more important things that you should know for the exam include
those items listed below.  These items have been listed in the approximate
order in which they were covered in the course, grouped by chapter/appendix
of the lecture notes.

Chapter 1: Introduction

  * know basic signals/systems terminology and notation (e.g., definitions of
    signal, system, continuous-time, discrete-time, analog, digital, 1D,
    multidimensional, multi-input, single-input, etc.)

Appendix A: Complex Analysis

  * know Euler's formula
    (be able to express sin and cos in terms of exponentials and vice versa)
  * know basics of complex numbers (e.g., Cartesian/polar form, real/imaginary
    part, magnitude, argument, principal argument, addition, multiplication,
    division, conjugation)
  * know definition of polynomial and rational function
  * know definition of poles/zeros, order of pole/zero, how to find
    and plot poles/zeros of a rational/polynomial function
  * know basic properties of polynomial and rational functions
    (e.g., where they are continuous, differentiable, and analytic)

Chapter 2: Continuous-Time Signals and Systems

  * understand transformations of independent/dependent variable
  * know the definitions of time reversal, time scaling, time shifting
  * know the definitions of amplitude scaling, amplitude shifting
  * understand what each transformation does to a signal
  * be able to plot transformed versions of signals
  * understand how to interpret/plot combined transformations
  * know the definition of even and odd signals (e.g., x(-t) = x(t), etc.)
  * know the properties of even/odd signals for addition/multiplication
  * know formulas for determining even and odd part of signal
  * know the definition of periodic signal
  * know the definition of period, fundamental period, frequency
  * know the properties of periodic signals for addition
    (i.e., know how to determine if the sum of two or more periodic
    functions is periodic)
  * know definitions of left-sided, right-sided, two-sided, finite-duration,
    time-limited, causal, anticausal signals
  * know definitions of elementary signals (e.g., real sinusoidal,
    complex exponential, unit-step, unit-impulse)
  * know properties of unit-impulse function (e.g., equivalence, sifting)
  * understand how to represent piecewise linear/polynomial and other
    types of functions using expressions involving unit-step functions
  * know definitions of cascade/series and parallel interconnection
  * know definitions of system properties: memoryless, invertible,
    causal, stable, linear, time invariant, additive, homogeneous,
  * be able to precisely state the conditions that must be satisfied
    for each property
  * be able to determine if a system has each one of these properties

Chapter 3: Continuous-Time Linear Time-Invariant Systems

  * definition of convolution
  * properties of convolution (distributive, associative, commutative)
  * how to compute convolution using graphical methods
  * relevance of convolution to LTI systems (i.e., y(t)=x(t)*h(t))
  * characterizing LTI systems via impulse response and convolution
  * impulse response: definition, how to calculate from system equation or
    step response
  * step response: definition
  * series and parallel interconnection of LTI systems and effect on
    impulse response
  * system properties and their relationship with impulse response:
    memoryless (i.e., h(t) nonzero only at t=0), invertibility, causality,
    BIBO stability (e.g., h(t) is absolutely integrable)
  * complex exponentials are eigenfunctions of LTI systems (understand what
    this means)
  * system/transfer function and response of LTI system to weighted sum of
    complex exponentials
  * understand what is meant by the system function and how the system
    function can be used to determine the output for a given input
    (in the case of a LTI system)

Appendix E (MATLAB)

  * basic language syntax
  * arrays (i.e., vectors/matrices), array subscripting
  * arithmetic operators (e.g., +, -, *, /, ^, .*, ./, .^)
  * relational operators (e.g., ==, ~=, <, <=, >, >=)
  * logical operators (e.g., &, |, ~)
  * basic looping constructs (e.g., for, while)
  * basic conditional constructs (e.g., if-then-else)
  * user-defined functions
  * know some very basic functions (e.g., size, length, real, imag, abs,
    angle, plot)