Students will be introduced to fundamental topics in computer architecture, with an emphasis on understanding computers as digital hardware systems. These concepts described in lectures will be illustrated in additional detail through directed programming laboratory exercises.