Synopses & Reviews
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 provides the link between high-level languages and the physical operation of a computer. This book introduces assembly language programming using either Pentium or RISC processors. It focuses on providing the reader with a firm grasp of the main features of assembly language programming and how it can be used to improve the performance of a computer system. The author's new themes for the second edition are protected-mode Pentium programming, MIPS assembly language programming, and use of the NASM and SPIM assemblers for a Linux orientation.
This updated textbook introduces readers to assembly and its evolving role in computer programming and design. The author concentrates the revised edition on protected-mode Pentium programming, MIPS assembly language programming, and use of the NASM and SPIM assemblers for a Linux orientation. The focus is on providing students with a firm grasp of the main features of assembly programming, and how it can be used to improve a computer's performance. All of the main features are covered in depth, and the book is equally viable for DOS or Linux, MIPS (RISC) or CISC (Pentium). The book is based on a successful course given by the author and includes numerous hands-on exercises.
Table of Contents
Introduction * Overview of Computer Organization * Pentium Architecture * Overview of Assembly Language * Procedures and The Stack * Addressing Modes * Arithmetic Flags and Instructions * Selection and Iteration * Logical and Bit Operations * String Processing * ASCII and BCD Arithmetic * Interrupts and Input/Output * High-Level Language Interface * MIPS Architecture * MIPS Assembly Language * Recursion * Floating-Point Operations * Appendices * Index