Authorised by Academic Registrar, April 1996
Objectives At the completion of this subject students should be able to understand the architecture of a common computing platform and the associated programming structures; and develop programs in assembly language that interact with the operating system and peripheral devices.
Synopsis This subject aims to enable students to develop an advanced level of awareness of, and familiarity with, techniques required for the development of software that interfaces with computer internals and peripheral devices. Topics covered include CPU internals (registers, ALU, CU, etc); assembly language techniques (structured design, macroassembly, linking, debugging); the Intel 80x86 family instruction set; peripherals (serial ports, parallel ports, keyboard, display, etc); BIOS and operating system interaction; BIOS; DOS system calls; interrupt vector table; TSR programming; device drivers and I/O interfacing.
Assessment Examination (2 hours): 50% + Two practical assignments: 50%