CPSC 031. Introduction to Computer Systems

This course is a broad introduction to computer science that focuses on how a computer works and how programs run on computers. We examine the hardware and software components required to go from a program expressed in a high-level programming language like C or Python to the computer actually running the program. This course takes a bottom-up approach to discovering how a computer works. Topics include theoretical models of computation, data representation, machine organization, assembly and machine code, memory, I/O, the stack, the operating system, compilers and interpreters, processes and threads, and synchronization. This course also introduces parallel and distributed computing with a specific focus on shared memory parallelism for multicore and SMP systems.
Prerequisite: CPSC 021  or equivalent.
Natural sciences and engineering practicum.
Lab work required.
1 credit.
Fall 2021. Danner, Wicentowski
Spring 2022. Staff.
Fall 2022. Staff.
Fall 2023. Danner, Newhall.
Catalog chapter: Computer Science  
Department website: https://www.swarthmore.edu/computer-science

Check the Spring 2021 Schedule of Courses

Check the Fall 2021 Schedule of Courses

Print-Friendly Page (opens a new window)