Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
6Activity
0 of .
Results for:
No results containing your search query
P. 1
Hyde, Randall - ArtOfAsm_HLA

Hyde, Randall - ArtOfAsm_HLA

Ratings: (0)|Views: 119 |Likes:
Published by api-3813935

More info:

Published by: api-3813935 on Oct 18, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/09/2014

pdf

text

original

The Art of Assembly Language
Page i
The Art of Assembly Language
(Brief Contents)

The Art of Assembly Language................................................................. iii Volume One:.............................................................................................. 1 Data Representation................................................................................... 1

Chapter One Foreward................................................................................ 3 Chapter Two Hello, World of Assembly Language................................... 11 Chapter Three Data Representation............................................................ 43 Chapter Four More Data Representation.................................................... 75 Chapter Five............................................................................................... 107 Chapter Five Questions, Projects, and Lab Exercises................................. 107 Volume Two:............................................................................................. 127 Machine Architecture................................................................................. 127 Chapter One System Organization.............................................................. 129 Chapter Two Memory Access and Organization........................................ 149 Chapter Three Introduction to Digital Design............................................ 195 Chapter Four CPU Architecture.................................................................. 225 Chapter Five Instruction Set Architecture.................................................. 261 Chapter Six Memory Architecture.............................................................. 293 Chapter Seven The I/O Subsystem............................................................. 315 Chapter Eight Questions, Projects, and Labs.............................................. 341 Volume Three:........................................................................................... 375 Basic Assembly Language......................................................................... 375 Chapter One Constants, Variables, and Data Types.................................. 377 Chapter Two Introduction to Character Strings.......................................... 401 Chapter Three Characters and Character Sets............................................ 421 Chapter Four Arrays................................................................................... 445 Chapter Five Records, Unions, and Name Spaces...................................... 465 Chapter Six Dates and Times...................................................................... 481 Chapter Seven Files.................................................................................... 497 Chapter Eight Introduction to Procedures................................................... 521 Chapter Nine Managing Large Programs................................................... 549 Chapter Ten Integer Arithmetic.................................................................. 567 Chapter Eleven Real Arithmetic................................................................. 591 Chapter Twelve Calculation Via Table Lookups........................................ 625 Chapter Thirteen Questions, Projects, and Labs......................................... 641 Volume Four:............................................................................................. 703

Page ii

Intermediate Assembly Language.............................................................. 703 Chapter One Advanced High Level Control Structures............................. 705 Chapter Two Low-Level Control Structures.............................................. 727 Chapter Three Intermediate Procedures...................................................... 779 Chapter Four Advanced Arithmetic............................................................ 825 Chapter Five Bit Manipulation................................................................... 879 Chapter Six The String Instructions........................................................... 905 Chapter Seven The HLA Compile-Time Language................................... 919 Chapter Eight Macros................................................................................. 939 Chapter Nine Domain Specific Embedded Languages............................... 973 Chapter Ten Classes and Objects................................................................ 1027 Chapter Eleven The MMX Instruction Set................................................. 1081 Chapter Twelve Mixed Language Programming........................................ 1117 Chapter Thirteen Questions, Projects, and Labs......................................... 1163 Appendix A Answers to Selected Exercises............................................... 1243 Appendix B Console Graphic Characters................................................... 1245 Appendix D The 80x86 Instruction Set...................................................... 1287 Appendix E The HLA Language Reference............................................... 1315 Appendix F The HLA Standard Library Reference.................................... 1317 Appendix G HLA Exceptions..................................................................... 1319 Appendix H HLA Compile-Time Functions.............................................. 1325 Appendix I Installing HLA on Your System.............................................. 1355 Appendix J Debugging HLA Programs...................................................... 1379 Appendix K Comparing HLA and MASM................................................. 1383 Appendix L HLA Code Generation for HLL Statements........................... 1385 Index.......................................................................................................... 1407

Hello, World of Assembly Language
Beta Draft - Do not distribute
\u00a9 1999, By Randall Hyde
Page iii
The Art of Assembly Language
(Full Contents)

The Art of Assembly Language............................................................ iii Volume One:........................................................................................... 1 Data Representation................................................................................ 1 Chapter One Foreward............................................................................. 3

\u2022 Foreward to the HLA Version of \u201cThe Art of Assembly...\u201d....................... 3 \u2022 Intended Audience.......................................................................................6 \u2022 Teaching From This Text............................................................................ 6 \u2022 Copyright Notice.........................................................................................7 \u2022 How to Get a Hard Copy of This Text........................................................ 8 \u2022 Obtaining Program Source Listings and Other Materials in This Text....... 8 \u2022 Where to Get Help....................................................................................... 8 \u2022 Other Materials You Will Need.................................................................. 9

Chapter Two Hello, World of Assembly Language.............................. 11

2.0 Chapter Overview....................................................................................11 2.1 The Anatomy of an HLA Program.......................................................... 11 2.2 Some Basic HLA Data Declarations....................................................... 12 2.3 Boolean Values........................................................................................14 2.4 Character Values......................................................................................15 2.5 An Introduction to the Intel 80x86 CPU Family..................................... 15 2.6 Some Basic Machine Instructions........................................................... 18 2.7 Some Basic HLA Control Structures....................................................... 21

2.7.1 Boolean Expressions in HLA Statements...................................... 21 2.7.2 The HLA IF..THEN..ELSEIF..ELSE..ENDIF Statement.............. 23 2.7.3 The WHILE..ENDWHILE Statement........................................... 24 2.7.4 The FOR..ENDFOR Statement...................................................... 25 2.7.5 The REPEAT..UNTIL Statement.................................................. 26 2.7.6 The BREAK and BREAKIF Statements....................................... 27 2.7.7 The FOREVER..ENDFOR Statement........................................... 27 2.7.8 The TRY..EXCEPTION..ENDTRY Statement............................28

2.8 Introduction to the HLA Standard Library.............................................. 29

2.8.1 Predefined Constants in the STDIO Module................................. 30 2.8.2 Standard In and Standard Out........................................................ 31 2.8.3 The stdout.newln Routine.............................................................. 31 2.8.4 The stdout.putiX Routines............................................................. 31 2.8.5 The stdout.putiXsize Routines....................................................... 32 2.8.6 The stdout.put Routine................................................................... 33 2.8.7 The stdin.getc Routine. .................................................................. 34 2.8.8 The stdin.getiX Routines................................................................ 35