Week 0
Course Rules:
Website:
- When you sign up, please use the same name you have in your AASTMT records, and include your AASTMT ID. This how I can migrate your grades to the AASTMT system.
- Login often to follow up with assignment deadlines and announcements. Its your responsibility to keep up with the course. Failure to receive emails or notifications is no excuse. Everything is announced in class and then published in moodle.
Academic Honesty:
- Please confirm with the AASTMT policies regarding plagiarism and cheating. A zero grade for the violating submission will be given the first time, then reported to the department for further action.
- Please ask questions in the online forum to allow everyone to join and benefit from the discussions, and avoid private emails to the lecturers and TAs. Contact the teachers privately only about your personal grades or circumstances, not about the course content.
How to score A+ in this course?
- Please do all practicals and assignments and study regularly. In case of problems, please ask questions. Accumulating problems will make things worse as the semester goes by.
INTRODUCTION TO SYSTEM PROGRAMMING, MACHINE ARCHITECTURE, MACHINE LANGUAGE, ASSEMBLY LANGUAGE, TWO PASS ASSEMBLERS, ONE PASS ASSEMBLERS, MACRO FACILITIES, CONDITIONAL MACROS, MACRO PROCESSORS, LOADERS, LINKERS, INTRODUCTION TO FORMAL LANGUAGES, COMPILERS AND INTERPRETERS.
Learning Outcomes:
The student will be able to:
- Study the architecture of a hypothetical machine, its assembly language, macro language..
- Program in assembly language.
- Understand the structure and design of assemblers, linkers and loaders.
- Understand the concepts and theory behind the implementation of high level programming languages.
Course Topics:
- System programming Vs. Application programming
- Study of a hypothetical machine (SIC machine)
- Programming in assembly language
- Structure and design of a two pass assembler
- Structure and design of one pass assemblers
- Programming in macro languages
- Structure and design of macro processors
- Loaders and linkers
- Introduction to formal Languages and processing of high level languages
TEXT BOOK
System software: an introduction to systems programming, Leland L. Beck, 3rd Edition, Addison Wesley, Longman Inc., 1997.
PREREQUISITE: CC319
Grading Scheme:
Week 7 |
|
Quizes |
5% |
Lab Submissions |
2.5% |
Assignments |
2.5% |
Midterm 1 |
20% |
Week 12 |
|
Quizes |
5% |
Lab Submissions |
2.5% |
Assignments |
2.5% |
Midterm 2 |
10% |
Project |
10% |
Final Exam |
40% |