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)

PDF (1 slide per page) | PDF (6 slides per page)

7/3

No class

14/3

L2: IA-32 Processor Architecture and General Concepts (2.1-2.6)

PDF (1 slide per page) | PDF (6 slides per page)

21/3

L3: Assembly Language Fundamentals (3.1-3.7, Abel 2,3)

PDF (1 slide per page) | PDF (6 slides per page)

28/3

L4: Data Transfers, Addressing and Arithmetic (4.1-4.6)

PDF (1 slide per page) | PDF (6 slides per page)

4/4

L5: Procedures (5.1-5.2,5.4-5.7,8.1-8.3)

PDF (1 slide per page) | PDF (6 slides per page)

11/4

L6: Conditional Processing (6.1-6.8)

PDF (1 slide per page) | PDF (6 slides per page)

18/4

L7: Integer Arithmetic (7.1-7.8)

PDF (1 slide per page) | PDF (6 slides per page)

27/4

Midterm

2/5

L8: Strings and Arrays (9.1-9.5)

PDF (1 slide per page) | PDF (6 slides per page)

9/5

L9: 16-Bit MS-DOS Programming (13.1-13.4)

PDF (1 slide per page) | PDF (6 slides per page)

16/5

No class

23/5

L10: Floating-Point Processing (17.1-17.2)

PDF (1 slide per page) | PDF (6 slides per page)

8/6

Final Exam


Resources

Homework Assignments



Please follow the course newsgroup news.cs.hacettepe.edu.tr/dersler.bil220 for announcements.