Computer Organization & Systems

Announcements

  • Assign6, which includes binary bomb, released Tue Feb 20 by Chris Assign6 is out today -- it is due Wednesday, February 28th, with a 1-day grace period until Thursday March 1st. Enjoy!
  • Assign 3 Grades released Thu Feb 15 by Chris You should have received an email about your assign 3 submission (check your spam folder if you didn't). You can find your grade report at https://cs107.stanford.edu/cgi-bin/assign0. Your full gradebook is online, as well. The median was 90.
  • Assignment 5 (short) released Thu Feb 15 by Chris Assignment 5 has been released and is due on Monday February 19 at 11:59pm with no grace period. It is a very short assignment that has a small floating point reading exercise (you may need to use gdb to figure it out), and another gdb exercise that will prepare you for next week's assignment, binary bomb.
  • Partial screencast from Monday's lecture Tue Feb 13 by Chris Although the full screencast for Monday's lecture (Assembly 2) wasn't uploaded (the audio didn't record), I put together a little screencast of the last part of the lecture, which is super important. Please check it out on the syllabus page.
  • Midterm Grades released Sun Feb 11 by Chris Great job on the midterm! The median was 51/65 (78%). You should have received an email about your midterm from gradescope.com. Please take a look at the solution key. Please follow the instructions in the Key for regrade requests.
  • Assign 2 Grades released Tue Feb 6 by Chris You should have received an email about your assign 2 submission (check your spam folder if you didn't). You can find your grade report at https://cs107.stanford.edu/cgi-bin/assign0. Your full gradebook is online, as well. The median was 97 -- great job on the assignment!
  • Assign 0 Grades released Fri Jan 19 by Chris You should have received an email about your assign 0 submission (check your spam folder if you didn't). You can find your grade report at https://cs107.stanford.edu/cgi-bin/assign0. Your full gradebook is online, as well.
  • Assign1 posted Tue Jan 16 by Chris Assignment 1 has been posted. The readup includes a walkthrough video which should help to get you started. Be sure to come to office hours early with conceptual questions, if you have them. The assignment is due next Monday at midnight for a 5% on-time bonus.
  • Lecture 3 Screencast posted Mon Jan 15 by Chris Lecture 3 Screencast has been posted. Please either watch the video, or read the course reader chapter on Bits and Bytes before you go to lab this week.
  • Assign0 posted and lab signup open Tue Jan 9 by Chris Assign0 has been posted and lab signups are open.
  • Welcome! Mon Jan 8 by Chris This is the website for CS 107, Winter 2018. The website will have more information by Tuesday, January 9th, but for now, a good place to start would be to take a look at the course reader. See you in class!

Course information

CS107 is the third course in Stanford's introductory programming sequence. Our CS106 courses provide students with a solid foundation in programming methodology and abstractions and CS107 follows on to build up their programming maturity and expand breadth and depth of experience. The course will work from the C programming language down to the microprocessor to de-mystify the machine. With a complete understanding of how computer systems execute programs and manipulate data, you will become a more effective programmer, especially in dealing with issues of debugging, performance, portability, and robustness. Topics covered include: the C programming language, data representation, machine-level code, computer arithmetic, elements of code compilation, optimization of memory and runtime performance, and memory organization and management.

The class has two lectures a week and a weekly lab designed for hands-on learning and experimentation. There will be significant programming assignments and you can expect to work hard and be challenged by this course. Your effort can really pay off - once you master the machine and advance your programming skills to the next level, you will have powerful mojo to bring to any future project!

Lectures: Mon & Fri 1:30-2:50pm in Hewlett 200

Labs: Tue/Wed/Thu various times Gates B08

Instructors:

Chris

TAs:

Caelin

ChrisC

CindyL

CindyW

Daniel

Gabbi

Li

MaxD

MaxL

Michal

Ran

Wesley

Zoe