BIL 220, 2010-2011 Spring
Introduction to System Programming
Lectures:  |
Wednesday  |
09:00-11:45 @ D1 (Section 1) |
Thursday  |
09:00-11:45 @ D1 (Section 2) |
Instructor: Aykut Erdem
Office: Dept. of Geomatics Engineering, 3rd floor
            Dept. of Computer Engineering, 111
Office Hours:  |
Tuesday  |
13:00-14:30 |
Friday  |
13:00-14:30 |
E-mail: aykut@cs.hacettepe.edu.tr
Teaching Assistant: Yigitcan Aksari
Office Hours:  |
Tuesday 14:00-17:00 |
E-mail: yaksari@cs.hacettepe.edu.tr
Course Description:
Assembly language general concepts. Source and object program. Re-entrant and re-executable program. Addressing techniques. Procedure definitions, procedure communication techniques, macro facilities. Operating system-assembly language connections: system calls. Programming techniques. Loaders, linkers. Microprogramming. One and two pass assemblers.
Prerequisites:
Students are expected to have prior experience in at least one structured high-level programming language, such as C, C++, Java, or Python.
Textbook:
References:
Tentative Outline
Assignments Policy
There will be some written and programming assignments, which have to be done individually.
Grading Policy (Tentative)
HW 30%, Midterm 30%, Final %40
Syllabus (numbers in parentheses indicate related textbook sections)
Week |
Topic |
28/2 |
L1: Introduction; Basic Concepts (1.1-1.5) |
7/3 |
No class |
14/3 |
L2: IA-32 Processor Architecture and General Concepts (2.1-2.6) |
21/3 |
L3: Assembly Language Fundamentals (3.1-3.7, Abel 2,3) |
28/3 |
L4: Data Transfers, Addressing and Arithmetic (4.1-4.6) |
4/4 |
L5: Procedures (5.1-5.2,5.4-5.7,8.1-8.3) |
11/4 |
L6: Conditional Processing (6.1-6.8) |
18/4 |
L7: Integer Arithmetic (7.1-7.8) |
27/4 |
Midterm |
2/5 |
L8: Strings and Arrays (9.1-9.5) |
9/5 |
L9: 16-Bit MS-DOS Programming (13.1-13.4) |
16/5 |
No class |
23/5 |
L10: Floating-Point Processing (17.1-17.2) |
8/6 |
Final Exam |
Resources
Homework Assignments
Please follow the course newsgroup news.cs.hacettepe.edu.tr/dersler.bil220 for announcements.