Forward Why Would Anyone Learn This Stuff?Amazing! You're actually reading this. That puts you into one of three categories: a student who is being forced to read this stuff for a class someone who picked up this book by accident (probably because you have yet to be indoctrinated by the world at large) or one of the few who actually have an interest in learning assembly language. Egads. What kind of book begins this way? What kind of author would begin the book with a forward like this one? Well the truth is I considered putting this stuff into the first chapter since most people never bother reading the forward. A discussion of what's right and what's wrong with assembly language is very important and sticking it into a chapter might encourage someone to read it. However I quickly found that university students can skip Chapter One as easily as they can skip a forward so this stuff wound up in a forward after all. So why would anyone learn this stuff anyway? Well there are several reasons which come to mind:Your major requires a course in assembly language; i.e. you're here against your will.A programmer where you work quit. Most of the source code left behind was written in assembly language and you were elected to maintain it.Your boss has the audacity to insist that you write your code in assembly against your strongest wishes.Your programs run just a little too slow or are a little too large and you think assembly language might help you get your project under control.You want to understand how computers actually work.You're interested in learning how to write efficient code.You want to try something new.Well whatever the reason you're here welcome aboard. Let's take a look at the subject you're about to study.1. WHAT'S WRONG WITH ASSEMBLY LANGUAGE TopAssembly language has a pretty bad reputation. The common impression about assembly language programmers today is that they are all hackers or misguided individuals who need enlightenment. Here are the reasons people give for not using assembly:Assembly is hard to learn.Assembly is hard to read and understand.Assembly is hard to debug.Assembly is hard to maintain.Assembly is hard to write.Assembly language programming is time consuming.Improved compiler technology has eliminated the need for assembly language.Today machines are so fast that we no longer need to use assembly.If you need more speed you should use a better algorithm rather than switch to assembly language.Machines have so much memory today saving space using assembly is not important.Assembly language is not portable.