CPSC 220: Introduction to |
|||
Announcements
StaffInstructor: Marc Corliss (corliss at hws dot edu)Office hours: Mon 9AM-10AM, Tue 10AM-noon, Wed/Fri 3PM-4PM. Teaching Assistants:
Course SummaryA broad introduction to computer architecture, this course shows students how computers really work and how millions of transistors come together to form a complete computing system. It uses a bottom-up approach starting with transistors, followed by logic gates, followed by basic processor components, complete processors, low-level machine instructions, assembly language (a text-based form of machine language), and finally, high-level programming languages such as C. Each topic is built on top of the previous topics, which minimizes the amount of memorization the student must do. This course will also act as an introduction to other courses in the broad area of systems including operating systems (CPSC 431) and compilers (CPSC 433). By the end of the course, students will understand the role of the operating system and compiler within a complete computer system (although they will of course not know how to design or implement either until after they have taken the later courses). The prerequite for this course is CPSC 124 (introduction to programming). Students must have taken this course and received a grade of at least a C-. If that is not the case, the student should meet with the instructor before enrolling for the course. TextbookIntroduction to Computing Systems: From Bits and Gates to C and Beyond by Patt and Patel (errata).ScheduleThe tentative class schedule and lab schedule are posted online. The schedule is split into several topics that usually make up one chapter of the textbook. If a homework or lab is due on some class day or lab day then the it is due at the start of class/lab. Exams (both the review and the actual test) and vacation days are indicated on both schedules. Labs will be posted to the lab schedule and homeworks will be posted to the class schedule on the day that they are assigned. Course WorkLabs. This course has a required lab component. The labs give hands-on experience and a chance to get help from the instructor. Unlike in other courses, the labs are to be completed individually. Students will have to complete some lab exercises that must be turned in by the start of the following lab (a week later). Occasionally, a lab assignment will be due in two weeks rather than one week, which will be specified in the lab writeup. In these cases, the assignment will be worth twice as much as a one-week lab assignment. Late lab exercises will not be accepted, although the lowest lab will be dropped (for multi-week labs only 1 week's worth can be dropped). Lab exercises will be posted online for those who miss the lab. Homeworks. There will be roughly 5-6 homeworks, which will cover the non-programming aspects of this course. These must be completed individually. Homeworks must be hand written or typed and a hard copy (i.e., on paper) must be handed in at the start of the class on the date that the homework is due. Late homeworks are not accepted. Quizzes. There will be 7 short (10 minute) quizzes throughout the semester to help make sure that students keep up with the material. They may be given at any point during the class including at the start of class. In general, they will not be announced in advance, but the first quiz will be given Monday, September 7th. The lowest two grades will be dropped. If a student misses a quiz (for any reason), they will receive a 0, including if the student shows up late on a day where a quiz is given at the beginning of class. Exams. There will be two midterm exams and a final exam. Each midterm exam will be in-class, written (no programming on the computer), and closed book/notes. The midterm exams will be held in the lab periods (on Tuesday, room TBD) rather than in the lecture period so that students will have more time to complete the exam. The following lecture period (on Wednesday) will be used for that week's lab. The first exam is tentatively scheduled for Tuesday, September 29th. The second exam is tentatively scheduled for Tuesday, November 3rd. The final exam will be cumulative, but will emphasize aspects of the material covered in the last third of the course. The final exam will be held on Wednesday, December 16th from 7PM to 10PM in Gulick 206A. Making up exams will only be allowed for *compelling* circumstances, i.e., with documentation from an appropriate person (doctor, dean). Arrangements must be made in advance for non-emergencies. Attendance/Participation. To get full credit for participation, students should attend all lectures (MWF, 10:10-11:05, Gulick 206A) and labs (Tu, 1:30-2:55, Gulick 208). Students can miss at most three combined lectures and labs (for any reason). If a student misses more than three classes (combined lectures and labs), they will lose 10% of their attendance/participation grade per day missed. In addition, if a student misses a lecture in which a quiz is given, they will receive a grade of zero for that quiz. GradingLabs: 35% (approximately 3.5% each)Homeworks: 10% (approximately 2% each) Quizzes: 10% (2% each) Midterm exams: 20% (10% each) Final exam: 15% Participation, attendance, etc.: 10% Academic IntegrityThe Principle of Academic Integrity (see the HWS Catalogue, Community Standards Section) governs the work completed in this course. The following outlines specifically how this principle applies. Exams and Quizzes. All exams and quizzes are to be completed solely by the student whose name is on the paper. Unless otherwise specified, these are closed book/notes, which includes any materials not provided as part of the exam/quiz. Copying an exam will result in failure of the course and the case will be taken to the HWS comittee on standards. Copying a quiz will result in a 0. For a second offense, the student(s) will fail the course and the case will be taken to the HWS committee on standards. Labs. Lab assignments are to be completed individually by the student submitting the lab. The work that students submit must be their own. Students may not work with other students. Students may receive debugging help from a tutor, but anything beyond debugging should be referred to the instructor. Students must document and understand all the help received from the tutors, TAs, and the instructor (i.e., name of tutor/TA/instructor who helped and how they helped). Students may consult the book, their notes, any course materials provided in class or on the course website, and reference books found in the lab. Use of other materials (including websites) is not allowed. It is never acceptable for a student to be in possession of another person's program, either hardcopy or electronic (even if that person is not at HWS). Copying a lab assignment will result in a grade of 0 for all involved parties. For a second offense, the student(s) will fail the course and the case will be taken to the HWS committee on standards. Each program submitted for credit will be checked by a plaigarism detector called MOSS (http://theory.stanford.edu/~aiken/moss/) to determine if it was copied. MOSS is highly accurate at detecting plagiarized software (changing a few variable names, comments, etc., will not help). In addition, any student that submits a suspicious lab assignment will have to explain their code to the instructor. If they are unable to effectively explain the code, then they will not receive credit for the assignment. A second instance of plagiarism on a lab assignment will result in failure of the course and the case will be taken to the committee on standards. Homeworks. Homework assignments are to be completed solely by the student whose name is on the paper. Copying part or all of someone else's solution is prohibited and will result in a 0 on the assignment for all involved parties. For a second offense, the student(s) will fail the course and the case will be taken to the HWS committee on standards. Summary. The moral of the story is students should not cheat in this course. For each case of cheating, the student will receive a 0 on the assignment (except in the case of an exam, in which case, the student will automatically fail the course). For a second offense, the case will be taken to the committee on standards and will also result in failure of the course. It is always better to submit an incomplete solution rather than to submit a plagiarized solution. Center for Teaching and Learning (CTL)Hobart and William Smith Colleges encourages students to seek the academic collaboration and resources that will enable them to do their best work. Students who would like to enhance their study skills, writing skills, or other academic skills may visit the CTL web site at http://www.hws.edu/academics/ctl/index.aspx or contact the CTL at x3351. If you are a student with a disability for which you may need accommodations, you should self-identify and register for services with the Coordinator of Disability Services at the Center for Teaching and Learning (CTL), and provide documentation of your disability. Disability related accommodations and services generally will not be provided until the registration and documentation process is complete. The guidelines for documenting disabilities can be found at the following website: http://www.hws.edu/disabilities. Please direct questions about this process or Disability Services at HWS to David Silver, Coordinator of Disability Services, at silver@hws.edu or x3351. Resources | |||