| Table of Contents |
WHO THIS BOOK IS FOR
This book is for anyone who wants to learn the basics of programming a PC in its native tongue, which is the 80X86 Assembly language. It discusses practical working code for dealing with specifics of the PC DOS software environment using the Microsoft Macro Assembler 6.0. This book can be very useful as a starting guide to use with your macro assembler manual, a DOS programmers manual, and a PC technical reference manual.
WHY READ THIS BOOK
People learn to program in PC Assembly language for a variety of reasons:
Assembly language programming is very flexible at solving problems in many different ways. You are not bound by many rigid constraints for coding methodology and data structures with Assembly language programming. Any programming task that can be done in a high level language can also be done in Assembly language since all high level languages have to compile source code down to Assembly language code level for CPU execution. Knowing the Assembly language of a system helps you to understand the constraints and problems of high level language compilers on the system. The Assembly language is where the software meets the hardware.
WHAT THIS BOOK IS ABOUT
This book explains and demonstrates how to use the 80X86 instruction set to program a PC running under DOS. The theme of this book is the use of the 80X86 Assembly language; therefore, many sections are written in the language. You cannot easily learn to write until you know how to read.
The book begins with a review of the basic concepts of programming in the 80X86 Assembly language. Then the book consists of working code examples with comments about what the code does. The examples demonstrate the following: how to open, read, and close a file; how to write characters to video screens; how to write to the printer; how to use the system clock; and how to use the PC sound port. The book then discusses the use of video graphics, computer math, and C language interface.
There are less than a hundred different mnemonics in the standard 80X86 instruction set; these are not very hard to memorize or quickly reference from a manual. What is more complicated is that many instructions have dozens of different addressing modes. Fortunately, most program routines only need a few of these instructions. Because of this, the book does not explain the complete functional logic behind each and every instruction, but, after reading this book, the user will be better able to read and understand an official Intel 80X86 programmers reference guide. This book displays examples of good modular code where it is possible. There are sections where you may find routines with more than one entry point and more than one exit point. In these cases, it is done for either code speed reasons or compact code reasons.
REQUIREMENTS
Hardware: A standard PC with 512K RAM. Software: Microsoft Macro Assembler 6.0 or higher and DOS 2.1 or higher. User: Should be familiar with how to use DOS on a PC and know one computer programming language.
Dedication
To my wife, Patty
| Table of Contents |