Assembly Language Tutorial

Brian Howard

April, 1998


This document describes the basics of assembly language programming for the Intel 80x86 microprocessors. It is geared towards using the freely available NetWide Assembler, NASM, to generate programs that will run under MS-DOS. As such, it will concentrate on producing 16-bit .COM programs, using only the facilities that have been present since the original 8086. There is much more that can be done in assembly language on modern PCs; in particular, NASM (and most other assemblers) can be used to produce code which will link with programs written in high-level languages and which will take full advantage of 32-bit operating systems such as Windows 95.

Contents