Bryn Mawr College
CMSC 240 Principles of Computer organization
Spring 2024
Course Materials
Prof. Deepak Kumar

General Information

Deepak Kumar
202 Park Science Building
dkumar at brynmawr dot edu

Lecture Hours: Tuesdays & Thursdays from 12:55p to 2:15p
Office Hours: Tuesdays 3:45 to 4:45p and Thursdays from 3:30 to 4:30p
Lecture Room: 245 Park Science Building
Lab: Tuesdays from 2:25p to 3:45p.

Note: No Labs in Week#1. Labs will start in Week#2.


Texts & Software

Main Text (Required): Introduction to Computing Systems: From Bits & Bytes to C/C++ and Beyond. Third Edition. McGraw Hill, 2019. Available in several formats (hardcover, paperback, lose leaf, etext, etc.).
The list price of this book is VERY STEEP (!!). However, the electronic versions are affordable, and recommended. The college bookstore has also made arrangements with the publisher and negotiated their price. Please do comparison shopping before you buy. You definitely do not need a physical copy. Also, the older 2nd edition will not work.

Software: We will use LC3 Simulator (accompanied with the book) that can be installed on Windows, MacOS, and Linux platforms. This software is packaged with the text and can be downloaded for free from this site. Find the link to Releases where the installers/binaries are available. Get the proper one for your system. The software is also installed on all CS Lab machines on campus.


Course Description: This course introduces the hierarchical design of modern digital computers. Combinatorial and sequential logic elements; construction of microprocessors/CPUs; instruction sets; assembly language programming. Lectures cover the theoretical aspects of machine architecture. In the laboratory, designs discussed in lecture are constructed in software. Prerequisite: CMSC B151 or H106/107 and CMSC B231


  1. Instruction Set Architecture (ISA)
  2. Bits, Data Types, and Operations
  3. The von Neumann Model
  4. The LC-3 ISA
  5. Programming in assembly language using the LC-3 ISA
  6. Subroutines and the stack.
  7. I/O Operations: Service routines, Traps and Interrupts.
  8. Memory Hierarchy & Caching

Important Dates

January 23 First Class Meeting
February 20 Exam 1
April 2 Exam 2
May 2 Exam 3

Creating a Welcoming Environment

All members of the Instruction Staff are dedicated to the cause of improving diversity, equity, and inclusion in the field of computing, and to supporting the wellness and mental health of our students.

Diversity and Inclusion

It is essential that all members of the course community – the instructor, TAs, and students – work together to create a supportive, inclusive environment that welcomes all students, regardless of their race, ethnicity, gender identity, sexuality, or socioeconomic status. All participants in this course deserve to and should expect to be treated with respect by other members of the community.

Class meetings, lab sessions, office hours, and group working time should be spaces where everyone feels welcome and included. In order to foster a welcoming environment, students of this course are expected to: exercise consideration and respect in their speech and actions; attempt collaboration and consideration, including listening to opposing perspectives and authentically and respectfully raising concerns, before conflict; refrain from demeaning, discriminatory, or harassing behavior and speech.


  1. Assignment#1 (Due on Thursday, February 15): Do the following Exercises from Chapter 2: 2.4, 2.6, 2.9, 2.10, 2.11, 2.14, 2.20, 2.30, 2.39, 2.40. Submit your answers in printed form (stapled) at the start of class.
  2. Assignment#2 (Due on Thursday, March7): This assignment requires you to install LC-3 Tools (link in the Software section above) and run the multiplication and division programs from class and lab on the simulator. Please submit a screenshot of the simulator after the programs have completed (showing the contents of all registers, with answers). You can either submit the screenshots by e-mail, or bring a printout to class. The assignment is due at the start of class on Thursday, March 7.
  3. Assignment#3 (Due on Thursday, March 21): Click here for details. A3DataSet.bin
  4. Assignment#4 (Due on Thursday, March 28): Click here for details
  5. Assignment#5 is posted (Due on Tuesday, April 16): Click here for details.
  6. Assignment#6 is posted (Due on Tuesday, April 30): Click here for details.


Course Policies


In order to help you succeed in this course, the College has made the following resources available to all students. If you have questions or concerns about utilizing these resources, please speak with the Instructor and he will be happy to help direct you to the resource that will support you best.

Academic Support

The Office of Academic Support helps students explore effective techniques for studying, test-taking, note-taking, and time and stress management so that they can feel confident and motivated in their academic work.  Students can meet with the Director as individuals or in small groups for as many sessions as needed to promote success and confidence. More information is available at

Additionally, your College Dean is committed to your success and is an invaluable resource throughout your time at Bryn Mawr. You are encouraged to meet with your College Dean regularly and to contact them if you have any questions about your courses, campus life, opportunities for students, etc. More information about the Dean’s Office is available at


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. See for more information.

Health and Wellness

Staying healthy is a key factor in having a successful and enjoyable semester. The Health & Wellness Center provides medical services and wellbeing-related programming throughout the year; see for more information.

Additionally, BMC Counseling Services offers resources related to general mental health, substance use issues, family and personal relationship issues, and resources for coping with discrimination, hate, and violence. If you are uncomfortable reaching out to Counseling Services on your own, the Instructor or your College Dean will be happy to contact them on your behalf. More information is available at

The Instructor recognizes that student life can be extremely difficult, both mentally and emotionally, especially during these unprecedented times. If you are living with mental health issues such as anxiety, depression, ADHD, or other conditions that may affect you this semester, you are encouraged to discuss these with the Instructor if you are comfortable doing so. Although the details are up to you to disclose, the Instructor will do his best to support and accommodate you in order to ensure that you can succeed in this course while staying healthy.

If you or someone you know is in crisis and urgently needs assistance, please do not hesitate to contact Campus Safety: 610-526-7911.

Course Policies and Expectations

Your safety, health, and wellness are of the utmost importance to the Instructor, if not to the College as a whole. Although the policies described in this section are put in place in an effort to help the course proceed smoothly and fairly, please reach out to the Instructor if you have any questions or concerns, or if there are other policies that would better support you this semester.


Attendance and active participation are expected in every class. Participation includes asking questions, contributing answers, proposing ideas, and providing constructive comments.

As you will discover, we are proponents of two-way communication and we welcome feedback during the semester about the course. We are available to answer student questions, listen to concerns, and talk about any course-related topic (or otherwise!). Come to office hours! This helps us get to know you. You are welcome to stop by and chat. There are many more exciting topics to talk about that we won't have time to cover in-class.

Although computer science work can be intense and solitary, please stay in touch with us, particularly if you feel stuck on a topic or project and can't figure out how to proceed. Often a quick e-mail, phone call can reveal solutions to problems and generate renewed creative and scholarly energy. It is essential that you begin assignments early, since we will be covering a variety of challenging topics in this course.

Evaluation, Assessment, and Grading

Your final course grade will be determined based on three sets of activities over the course of the semester: Homework Assignments, Labs, and Exams. There will be 5-7 assignments, weighted equally in the final grading.  Assignments must be submitted according to the Assignment Submission instructions.  There will be weekly lab activities. All lab activities should be completed during the labs or shortly thereafter. There will be three exams (no Final Exam) as listed in the course schedule above.

All graded work will receive a grade: 4.0, 3.7, 3.3, 3.0, 2.7, 2.3, 2.0, 1.7, 1.3, 1.0, or 0.0. At the end of the semester, final grades will be calculated as a weighted average of all grades according to the following weights:

Eaxm 1: 20%
Eaxm 2: 20%
Exam 3 20%
Assignments 30%
Labs 10%

Incomplete grades will be given only for verifiable medical illness or other such dire circumstances.

Submission and Late Policy

No assignment will be accepted after it is past due.

No past work can be "made up" after it is due.

No regrade requests will be entertained one week after the graded work is returned in class.

Note: Deadlines are put in place so that you have a goal to work toward and so that you know when you’re “done,” and to help the Instructor keep the class moving forward and keep everyone in sync. As such, you are expected to submit all work by the stated deadlines. Any extensions will be given only in the case of verifiable medical excuses or other such dire circumstances, if requested in advance and supported by your Academic Dean.


There will be three exams in this course.  The exams will be closed-book, closed-notes, and closed devices.  The exams will cover material from lectures, homeworks, and assigned readings (including topics not discussed in class).

Study Groups

We encourage you to discuss the material and work together to understand it. The Computer Science Lounge in Room 295 is a great place to do this. Here are some thoughts on collaborating with other students:

If you have any questions as to what types of collaborations are allowed, please feel free to ask.

Course Code of Conduct

It is essential that all members of the course community – including the instructor, TA, administrators, and students – work together to create a supportive, inclusive environment that welcomes all students, regardless of their race, ethnicity, gender identity, sexuality, ability, or socioeconomic status. All participants in this course deserve to and should expect to be treated with respect by other members of the community.

Class meetings, office hours, and lab sessions should be spaces where everyone feels welcome and included. In order to foster a welcoming environment, students of this course are expected to: 

In our class, it is important that we refer to everyone by the name and pronouns that they use. You are invited but not required to share the pronouns that you use, and all students are asked to commit to being attentive to and using each other’s pronouns and, in situations of uncertainty, gender-neutral language. If at any time during the course you would like to change the name or the pronouns that we use for you in class, please contact the Instructor. If anyone is inadvertently misgendered, misnamed, or has their name mispronounced, the suggested etiquette is that we correct the error politely and move on.

If you feel that a classmate has violated these expectations, please do not hesitate to contact the Instructor; if you feel that the Instructor has violated them, you can contact your College Dean or the Bi-College Title IX Coordinator.

College Code of Conduct

Bryn Mawr College is committed to fostering a safe and inclusive living and learning environment where all can feel secure and free from harassment. All forms of sexual misconduct, including sexual assault, sexual harassment, stalking, domestic violence, and dating violence are violations of College policies, whether they occur on or off campus. Bryn Mawr faculty are committed to helping to create a safe learning environment for all students and for the College community as a whole. If you have experienced any form of gender or sex-based discrimination, harassment, or violence, know that help and support are available. Staff members are trained to support students in navigating campus life, accessing health and counseling services, providing academic and housing accommodations, and more.

The College strongly encourages all students to report any incidents of sexual misconduct. Please be aware that all Bryn Mawr employees (other than those designated as confidential resources such as counselors, clergy, and healthcare providers) are required to report information about such discrimination and harassment to the Bi-College Title IX Coordinator. Information about the College’s Sexual Misconduct policy, reporting options, and a list of campus and local resources can be found in the Bryn Mawr Sexual Misconduct Policy

Academic Integrity

All students in this course are expected to abide by the Bryn Mawr College Honor Code.

Created on January 17, 2024.