PREFACE Part A Fundamentals of PC Hardware and Software 1 BASIC FEATURES OF PC HASDWARE Introduction Bits and Bytes Binary Numbers Hexadecimal Representation ASCII Code The Processor Internal Memory Segments and Addressing Registers Key Points Questions 2 REQUIREMENTS FOR USING PC SOFTWARE Introduction Features of the Operating System The Boot Process Input-Output Interface The System Program Loader The Stack Addressing of Instructions and Data Instruction Operands Key Points Questions 3 EXECUTING COMPUTER INSTRUCTIONS Introduction Using the DEBUG Program Viewing Memory Locations Machine Language Example 1: Immediate Data Machine Language Example 11: Defined Data An Assembly Language Example Using the INT Instruction Saving a Program from Within DEBUG Using the PTR Operator Key Points Questions Part B Fundamentals of Assembly Language 4 REQUIREMENTS FOR CODING IN ASSEMBLY LANGUAGE Introduction Assemblers and Compilers Progiam Comments Reserved Words Identifiers Statements Directives Instructions for Initializing a Program Instructions for Ending Program Execution Example of a Source Program Initializing for Protected Mode Simplified Segment Directives Data Definition Directives for Defining Data The EQU Directive Key Points Questions 5 ASSEMBLING, LINKING AND EXECUTING A PROGRAM Introduction Preparing a Program for Execution Assembling a Source Program Using Conventional Segment Definitions Using Simplified Segment Directives Two-Pass Assembler Linking an Object Program Executing a Program Cross-Reference Listing Error Diagnostics The Assembler Location Counter Key Points Questions 6 SYMBOLIC INSTRUCTIONS AND ADDRESSING Introduction The Symbolic Instruction Set Instruction Operands The MOV Instruction Move-and-Fill Instmctions Immediate Operands The XCHG Instruction The LEA Instruction The INC and DEC Instmctions Extended Move Operations The INT Instruction Aligning Data Addresses Near and Far Addresses The Segment Override Prefix Key Points Questions 7 WRITING .COM PROGRAMS Introduction Differences Between an .EXE and a .COM Program Converting into .COM Format Example of a .COM Program The .COM Stack Debugging Tips Key Points Questions 8 PROCRAMMING REQUIREAIENTS FOR LOGIC AND CONTROL Introduction Short, Near, and Far Addresses Instruction Labels The JMP Instruction The LOOP Instruction The Flags Register The CMP Instruction Conditional Jump Instructions Calling Procedures Effect of Program Execution on the Stack Boolean Operations Program: Changing Uppercase to Lowercase Shifting Bits Rotating Bits Jump Tables Organizing a Program Key Points Questions Part C Screen and Keyboard Operations 9 INTRODUCTION TO SCREEN AND KEYBOARD PROCESSING Introduction The Screen Setting the Cursor Clearing the Screen INT 21H Function 09H for Screen Display INT 21H Function OAH for Keyboard Input Program: Accepting and Displaying Names Using Control Characters in a Screen Display INT 2IH Function 02H for Screen Display File Handles INT 2IH Function 40H for Screen Display INT 2IH Function 3FH for Keyboard Input Key Points Questions 10 ADVANCED FEATURES OF SCREEN PROCESSINC Introduction Video Adapters Setting the Video Mode Using Text Mode Screen Pages Using INT IOH for Text Mode Program: Displaying the ASCII Character Set ASCII Characters for Boxes and Menus Program: Blinking, Reverse Viden and Scrolling Direct Video Display Using Graphics Mode INT IOH for Graphics Program: Setting and Displaying Graphics Mode Determining the Type of Video Adapter Key Points Questions 11 ADVANCED FEATURES OF KEYBOARD PROCESSING Introduction The Keyboard Keyboard Shift Status The Keyboard Buffer Using INT 2IH for Keyboard Input Using INT 16H for Keyboard Input Extended Function Keys and Scan Codes Program: Selecting from a Menu BIOS INT 09H and the Keyboard Buffer Keying in the Full ASCII Character Set Key Points Questions Part D Data Manipulation 12 PROCESSING STRING DATA Introduction Features of String Operations REP: Repeat String Prefix MOVS: Move String Instruction LODS: Load String Instruction STOS: Store String Instruction Program: Using LODS and STOS to Transfer Data CMPS: Compare String Instruction SCAS: Scan String Instruction Example: Using Scan and Replace Alternative Coding for String Instructions Duplicating a Pattern Program: Right Adjusting a screen Display Key Points Questions 13 ARITHMETIC: I-PROCESSING BINARY DATA Introduction Processing Unsigncd and Signed Data Addition and Subtraction Extending Values in a Register Performing Arithmetic on Doubleword Values Multiplication Performing Doubleword Multiplication Special Multiplication Instructions Multiplication by Shifting Division Division by Shifting Reversing the Sign The Numeric Data Processo Key Points Questions 14 ARITHMETIC: II-PROCESSING ASCII AND BCD DATA Introduction Data in Decimal Format Processing ASCII Data Processing Unpacked BCD Data Processing Packed BCD Data Converting ASCII Data to Binary Format Converting Binary Data to ASCII Format Shifting and Rounding a Product Program: Converting ASCII Data Key Points Questions 15 DEFINING AND PROCESSING TABLES Introduction Defining Tables Direct Addressing of Table Entries : Searching a Table The XLAT (Translate) Instruction Program: Displaying Hex and ASCII Characters Sorting Table Entries Linked Lists The TYPE, LENGTH and SIZE Operators Key Points Questions Part E Advanced Input/Output 16 DISK STORAGE 1: ORGANIZATION Introduction Disk Characteristics The Disk System Area and Data Area The Boot Record The Directory The File Allocation Table Exercise: Examining the FAT Processing Files on Disk Key Points Questions 17 DISK STORAGE 11: WRITING AND READING fILES Introduction ASCIIZ Strings File Handles Error Return Codes File Pointers Using File Handles to Create Disk Files Using File Handles to Read Disk Files Using File Handles for Random Processing Program: Processing an ASCII File Absolute Disk 1/0 Disk Services Using File Control Blocks Key Points Questions 18 DISK STORAGE III: INT 21H FUNCTIONS FOR SUPPORTING DISKS AND PILES Introduction Operations Handling Disk Drives Program: Reading Data from Sectors Operations Handling the Directory and the FAT Program: Displaying the Directory Operations Handling Disk Files Program: Selectively Deleting Files Key Points Questions 19 DISK STORAGE IV: INT 13H DISK FUNCTIONS Introduction BIOS Status Byte Basic INT I3H Disk Operations Program: Using INT I3H to Read Sectors Other INT I3H Disk Operations Key Points Questions 20 FACILITIES FOR PRINTING Introduction Common Printcr Control Charactcrs INT 2IH Function 401-1: Print Charaeters Program: Printing With Page Overflow and Headings Program: Printing ASCII Files and Handling Tabs INT IIH Function 05 H: Print Character Special Printer Control Characters INT 17H Functions for Printing Key Points Questions 21 OTHER INPUT/OUTPUT FACILITIES Introduction Mouse Features Mouse Funetions Common INT 33H Operations Program: Using the Mouse Ports String Input/Output Generating Sound Key Points Questions Part F Advanced Programming 22 DEFINING AND USING MACROS Introduction Two Simple Macro Definitions Using Parameters in Macros Macro Comments Using a Macro Within a Macro Definition The LOCAL Directive Including Macros from a Library Concatenation Repetition Directives Conditional Directives Key Points Questions 23 LINKING TO SUBPROGRAMS Introduction The SEGMENT Directive Intrasegment Calls Intersegment Calls The EXTRN and FUBLIC Attributes Using EXTRN and PUBLIC for an Entry Point Defining the Code Segment as PUBLIC Using Simplified Segment Directives Defining Common Data as PUBLIC Defining Data in Both Programs Passing Parameters to a Subprogram Linking Pascal with an Assembly Language Program Linking C with an Assembly Language Program Key Points Questions 24 MEMORY MANAGEMENT Introduction The Main DOS Programs The High-Memory Area The Program Segment Prefix Memory Blocks Memory Allocation Strategy The Program Loader Allocating and Freeing Memory Loading or Executing a Program Function Program Overlays Resident Programs Key Points Questions Part G Reference Chapters 25 BIOS DATA AREAS AND PROGRAM INTESSUPTS Introduction The Boot Process The BIOS Data Area Interrupt Services BIOS Interrupts BIOS:DOS Interface DOS Interrupts INT 2IH Services Key Points Questions 26 OPERATORS AND DIRECTIVES Introduction Type Specifiers Operators Directives 27 THE PC INSTRUCTION SET Introduction Register Notation The Addressing Mode Byte Two-Byte Instructions Three-Byte Instructions Four-Byte Instructions Instruction Set APPENDIXES A Conversion Between Hexadecimal and Decimal Numbers B ASCII Character Codes C Reserved Words D Assembler and Link Options E The DEBUG Program F Keyboard Scan Codes and ASCII Codes ANSWERS TO SELECTED QUESTIONS INDEX
以下为对购买帮助不大的评价