CSE 30: Computer Organization and Systems Programming

CSE 30 – Computer Organization and Systems Programming

Instructor
Ryan Kastner (kastner@ucsd)
CSE 2112
Teaching Assistant
Janarbek Matai (jmatai@cs)
Tutors
Avinash Ananthakrishnan (avananth@ucsd)
Alvin Chen (alc012@ucsd)
Ben Ellis (bellis@ucsd)
Carlos Garibay (cgaribay@ucsd)
Cindy Ly (cily@ucsd)
Isaac Phillips (iphillip@ucsd)
Trevor Pottinger (tpotting@ucsd)
Wesley Vetter (wvetter@ucsd)
Lecture Tuesday, Thursday 11:00-12:20pm, Center 109
Discussion Section Friday 9-9:50am, Center 109
Moodle
Lecture Podcast
Textbooks and References
ARM Assembly Language: Fundamentals and Techniques (ARM)
The C Programming Language (K+R)
Essential C
Hardware and Software
Cypress CY8CKIT-001 PSoC Development Kit – use discount code PSOC-U (50% off)
Previous Exams
Previous Exams: 200320042005-12005-22006-12006-2Fall 2009-1Fall 2009-2,Fall 2010-1Fall 2010-2
Previous Final Exams: 200320042005200620092010
Grading
Problem Sets (PS): 10%
Programming Assignments (PA): 20%
Exam 1: 15%
Exam 2: 15%
Final Exam: 40%
Class Participation: 5%
Tentative Course Topics
Topic Reading
Overview of Computer Organization and Systems Programming ARM 1.1-1.3, Gordon Moore Article
Number Representation ARM 1.4, 1.5.1, 1.5.3
C Basics K+R Chapters 1-5, Essential C – Pointers and Memory Section 1
C Data Structures K+R Chapter 6, Essential C – Section 3 & 6 (pg 33-36), Linked List Problems Section 1
Arithmetic Instructions ARM Chapter 7
Bitwise Instructions ARM Chapter 7
Control Flow Instructions ARM Chapter 8, Goto Harmful
Data Transfer Instructions ARM Chapter 5
Procedures ARM Chapter 10, ARM Procedure Call Standard
Instruction Representation ARM 1.6, ARM Appendix A, ARM Instruction Set
Disassembly
Program Execution
History of the Computing World: Part II

Class Calendar: