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 2022. Webb, Kazer.
Spring 2023. Wicentowski.
Fall 2023. Staff.
Spring 2024. Staff.
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™).