12 units
This course provides a programmer's view of how computer systems execute programs, store information, and communicate. It enables students to become more effective programmers, especially in dealing with issues of performance, portability and robustness. It also serves as a foundation for courses on compilers, networks, operating systems, and computer architecture, where a deeper understanding of systems-level issues is required. Topics covered include: machine-level code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, memory organization and management, networking technology and protocols, and supporting concurrent computation. NOTE: students must achieve a C or better in order to use this course to satisfy the pre-requisite for any subsequent Computer Science course.
Prerequisites: 15-123 (Grade of C or higher is required in the prerequisite)
Prerequisite for: 18-348, 18-349, 18-447, 18-487, 18-545, 18-748
Last updated on November 4, 2008
Computer Hardware
Core
This course is currently being offered.
S10
S09
Please note that the course history information is incomplete and/or may reflect different courses offered under the same course number.