Introduction to Computer Organization & Systems

Ethics Content Description

The ethics materials for this course have two focuses. First, due to the subject matter of the course, there is a natural focus on security topics such as privacy, trust, partiality, and responsible disclosure. These topics dovetail neatly with the content of the course, such as integer overflows, race conditions, penetration testing, and low level security.

In addition to being an introduction to the C programming language, assembly, and systems, the introduction to systems course is, for many students, an introduction to their role as computing professionals. In this course, they reach a level of computer science maturity and confidence with skills such as debugging that allow them to pursue summer internships and other junior professional roles.

Therefore the second focus of the materials is on the responsible practices of computing professionals, such as documentation, error checking, and the ACM Code of Ethics.

Course Description

Introduction to the fundamental concepts of computer systems. Explores how computer systems execute programs and manipulate data, working from the C programming language down to the microprocessor.

Contributors:

Ethics materials created by Kathleen Creel, Nick Troccoli, and Brynne Hurst.

Assignments created by Julie Zelenski and Michael Chang, with modifications by Nick Troccoli, Chris Gregg, Jonathan Kula, Katie Creel, and Brynne Hurst.

Modules (Assignments + Lectures)

Download all