Bryn Mawr College
CMSC 240: Computer Organization
Fall 2019
Course Materials
Kathleen Riley


Texts  Important Dates  Assignments  Lectures Course Policies Links

General Information


Kathleen Riley
205 Park Science Building
kariley at brynmawr dot edu

Lecture Hours: Mondays & Wednesdays, 8:40 am to 10:00 am.

LMS: Readings, Assignments, and Lecture notes will be posted to Moodle.

Lecture Room: 336 Park Science Building

Office Hours: Wednesdays 2:30 to 4:00p, Thursdays 10:30 to 11:30, and other times by appointment.

Please note: I am happy to receive "drop in" visits outside of office hours any time that my door is open or ajar (there will be a white door stopper holding it open). However, if my door is closed, that means that I would prefer not to be disturbed. At those times, send me an email and I will find a time that we can meet.

Lab: Lab is mandatory and counts toward your final grade. Lab is held on Friday from 8:40 to 10:00 in Park 231 (Computer Science Lab A).

Computer Science Laboratories: In addition to scheduled lab hours, the lab are available for your use throughout the week for completion of assignments and for trying out and practicing your programming skills. Every computer science student will be given OneCard access to the computer labs and an individual login for the lab computers. Students are encouraged to use the CS labs whenever possible for working on their CS studies, even if they are working on their own computer, as working on programs surrounded by others can help you build better computer science skills and avoid the isolation that can come from programming alone.


Text (Required): This semester, most of our readings will come from the beta release version of a free, on-line text book written by two Swarthmore CS professors and a professor from West Point: Dive into Systems by Matthews, Newhall, and Webb. The user name and password for our class' access to the textbook will be posted to Moodle.

Supplemental text: (optional -- used in previous years, so hang onto it if you have it): Introduction to Computing Systems: from bits and gates to C & beyond (Second Edition) by Yale Patt and Sanjay Patel. McGraw-Hill 2004 (ISBN 978-0-07-246750-5).

Suggested: The Linux Command Line: A Complete Introduction by William E. Shotts, Jr. No Starch Press, 2012. Available for free download through both the Bryn Mawr and Haverford libraries.

Course Description

CS 240 is a classroom/laboratory course studying the hierarchical design of modern digital computers. Topics include combinatorial and sequential logic elements, construction of microprocessors, instruction sets, and assembly language programming. Lectures cover the theoretical aspects of machine architecture. In the laboratory, designs discussed in lecture are constructed in software. Prerequisite: CMSC B206 and CMSC B231.


Lab Attendance:....10%
Midterm 1:............15%
Midterm 2:............20%
Final Exam:...........25%

There will be regular assignments, consisting of problem sets as well as programming assignments. Assignments must be submitted according to the instructions given with each assignment. Electronic submissions (email, etc.) will not be accepted unless specified in the instructions.

Midterms and quizzes will be administered during class or lab periods. The final exam will be a self-scheduled exam during the college-wide final exams. All exams will be "paper and pencil" exams, i.e. will not require the use of a computer. Exams will be closed-book and closed-note, and will cover material from assignments, lecture, readings, and labs.

Important Dates

September 4: First class
October 11: Last day to declare credit/non at Bryn Mawr
October 12-20: Fall break
November 27-Dec 1: Thanksgiving break (NO class on Wednesday 11/26))
Dec 12: Last class
December 15-20: Self-scheduled final


Assignments will be listed here as they are released. For the most up to date information, use the course page in moodle.

Course Policies


Attendance at lecture is considered mandatory and students should make every effort to attend every class and be ready to learn during each session. It may be a relatively big class, but it is surprisingly easy to notice when someone isn't in attendance! Borrowed notes or reading posted slides can never substitute for coming to class and being an active part of the class community. If you are tired and don't feel like coming to lecture, come anyway! You never know what fun you might miss, and that sinking feeling of not understanding something that was discussed in lecture will undoubtedly make you feel much worse.

Lab attendance will be recorded, and completion of all assignments is part of your grade.

Office hours and meetings

Office hours (2:30 pm to 4 pm on Wednesdays, and 10:30 to 11:30 on Thursdays) are a time when I am committed to being in my office (Park 205) and available to answer questions and discuss any thoughts or concerns that you may have about assignments, the class, the major or minor, course decisions, or life at Bryn Mawr! There is never a need to make an appointment to see me during office hours; just show up! If you cannot make it to office hours, please send me an email and we can find a time when we can meet.

Programming Assignments

It is essential that you begin assignments early, since we will be covering a variety of challenging topics in this course and it is sometimes difficult to judge ahead of time how long a given assignment might take. If you are stuck and can't figure out how to proceed, send me an email describing your difficulty; I typically am quite prompt about returning emails and can get you unstuck and back to making progress!

You may be asked to complete a "reflection" on some assignments, answering some questions that will require you to think about your process. This reflection must be typed and on a separate page, and the answers to each question numbered. Completion of the reflection is part of the grade.

Collaboration on Assignments

While it’s a great idea to discuss general algorithms or approaches with your classmates, you should make sure that any work submitted in your name is your own. This means that it is OK to help a friend debug their code or to look at someone else’s approach for inspiration, but your own code should be written independently, without copying from anyone else.

Do not use the internet to solve coding problems; sources on the internet often will utilize coding practices not used in class, and copying code from online sources is considered a violation of the Honor Code. You may use online sources to check syntax or ideas, but, similarly to working with others, you should use it as a learning tool and write your own code without anyone else's code in front of you. Submitting code without citation from any source other than your own brain or class notes is a violation of Bryn Mawr’s Honor Code.

If your work has been influenced by the work of another student or an online resource, you must cite that student or online resource in your submission. (This citation can take the form of a comment in that area of your code; there is no designated citation format.)

During lab, however, students are encouraged to collaborate with others, and that is an excellent forum in which to explore ideas with other students.


Bryn Mawr College is committed to providing equal access to students with a documented disability. Students needing academic accommodations for a disability must first register with Access Services. Students can call 610-526-7516 to make an appointment with the Director of Access Services, Deb Alder, or email her at to begin this confidential process. Once registered, students should schedule an appointment with the professor as early in the semester as possible to share the verification form and make appropriate arrangements. Please note that accommodations are not retroactive and require advance notice to implement. More information can be obtained at the Access Services website. (

Students are not permitted to make any sound or video recordings of any class unless they have a documented disability-related need to do so. Students with such a need first must speak with the Director of Access Services and to me, the instructor. Class members need to be aware that this class may be recorded.

Created on September 3, 2019.