CS611
Assembly Language Programming and Machine Organization
Outline
- Overview of computer systems (PH 1.1-1.9)
- C programming (Harbison and Steele)
- pointers
- bitwise operators
- stdio library
- Representation of data
- characters: ASCII, Unicode (PH 3.7)
- integers: 2's complement (PH 4.2)
- floating point: IEEE formats (PH 4.8)
- Representation of programs (PH 3.1-3.4)
- Basic computer architecture
- CPU, registers, instruction set (PH 3.1-3.4)
- bus, memory, I/O (PH 8.1, 8.4)
- exceptions, interrupts (PH 5.6, A.7)
- I/O devices, I/O controllers (PH 8.2-8.3, 8.5)
- memory cache (PH 7.1-7.3)
- virtual memory (PH 7.4-7.7)
- Assembly language programming (PH A.6, A.10)
- assembler directives
- stack frames
- register conventions
- System software
- assemblers (PH A.2)
- linkers (PH A.3)
- debuggers
- Advanced topics
- threads
- file system implementation
PH is Computer Organization & Design:
The Hardware/Software Interface by
Patterson and Hennessy.
Harbison and Steele is C: A Reference Manual by Harbison and Steele.
However, any good C reference will probably suffice.
Much of the course material is also covered in
Computer Systems: A Programmer's Perspective
by Bryant and O'Hallaron.
All of these references are on reserve in the Kingsbury Library.
The readings are not required. They are intended to be supplementary
to the course lectures.
Last modified on August 28, 2004.
Comments and questions should be directed to
pjh@cs.unh.edu