CSCI 237
Computer Organization
Home | Schedule | Assignments | Links | Williams CS
Home
| Instructors: |
Bill Jannen Iris Howley |
| Instructor Email: | cs237staff@williams.edu |
| Office Hours: | M 1:30-3:00pm, Tu 3-4:30pm in TBL 301 |
| Class Meeting Times: | MWF 10-10:50am, 11-11:50am in Wachenheim 017 |
| Lab Meeting Times: | W & Th 1-2:30pm, 2:30-4pm in TBL 301 |
| Required Textbook: | Computer Systems: A Programmer's Perspective (3rd Edition),
by Randal E. Bryant and David R. O'Hallaron |
| Recommended C Reference: | The C Programming Language (2nd Edition),
by Brian W. Kernighan and Dennis M. Ritchie Note: You do not have to buy this book, but it is a fantastic reference. There are several copies on reserve in the science library. |
| TAs: |
Alex Moon,
Amirjon Ulmasov,
Dean Safran,
Eric Zhou,
Ian Kim,
Irenee Niyibaho, Natalia Nolan, Ryan Guo, Susanna Boberg, and Tashrique Ahmed |
| TA schedule: | calendar below |
Course Description
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, distributed systems, and graphics, where a deeper understanding of systems-level issues is required. At the same time, a model of computer hardware organization is developed from the gate level upward. Topics covered include: machine-level code and its generation, performance evaluation and optimization, computer arithmetic, memory organization and management, and (maybe) networking protocols and supporting concurrent computation.
Policies
Course Syllabus
Department Honor Code and Account Agreement
Course Support Schedule (TAs and office hours)