Tuesday/Thursday 12:30-13:45pm
Wegmans Hall 1400
Instructor: Yuhao Zhu
Course Description

CSC 252 will not be easy, but will be a rare enlightenment and give you unique thrills.

In CSC 172 you learned how to write programs in languages that humans can understand (e.g., Java). CSC 252 will teach you how human-readable programs actually run on a computer. We will explain how to transform a human-readable program to a computer-understandable program, how the computer-understandable program is organized and interfaced with the underlying hardware processor, and how to design hardware processors that can execute programs as fast, safe, and efficient as possible.

Ultimately, our objective is to remove a good deal of the mystery of how modern computers work. There is NO magic. Even if you decide not to be a computer system designer in future, knowing these will empower you to get the computer to do useful work for you. In that vein, we will start at the bottom and work our way up. In every case, when we cover a sophisticated topic, we will try to tie it to what you already know. In this way, you don't have to memorize because everything you will learn next will be built on top of what you have already learned. We expect you to come out of this course not only knowing how modern computers work, having a deeper understanding of why they work as they are, but more importantly, why computers don't have to be built that way!

Review Session Schedule

Two 1-hour review sessions are offered each week. Review sessions are not mandatory. During review sessions, TAs might review course materials from the past week, go over problem sets and past exams, provide an overview of programming assignments, etc. They will be interactive and you are encouraged to ask questions. It is up to the TAs to decide how to run it.

Tuesday 6 PM - 7 PM, in WH 2506 (Rotating across Olivia, Jessica, Max, Sam, Yawo)

Thursday 7:30 PM - 8:30 PM, in WH 2506 (Rotating across Amir, Minh, Yiyang, Yu)

Instructor and TAs
Yuhao Zhu (Instructor)
Email: [yzhu at rochester]
Office hours: Thursday 5 - 6 PM, or by appointment, in Wegmans Hall 3501.
Don' be afraid of coming to office hours! Coming to office hours does not mean you are a weak student. If you just want to stop by and introduce yourself, that's OK also.
Jessica Ervin (Undergraduate TA)
Email: [jervin2 at]
Office hours: Monday 11 AM - 12 PM, in Hylan 301.
Yu Feng (Graduate TA)
Email: [yfeng28 at ur dot rochester dot edu]
Office hours: Thursday & Friday 4 PM - 5 PM, in Hylan 301.
Max Kimmelman (Undergraduate TA)
Email: [mkimmelm at]
Office hours: Tuesday 2 PM - 3 PM, in Hylan 301.
Olivia Morton (Undergraduate TA)
Email: [omorton at]
Office hours: Monday 5 PM - 6 PM, in Hylan 301.
Yawo Alphonse Siatitse (Undergraduate TA)
Email: [asiatits at]
Office hours: Tuesday 11 AM - 12 PM, in Hylan 301.
Yiyang Su (Undergraduate TA)
Email: [ysu16 at]
Office hours: Thursday 9 AM - 10 AM, in Hylan 301.
Amir Taherin (Graduate TA)
Email: [ataherin at]
Office hours: Thursday & Friday 5 PM - 6 PM, in Hylan 301.
Samuel Triest (Undergraduate TA)
Email: [striest at]
Office hours: Monday 12 AM - 1 PM, in Hylan 301.
Minh Tran (Undergraduate TA)
Email: [mtran14 at cs.rochester]
Office hours: Tuesday 4 PM - 5 PM, in Hylan 301.