Assembly language for Intel-based computers / (Record no. 2531)
[ view plain ]
000 -LEADER | |
---|---|
fixed length control field | 10754pam a2200385 a 4500 |
001 - CONTROL NUMBER | |
control field | 2531 |
003 - CONTROL NUMBER IDENTIFIER | |
control field | BD-DhEWU |
005 - DATE AND TIME OF LATEST TRANSACTION | |
control field | 20180314200247.0 |
008 - FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION | |
fixed length control field | 981009s1999 njua g 001 0 eng d |
020 ## - INTERNATIONAL STANDARD BOOK NUMBER | |
International Standard Book Number | 0136603904 (hardcover) |
International Standard Book Number | 0130824518 (paper back) |
International Standard Book Number | 9780136603900 |
035 ## - SYSTEM CONTROL NUMBER | |
System control number | (OCoLC)40125110 |
040 ## - CATALOGING SOURCE | |
Original cataloging agency | DLC |
Transcribing agency | DLC |
Modifying agency | DLC |
-- | BD-DhEWU |
Language of cataloging | eng |
041 ## - LANGUAGE CODE | |
Language code of text/sound track or separate title | eng |
050 04 - LIBRARY OF CONGRESS CALL NUMBER | |
Classification number | QA76.8.I2594 |
Item number | I77 1999 |
082 00 - DEWEY DECIMAL CLASSIFICATION NUMBER | |
Classification number | 005.265 |
Item number | IRA 1999 |
100 1# - MAIN ENTRY--PERSONAL NAME | |
Personal name | Irvine, Kip R., |
9 (RLIN) | 2854 |
245 10 - TITLE STATEMENT | |
Title | Assembly language for Intel-based computers / |
Statement of responsibility, etc | Kip R. Irvine. |
250 ## - EDITION STATEMENT | |
Edition statement | 3rd ed. |
260 ## - PUBLICATION, DISTRIBUTION, ETC. (IMPRINT) | |
Place of publication, distribution, etc | Upper Saddle River, N.J. : |
Name of publisher, distributor, etc | Prentice-Hall, |
Date of publication, distribution, etc | c1999. |
300 ## - PHYSICAL DESCRIPTION | |
Extent | xxix, 676 p. : |
Other physical details | ill. ; |
Dimensions | 25 cm. + |
500 ## - GENERAL NOTE | |
General note | Rev. ed. of: Assembly language for the IBM-PC. 2nd ed. c1993. |
General note | Includes index. |
505 ## - FORMATTED CONTENTS NOTE | |
Title | TOC |
Formatted contents note | 1.1 Context of Assembly Language 1 --<br/>1.1.1 What Is Assembly Language? 2 --<br/>1.1.2 Assembly Language Applications 4 --<br/>1.1.3 Machine Language 6 --<br/>1.2 Data Representation 7 --<br/>1.2.1 Binary Numbers 7 --<br/>1.2.2 Converting Binary to Decimal 9 --<br/>1.2.3 Hexadecimal Numbers 9 --<br/>1.2.4 Signed Numbers 12 --<br/>1.2.5 Character Storage 13 --<br/>1.3 Introducing Assembly Language 15 --<br/>1.3.1 Assembly Language Instructions 15 --<br/>1.3.2 A Sample Debug Program 16 --<br/>1.3.3 Debug Commands 18 --<br/>2 Hardware and Software Architecture 23 --<br/>2.1 16-Bit Intel Processor Architecture 24 --<br/>2.1.1 Central Processing Unit 24 --<br/>2.1.2 Registers 25 --<br/>2.1.3 Status and Control Registers 27 --<br/>2.1.4 Flags 28 --<br/>2.1.5 Instruction Execution Cycle 29 --<br/>2.1.6 Intel Microprocessor Family 29 --<br/>2.2 32-Bit Intel Processor Architecture 31 --<br/>2.2.1 Improved Execution Cycle 31 --<br/>2.2.2 32-bit Register Set 32 --<br/>2.3 Operating System and Memory 32 --<br/>2.3.1 History of PC Memory Usage 32 --<br/>2.3.2 Memory Architecture 33 --<br/>2.3.3 System Startup Procedure 34 --<br/>2.3.4 Video Display 36 --<br/>2.3.5 Serial Communications Ports 37 --<br/>2.3.6 Read-Only Memory (ROM) 37 --<br/>2.3.7 Absolute Address Calculation 37 --<br/>2.4 Components of a Microcomputer 38 --<br/>2.4.1 Internal Components 39 --<br/>2.4.2 Motherboard Designs 39 --<br/>2.4.3 Bus Architecture 40 --<br/>2.4.4 Video Adapter 41 --<br/>2.4.5 Memory (RAM) 42 --<br/>2.4.6 Video RAM 43 --<br/>2.4.7 Secondary Storage Devices 44 --<br/>2.5 Review Questions 46 --<br/>2.6 Programming Exercises 48 --<br/>3 Assembly Language Fundamentals 53 --<br/>3.1 Basic Elements of Assembly Language 54 --<br/>3.1.1 Constants and Expressions 54 --<br/>3.1.2 Statements 55 --<br/>3.1.3 Names 56 --<br/>3.2 Sample Hello Program 57 --<br/>3.3 Assembling, Linking, and Debugging 60 --<br/>3.3.1 Borland Turbo Assembler (TASM) 61 --<br/>3.3.2 Microsoft Assembler (MASM) 62 --<br/>3.4 Data Allocation Directives 63 --<br/>3.4.1 Define Byte (DB) 64 --<br/>3.4.2 Define Word (DW) 66 --<br/>3.4.3 Define Doubleword (DD) 66 --<br/>3.5 Symbolic Constants 67 --<br/>3.5.1 Equal-Sign Directive 67 --<br/>3.5.2 EQU Directive 68 --<br/>3.5.3 TEXTEQU Directive 68 --<br/>3.6 Data Transfer Instructions 70 --<br/>3.6.1 MOV Instruction 70 --<br/>3.6.2 Operands with Displacements 71 --<br/>3.6.3 XCHG Instruction 72 --<br/>3.7 Arithmetic Instructions 73 --<br/>3.7.1 INC and DEC Instructions 73 --<br/>3.7.2 ADD Instruction 74 --<br/>3.7.3 SUB Instruction 74 --<br/>3.7.4 Flags Affected by ADD and SUB 75 --<br/>3.8 Basic Operand Types 76 --<br/>3.8.1 Register Operands 77 --<br/>3.8.2 Immediate Operands 77 --<br/>3.8.3 Direct Operands 78 --<br/>3.8.4 Direct - Offset Operands 78 --<br/>3.10 Review Questions 79 --<br/>3.11 Programming Exercises 84 --<br/>4 Using the Assembler 87 --<br/>4.1 More About the Assembler and Linker 88 --<br/>4.1.1 Source Listing File 88 --<br/>4.1.2 Map File 89 --<br/>4.1.3 Assembling and Linking with MS-DOS Batch Files 90 --<br/>4.1.4 Memory Models 91 --<br/>4.1.5 Target Processor Directives 93 --<br/>4.2 Operators and Expressions 94 --<br/>4.2.1 Arithmetic Operators 94 --<br/>4.2.2 OFFSET, SEG, PTR, LABEL, and EVEN 96 --<br/>4.2.3 TYPE and SIZE Operators 99 --<br/>4.2.4 Borland TASM's ENUM Directive 100 --<br/>4.3 JMP and LOOP Instructions 102 --<br/>4.3.1 JMP Instruction 102 --<br/>4.3.2 LOOP Instruction 104 --<br/>4.3.3 LOOP, LOOPW, LOOPD Instructions 105 --<br/>4.4 Indirect Addressing 106 --<br/>4.4.1 Indirect Operands 106 --<br/>4.4.2 Based and Indexed Operands 109 --<br/>4.4.3 Base-Index Operands 111 --<br/>4.4.4 Base-Index with Displacement 112 --<br/>4.5 Debugging Workshop 112 --<br/>4.5.1 Operand Sizes and Addressing Errors 113 --<br/>4.6 More 80386 and 80486 Instructions 115 --<br/>4.6.1 MOVZX and MOVSX Instructions 115 --<br/>4.6.2 XADD Instruction 116 --<br/>4.7 Using a Link Library 116 --<br/>4.7.1 Selected Procedures in the Book's Link Library 116 --<br/>4.7.2 Displaying Random Integers 121 --<br/>4.7.3 Timing Events 122 --<br/>5u Procedures and Interrupts 131 --<br/>5.1 Stack Operations 132 --<br/>5.1.1 PUSH and POP Instructions 134 --<br/>5.2 Procedures 135 --<br/>5.2.1 PROC and ENDP Directives 136 --<br/>5.2.2 Sample Program: SUBS.ASM 137 --<br/>5.2.3 Nested Procedure Calls 139 --<br/>5.2.4 Near and Far Procedures 139 --<br/>5.2.5 Using Memory Models 141 --<br/>5.3 Procedure Parameters 143 --<br/>5.3.1 Passing Arguments in Registers 143 --<br/>5.4 Software Interrupts 145 --<br/>5.4.1 INT Instruction 145 --<br/>5.4.2 Redirecting Input-Output 147 --<br/>5.5 MS-DOS Function Calls 147 --<br/>5.5.1 Output Functions 148 --<br/>5.5.2 Input Functions 149 --<br/>5.5.3 Date/Time Functions 154 --<br/>5.6 Bios-Level Keyboard Input (INT 16H) 155 --<br/>5.7 Bios-Level Video Control (INT 10H) 156 --<br/>5.7.1 Displays, Modes, and Attributes 157 --<br/>5.7.2 Color Text Mode 159 --<br/>5.7.3 INT 10h Video Functions 161 --<br/>5.7.4 Writing Directly to Video Memory 169 --<br/>5.8 Recursion 170 --<br/>6 Conditional Processing 179 --<br/>6.1 Boolean and Comparison Instructions 180 --<br/>6.1.1 Flags Register 180 --<br/>6.1.2 AND Instruction 181 --<br/>6.1.3 OR Instruction 182 --<br/>6.1.4 XOR Instruction 184 --<br/>6.1.5 NOT Instruction 185 --<br/>6.1.6 NEG Instruction 185 --<br/>6.1.7 TEST Instruction 186 --<br/>6.1.8 BT, BTC, BTR, BTS Instructions 186 --<br/>6.1.9 BSF and BSR Instructions 187 --<br/>6.1.10 CMP Instruction 188 --<br/>6.1.11 CMPXCHG Instruction 189 --<br/>6.1.12 Boolean Assembler Operators 190 --<br/>6.2 Conditional Jumps 191 --<br/>6.2.1 Jcond Instruction 191 --<br/>6.2.2 Code Generation for Conditional Jumps 194 --<br/>6.2.3 Conditional Jump Examples 195 --<br/>6.2.4 SETcondition Instruction 202 --<br/>6.3 Conditional LOOPS 203 --<br/>6.3.1 LOOPZ and LOOPE Instructions 203 --<br/>6.3.2 LOOPNZ and LOOPNE Instructions 204 --<br/>6.4 High-Level Logic Structures 204 --<br/>6.4.1 Simple IF Statement 204 --<br/>6.4.2 Compound IF Statement 205 --<br/>6.4.3 WHILE Structure 206 --<br/>6.4.4 REPEAT-UNTIL Structure 208 --<br/>6.4.5 CASE Structure 209 --<br/>6.4.6 Table of Procedure Offsets 210 --<br/>6.4.7 Finite State Machines 212 --<br/>7 Integer Arithmetic 225 --<br/>7.1 Shift and Rotate Instructions 228 --<br/>7.1.1 SHL Instruction 228 --<br/>7.1.2 SHLD/SHRD Instructions 230 --<br/>7.1.3 SHR Instruction 231 --<br/>7.1.4 SAL and SAR Instructions 232 --<br/>7.1.5 ROL Instruction 233 --<br/>7.1.6 ROR Instruction 234 --<br/>7.1.7 RCL and RCR Instructions 234 --<br/>7.2 Sample Applications 235 --<br/>7.2.1 Shifting Multiple Bytes on the 8086 235 --<br/>7.2.2 Fast Multiplication and Division 236 --<br/>7.2.3 Displaying Binary Bits 236 --<br/>7.2.4 Isolating a Bit String 238 --<br/>7.2.5 RECORD Directive 239 --<br/>7.3 Extended Addition and Substraction 241 --<br/>7.3.1 ADC Instruction 241 --<br/>7.3.2 SBB Instruction 244 --<br/>7.4 Multiplication and Division 245 --<br/>7.4.1 MUL Instruction 246 --<br/>7.4.2 IMUL Instruction 247 --<br/>7.4.3 DIV Instruction 248 --<br/>7.4.4 IDIV Instruction 249 --<br/>7.4.5 CBW, CWD, CDQ, and CWDE Instructions 249 --<br/>7.4.6 Preventing Divide Overflow 250 --<br/>7.5 Application: Direct Video Output 251 --<br/>7.5.1 Set_videoseg Procedure 251 --<br/>7.5.2 Writechar_direct Procedure 252 --<br/>7.5.3 Writestring_direct Procedure 253 --<br/>7.6 ASCII and Packed Decimal Arithmetic 254 --<br/>7.6.1 AAA Instruction 255 --<br/>7.6.2 AAS Instruction 255 --<br/>7.6.3 AAM Instruction 255 --<br/>7.6.4 AAD Instruction 256 --<br/>7.6.5 DAA, DAS Instructions 256 --<br/>7.8.1 Bit Manipulation 260 --<br/>7.8.2 Bit-Mapped Sets 261 --<br/>7.8.3 Prime Numbers 262 --<br/>7.8.4 Arithmetic with Large Numbers 263 --<br/>7.8.5 Direct Video Output 265 --<br/>8 Structures and Macros 267 --<br/>8.1 Structures 267 --<br/>8.2 Introducing Macros 272 --<br/>8.2.1 Macros with Parameters 272 --<br/>8.2.2 Defining a Macro 274 --<br/>8.2.3 Example: mDisplayStr Macro 275 --<br/>8.2.4 Example: mGotoRowCol Macro 276 --<br/>8.2.5 Macros That Allocate Storage 277 --<br/>8.2.6 LOCAL Directive 278 --<br/>8.3 Special Macro Techniques 279 --<br/>8.3.1 Nested Macros 279 --<br/>8.3.2 Macros Calling Procedures 280 --<br/>8.3.3 Conditional-Assembly Directives 281 --<br/>8.3.4 EXITM Directive 283 --<br/>8.3.5 Macro Operators 284 --<br/>8.4 A Simple Macro Library 286 --<br/>8.4.1 mWriteliteral (Write Literal) 286 --<br/>8.4.2 mCondCall (Conditional Call) 287 --<br/>8.4.3 mCompJmp (Compare and Jump) 288 --<br/>8.4.4 mMult16 (Memory Multiply/16) 288 --<br/>8.4.5 mMOVE (Memory to Memory Move) 289 --<br/>8.4.6 mLongLoop (Long Loop) 290 --<br/>8.5 Advanced Macros and Directives 291 --<br/>8.5.1 REPT Directive 291 --<br/>8.5.2 Linked List Example 292 --<br/>8.5.3 IRP Directive 293 --<br/>8.5.4 Extended Jump Macro 294 --<br/>8.5.5 Generic Shift/Rotate Macro 296 --<br/>8.5.6 Additional Tips 297 --<br/>9 Numeric Conversions and Libraries 313 --<br/>9.2 Character Translation Methods 314 --<br/>9.2.1 XLAT Instruction 315 --<br/>9.2.2 Character Filtering 316 --<br/>9.2.3 Character Encoding 317 --<br/>9.3 Stack Parameters 320 --<br/>9.3.1 Creating a Stack Frame 320 --<br/>9.3.2 Passing Arguments by Reference 322 --<br/>9.3.3 LDS/LES/LFS/LGS/LSS (Load Far Pointer) 325 --<br/>9.3.4 ENTER Instruction 326 --<br/>9.3.5 LEAVE Instruction 327 --<br/>9.3.6 Passing Arguments the 'C' Language Way 327 --<br/>9.3.7 Procedure Declarations in Borland TASM 329 --<br/>9.3.8 Function Procedures (TASM) 331 --<br/>9.3.9 Procedure Declarations in Microsoft MASM 331 --<br/>9.4 Separately Assembled Modules 334 --<br/>9.4.1 PUBLIC Directive 334 --<br/>9.4.2 Creating a MultiModule Program 335 --<br/>9.5 Creating a Link Library 337 --<br/>9.6 Binary to ASCII Conversion 340 --<br/>9.6.1 Writeint Procedure 341 --<br/>9.7 ASCII to Binary Conversion 342 --<br/>9.7.1 Readint Procedure 343 --<br/>10 Strings and Arrays 355 --<br/>10.1 String Storage Methods 355 --<br/>10.1.2 Types of Strings 356 --<br/>10.2 String Primitive Instructions 357 --<br/>10.2.1 MOVS (Move String Data) 361 --<br/>10.2.2 Need for Speed 362 --<br/>10.2.3 CMPS (Compare Strings) 363 --<br/>10.2.4 SCAS (Scan String) 365 |
526 ## - STUDY PROGRAM INFORMATION NOTE | |
Program name | CSE |
590 ## - LOCAL NOTE (RLIN) | |
Local note | Tahur Ahmed |
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM | |
Topical term or geographic name as entry element | IBM Personal Computer |
General subdivision | Programming. |
9 (RLIN) | 2855 |
Topical term or geographic name as entry element | Assembly languages (Electronic computers) |
9 (RLIN) | 2856 |
700 1# - ADDED ENTRY--PERSONAL NAME | |
Personal name | Irvine, Kip R., |
Dates associated with a name | 1951- |
Title of a work | Assembly language for the IBM-PC. |
9 (RLIN) | 2857 |
856 42 - ELECTRONIC LOCATION AND ACCESS | |
Materials specified | WorldCat details |
Uniform Resource Identifier | http://www.worldcat.org/title/assembly-language-for-intel-based-computers/oclc/40125110&referer=brief_results |
942 ## - ADDED ENTRY ELEMENTS (KOHA) | |
Source of classification or shelving scheme | Dewey Decimal Classification |
Koha item type | Text |
Withdrawn status | Lost status | Source of classification or shelving scheme | Damaged status | Not for loan | Collection code | Home library | Current library | Shelving location | Date acquired | Source of acquisition | Cost, normal purchase price | Total Checkouts | Full call number | Barcode | Copy number | Koha item type | Date last seen | Price effective from |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Dewey Decimal Classification | Not For Loan | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Reserve Section | 27/03/2001 | Smart Books | 1239.52 | 005.265 IRA 1999 | 9100 | C-1 | Text | ||||||
Dewey Decimal Classification | Not For Loan | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Reserve Section | 27/03/2001 | Smart Books | 1239.52 | 005.265 IRA 1999 | 9101 | C-2 | Text | ||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Circulation Section | 27/03/2001 | Smart Books | 1239.52 | 005.265 IRA 1999 | 9102 | C-3 | Text | |||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Circulation Section | 27/03/2001 | Smart Books | 1239.52 | 005.265 IRA 1999 | 9103 | C-4 | Text | |||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Circulation Section | 27/03/2001 | Smart Books | 1239.52 | 005.265 IRA 1999 | 9104 | C-5 | Text | |||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Audio Visual | 27/03/2001 | Smart Books | 005.265 IRA 1999 | CD-137 | C-3 | CDs & DVDs | 19/10/2014 | 19/10/2014 | ||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Audio Visual | 27/03/2001 | Smart Books | 005.265 IRA 1999 | CD-136 | C-2 | CDs & DVDs | 19/10/2014 | 19/10/2014 | ||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Audio Visual | 27/03/2001 | Smart Books | 005.265 IRA 1999 | CD-135 | C-1 | CDs & DVDs | 19/10/2014 | 19/10/2014 | ||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Audio Visual | 27/03/2001 | Smart Books | 005.265 IRA 1999 | CD-138 | C-4 | CDs & DVDs | 04/12/2014 | 04/12/2014 | ||||||
Dewey Decimal Classification | Non-fiction | Dr. S. R. Lasker Library, EWU | Dr. S. R. Lasker Library, EWU | Audio Visual | 27/03/2001 | Smart Books | 005.265 IRA 1999 | CD-139 | C-5 | CDs & DVDs | 04/12/2014 | 04/12/2014 |