CSE 240: Introduction to Computer Architecture (Autumn 2005)

Mon/Wed/Fri 12:00 - 12:50 Towne Heilmeier Hall (CLASS SCHEDULE)
Email: cse240-001-05c@lists.upenn.edu (archive)
Web: http://www.seas.upenn.edu/~cse240
Forums: here
Quizzes: available on Blackboard



    Prof. E Christopher Lewis (lewis at cis dot upenn dot edu), 605 Levine Hall

Teaching Assistants
    Colin Blundell (blundell at cis dot upenn dot edu)
    Chao Cai (ccai at seas dot upenn dot edu)
    Joe Devietti (devietti at seas dot upenn dot edu)
    Ari Gilder (agilder at seas dot upenn dot edu)
    Matt Jacobs (mrjacobs at seas dot upenn dot edu)

Administrative Assistant
    Cheryl Hickey (cheryl at central dot cis dot upenn dot edu), 502 Levine Hall - Turn in late/early homework to her.

The alias cse240 at seas dot upenn dot edu reaches the CSE 240 instructor and all TAs. You are much more likely to get a fast response with it than sending mail to individuals. And don't forget the news group!

Office Hours

Please let us know if these office hours are insufficient.

Lecture Notes

Homework Assignments

Homework Assignments


Course Summary

You know how to program, but do you know how computers really work? How do millions of transistors come together to form a complete computing system? This bottom-up course begins with transistors and simple computer hardware structures, continues with low-level programming using primitive machine instructions, and finishes with an introduction to the C programming language. This course is a broad introduction to all aspects of computer systems architecture and serves as the foundation for subsequent computer systems courses, such as Digital Systems Organization and Design (CSE 371), Computer Operating Systems (CSE 380), and Compilers and Interpreters (CSE 341).


CSE 110, CSE 120, or significant programming experience.


Introduction to Computing Systems: From Bits and Gates to C and Beyond (2nd Edition) by Yale N. Patt and Sanjay J. Patel (errata).


Midterm: 25%
Final: 30%
Homework: 35%
Quizzes: 5%
Participation, attendance, etc.: 5%

Each student is given 3 "free" extensions that may be used to turn in a homework (not quizzes) at the next class without penalty (for example, if a homework is due on Wednesday but you turn it in Wednesday evening, Thursday or before class on Friday, you will be charged one extension and your grade will not be impacted). Only one extension may be used per homework. Our expectation is that most students will not need to use these extension, but they are a buffer for extraordinary circumstances.

If you spend both extensions and turn another homework in late, 30% will be deducted from your grade for each late class period. Homeworks may not be turned in after solutions have been handed out (usually two class periods after the due date).


There will be approximately 10 homework assignments. Some will be paper and pencil problem sets, while others will involve writing programs. Some will take a couple hours, while others will be very challenging mini projects.

Homeworks are due at the beginning of class. If an extension is used or the homework is late, it may be turned in at the beginning of the next class. If you want to submit an assignment early (or at an odd time) you may leave it with Cheryl Hickey (Levine 502).


There will be an open-book online quiz before each lecture. These simple quizzes must be completed before the start of class. They are only available online. Feel free to take several quizzes at once (i.e., work ahead).

Important Note: Exams will not look anything like the quizzes!


The midterm exam will be Friday, October 21 (in class). The final exam is scheduled for Wednesday, December 14 noon-2:00 (DRLB A1). I've been informed that this is the official exam date/time and it will not change.

Academic Integrity

The work you submit in this class is expected to be your own. If you submit work that has in part or in whole been copied from some published or unpublished source (including current or former CSE 240 students), or that has been prepared by someone other than you, or that in any way misrepresents somebody else's work as your own, you will face severe discipline by the university. (Adapted from text appearing at the Office of Student Conduct page.)

Although you may talk with your classmates about the assignments, assignments are to be completed individually. To ensure this, make sure you take a break (e.g., watch an episode of Gilligan's Island) after a group study session, before sitting down to start the assignment. This is called the "Gilligan's Island Rule." If you have any questions about what is appropriate, don't hesitate to ask.

Appropriate: Adam doesn't understand whether a homework problem is asking for the answer to be written in machine language or assembly language. He discusses this with Beth to arrive at one of the other.

Appropriate: Beth and Adam do problems together from the "Exercises" section of the textbook. These questions are very similar to some questions on a particular homework. When they work on the homework, they work completely independently.

Inappropriate: Together, Adam and Beth work out each homework problem on a whiteboard; then they separately copy down their work and turn it in.

Inappropriate: Beth completed a programming assignment and it was working perfectly. Just before turning it in, she deleted her program (oops!). Desperate, she asks Adam if she can turn in a copy of his program.

It is important to understand that you must not give any appearance of inappropriate sharing/borrowing of work. It is worth going the extra effort to ensure their are no problems or misunderstandings.

See Penn's Code of Academic Integrity page.


E Christopher Lewis