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.
Fall 2021. Danner, Wicentowski
Spring 2022. Wicentowski
Fall 2022. Staff.
Spring 2023. Staff.
Fall 2023. Danner, Newhall.
Catalog chapter: Computer Science
Department website: https://www.swarthmore.edu/computer-science
All catalogs © 2022 Swarthmore College.
Powered by the Acalog™ Academic Catalog Management System™ (ACMS™).