The Assembly Language course is intended for those who wish to write assembly for both Windows and Linux. It uses the freely available NASM assembler, which is feature-complete and produces object code in a variety of formats. The predominant CPUs today use the Intel instruction set, and all examples in the course use that instruction set. The course covers the background information necessary for assembly programming and it covers the forms programs must take to operate in the systems. Some time is spent with low-level I/O, but many of the examples interface with C mainline programs. The emphasis of the course is in writing assembly language functions that can be called from higher level languages. To begin learning today, simply click on the movie links.