Introduction to Assembly Language Programming: From 8086 to Pentium Processors

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

There are three main reasons for writing this book. While several assembly language books are on the market, almost all of them cover only the 8086 processor-a 16-bit processor Intel introduced in 1979. A modem computer organization or assembly language course requires treatment of a more recent processor like the Pentium, which is a 32-bit processor in the Intel family. This is one of the main motivations for writing this book. There are two other equally valid reasons. The book approaches assembly language programming from the high-level language viewpoint. As a result, it focuses on the assembly language features that are required to efficiently implement high-level language constructs. Performance is another reason why people program in assembly language. This is particularly true with real-time application programming. Our treatment of assembly language programming is oriented toward performance optimiza tion. Every chapter ends with a performance section that discusses the impact of specific sets of assembly language statements on the performance of the whole program. Put another way, this book focuses on performance-oriented assembly language programming. Intended Use This book is intended as an introduction to assembly language programming using the Intel 80X86 family of processors. We have selected the assembly language of the Intel 80X86 processors (including the Pentium processor) be cause of the widespread availability of PCs and assemblers. Both Microsoft and Borland provide assemblers for the PCs.

Author(s): Sivarama P. Dandamudi
Series: Undergraduate Texts in Computer Science
Edition: 1
Publisher: Springer
Year: 2013

Language: English
Commentary: Publisher PDF | Published: July 1998
Pages: xxii, 644
City: New York, NY
Tags: Assembly; Assembly Language Programming; x86 Assembly; 80x86 Assembly; Intel; CISC; Debugging; Interface; Processing; Computer; Performance; Programming

Front Matter
Pages 1-1

Introduction
Pages 3-20

Basic Computer Organization
Pages 21-57

Overview of Assembly Language
Pages 59-114

Basic Topics

Front Matter
Pages 115-115

Procedures and the Stack
Pages 117-171

Addressing Modes
Pages 173-206

Arithmetic Flags and Instructions
Pages 207-255

Selection and Iteration
Pages 257-297

Logical and Bit Operations
Pages 299-340

Advanced Topics

Front Matter
Pages 341-341

String Processing
Pages 343-376

Macros and Conditional Assembly
Pages 377-416

ASCII and BCD Arithmetic
Pages 417-438

Interrupts and Input/Output
Pages 439-487

High-Level Language Interface
Pages 489-515

Back Matter
Pages 517-644