Computer Systems & Low-Level Programming
Grade of C- or better in CIS 1068, CIS 1166 is corequisite.
Bryant and O'Hallaron, Computer Systems: A Programmer's Perspective, 2nd Edition Prentice Hall. 2010.
Kernighan and Ritchie, The C Programming Language, Second Edition. Prentice Hall. 1988
Bartlett, Bruno, Programming From The Ground Up. Bartlett. 2004.
|Course Introduction||BO ch. 1|
|Introduction to C||KR ch. 1-7|
|Data Representation||BO ch 2|
|Supplement||BB ch. 10|
|Assembly Language||BO ch. 3|
|Supplement||BB ch 1 - 6|
|Memory Allocation||BO ch. 9.9-9.11|
|Storage||BO ch. 6|
|Linkers||BO ch. 7|
|Supplement||BB ch. 8|
BO. Bryant, O'Hallaron, Computer Systems
KR. Kernighan and Ritchie, The C Programming Language
BB. Bartlett, Bruno, Programming from the Ground Up
This course introduces computer systems architecture at the level required to understand low-level systems programming. It examines issues of information representation, the form of machine instructions and addressing, the implementation of programming language constructs in terms of machine instructions, the interfaces to peripheral devices. Programming is done in assembly language and in C.
The primary goals of the course are: to understand how modern computers run the programs that you write, how data and instructions are represented inside a computer, to become proficient in the C Programming Language and the standard programming tools that every programmer should master, and to understand how compilers translate higher-level language constructs into primitive operations that standard processors understand.
Attendance is Required
Accomodations for Students with Disabilities:
Any student who has a need for accommodation based on the impact of a documented disability, including special accommodations for access to technology resources and electronic instructional materials required for the course, should contact me privately to discuss the specific situation by the end of the second week of classes or as soon as practical. If you have not done so already, please contact Disability Resources and Services (DRS) at 215-204-1280 in 100 Ritter Annex to learn more about the resources available to you. I will work with DRS to coordinate reasonable accommodations for all students with documented disabilities. (Disability Resources and Services).
Student and Faculty Academic Rights and Responsibilities:
Freedom to teach and freedom to learn are inseparable facets of academic freedom. The University has a policy on Student and Faculty and Academic Rights and Responsibilities (Policy #03.70.02) which can be accessed through the following Academic Rights and Responsibilities