Tutorials and Online Training Videos

Assembly Language Programming Tutorial


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.

Introduction

Contents of this Course
The Reason for Assembly Language
Opposite of Portable

Necessary Fundamentals

Step by Step Execution
Hexadecimal/Octal/Binary
Boolean Operations
Binary Integers

The Computer

Memory & the CPU
The Flag Register
Modes & Interrupts

The Assembler

Windows Installation
Linux Installation
Command Line Options pt. 1
Command Line Options pt. 2
Hello world

Assembly Language Basics

Layout of an Instruction
Constants
Declarations
Pseudo Instructions pt. 1
Pseudo Instructions pt. 2
Layout of a Function
Assembling & Linking
Comparisons & Jumps
GCD Four Ways
A Random Integer Generator
Addressing
Output
Input
Looping
The Stack
Find a Prime
It is All Bits

Macro Preprocessor

Single Line Macros
Standard Macros
Conditional Assembly
Parameters & Overloading
Macro Looping
Source Files
Preprocessor Stack
Errors & Environment
NASM Standard Macros

Performing Bit Operations

Shifts & Rotates
Boolean Operations
Choosing Without Branching
Endians

Aggregates

Defining Arrays
Addressing Array Members
Multidimensional Arrays
Structs
Block Operations pt. 1
Block Operations pt. 2

Floating Point

Floating Point Representation
Floating Point Numbers
Floating Point Processor
Floating Point Instructions pt. 1
Floating Point Instructions pt. 2
Quadratic Equation

Debugging

Things a Debugger Does
The Linux Debugger
The Windows Debugger
Unexpected NASMs

Assembly Potpourri

Assembler Directives
The Context Stack
Macro Overloading
The UNIX Assembler
The TASM Assembler
The MASM Assembler
The IBM Mainframe Assembler

Wrapup

Wrapup

Credits

About this Author


Related Books on Assembly Language Programming







Save $80 on the
DROID BIONIC
by Motorola with Verizon Wireless service for less than from Verizon Wireless directly.
Save $80 on DROID BIONIC
More Cell Phone Discounts