© 2005

Introduction to Assembly Language Programming

For Pentium and RISC Processors


Part of the Texts in Computer Science book series (TCS)

Table of contents

  1. Front Matter
    Pages i-xxiii
  2. Overview

    1. Pages 3-17
  3. Pentium Assembly Language

  4. MIPS Assembly Language

    1. Pages 347-360
    2. Pages 361-397
  5. Interrupt Processing

  6. Advanced Topics

    1. Pages 463-481
  7. Back Matter
    Pages 527-690

About this book


Assembly language continues to hold a core position in the programming world because of its similar structure to machine language and its very close links to underlying computer-processor architecture and design. These features allow for high processing speed, low memory demands, and the capacity to act directly on the system’s hardware.

This completely revised second edition of the highly successful Introduction to Assembly Language Programming introduces readers to assembly language programming and its role in computer programming and design. It focuses on providing a firm grasp of the main features of assembly programming, and how it can be used to improve a computer's performance. The revised edition covers a broad scope of subjects and adds valuable material on protected-mode Pentium programming, MIPS assembly language programming, and use of the NASM and SPIM assemblers for a Linux orientation. All of the language's main features are covered in depth. The book requires only some basic experience with a structured, high-level language.

Topics and Features:

*Introduces assembly language so that readers can benefit from learning its utility with both CISC and RISC processors [ NEW ]

*Employs the freely available NASM assembler, which works with both Microsoft Windows and Linux operating systems [ NEW ]

*Contains a revised chapter on "Basic Computer Organization" [ NEW]

*Uses numerous examples, hands-on exercises, programming code analyses and challenges, and chapter summaries

*Incorporates full new chapters on recursion, protected-mode interrupt processing, and floating-point instructions [ NEW ]

*Supplies up-to-date details, examples, and software via the author’s website

*Provides excellent appendixes and a comprehensive index

Assembly language programming is part of several undergraduate curricula in computer science, computer engineering, and electrical engineering. In addition, this newly revised text/reference can be used as an ideal companion resource in a computer organization course or as a resource for professional courses or self-study.


Assembly language Hardware Interrupt Linux Processing computer engineering electrical engineering operating system programming

Authors and affiliations

  1. 1.School of Computer ScienceCarleton UniversityOttawaCanada

Bibliographic information