Register your product to gain access to bonus material or receive a coupon.
Students learn more about current technology. Ex.___
Students get more exposure to programming techniques and more practice in their use. Ex.___
Introduces students to this frequently used feature, which is also a useful interface to BIOS, the input/output system covered in detail in Chapter 24. Ex.___
Helps students learn important hardware and software programming techniques. Ex.___
Facilitates learning and helps students to start programming early. Ex.___
Helps students view the contents of registers and memory during execution. Ex.___
Helps students with sample exercises and programs. Ex.___
Illustrates machine execution and contents of memory and registers. Ex.___
Illustrates the use of instructions and programming techniques. Ex.___
In the fifth edition of his successful text, IBM® PC Assembly Language and Programming, Peter Abel thoroughly covers a full range of programming levels. This revised edition is designed to assist the reader in learning assembly language programming. It introduces the simpler elements of the hardware and the language, and provides technical details and instruction as needed.
IBM® PC Assembly Language and Programming
Features
The fifth edition offers a variety of new material, including more details on video components and video operations, revised and additional program examples, more information about protected mode, stack usage, addressing modes, as well as array handling.
(NOTE: All chapters except 24, 25, and 26 begin with an Introduction and conclude with Key Points and Review Questions and Exercises.)
I. FUNDAMENTALS OF PC HARDWARE AND SOFTWARE.
1. Basic Features of PC Hardware.Bits and Bytes. The Binary Number System. Hexadecimal Representation. ASCII Code. PC Components. Internal Memory. Segments and Addressing. Registers. Hardware Interrupts.
2. Instruction Addressing and Execution.Features of an Operating System. The BIOS Boot Process. The System Program Loader. The Stack. Instruction Execution and Addressing. Instruction Operands. Protected Mode.
3. Examining Computer Memory and Executing Instructions.Using the DEBUG Program. Viewing Memory Locations. Machine Language Example I: Using Immediate Data. Machine Language Example II: Using Defined Data. An Assembly Language Program. Using the INT Instruction. Using the PTR Operator.
II. FUNDAMENTALS OF ASSEMBLY LANGUAGE.
4. Requirements for Coding in Assembly Language.Assembly Language Features. Conventional Segment Directives. Simplified Segment Directives. Initializing for Protected Mode. Defining Types of Data. Equate Directives.
5. Assembling, Linking, and Executing Programs.Preparing a Program for Assembling and Execution. Two-Pass Assembler. Linking an Object Program. Executing a Program. The Cross-Reference Listing. Error Diagnostics. The Assembler Location Counter. Writing .COM Programs.
6. Symbolic Instructions and Addressing.The Symbolic Instruction Set—An Overview. Data Transfer Instructions. Basic Arithmetic Instructions. Repetitive Move Operations. The INT Instruction. Addressing Modes. The Segment Override Prefix. Near and Far Addresses. Aligning Data Addresses.
7. Program Logic and Control.Short, Near, and Far Addresses. The JMP Instruction. The LOOP Instruction. The Flags Register. The CMP Instruction. Conditional Jump Instructions. Calling Procedures. The Effect of Program Execution on the Stack. Boolean Operations. Shifting Bits. Rotating Bits. Organizing a Program.
III. VIDEO AND KEYBOARD OPERATIONS.
8. Introduction to Video and Keyboard Processing.Screen Features. Setting the Cursor. Clearing the Screen. INT 21H Function 09H for Screen Display. INT 21H Function 0AH for Keyboard Input. INT 21H Function 02H for Screen Display. File Handles. INT 21H Function 40H for Screen Display. INT 21H Function 3FH for Keyboard Input.
9. Video Systems.Components of a Video System. Video Modes. Attributes. BIOS INT 10H Operations. Using Graphics Mode. Direct Video Display. ASCII Characters for Boxes and Menus.
10. Keyboard Operations.BIOS Keyboard Data Areas. INT 21H for Keyboard Input. INT 16H for Keyboard Input. Extended Function Keys and Scan Codes. BIOS INT 09H and the Keyboard Buffer.
IV. DATA MANIPULATION.
11. Processing String Data.Features of String Operations. MOVS: Move String Instruction. LODS: Load String Instruction. STOS: Store String Instruction. Program: Using LODS and STOS to Edit Data. CMPS: Compare String Instruction. SCAS: Scan String Instruction. Alternative Coding for String Instructions. Replicating a Pattern.
12. Arithmetic I: Processing Binary Data.Processing Unsigned and Signed Binary Data. Addition and Subtraction of Binary Data. Multiplying Binary Data. Dividing Binary Data. The Numeric Data Processor.
13. Arithmetic II: Processing ASCII and BCD Data.Data in Decimal Format. Processing ASCII Data. Processing Packed BCD Data. Converting ASCII Data to Binary Format. Converting Binary Data to ASCII Format. Shifting and Rounding a Product.
14. Defining and Processing Tables.Defining Tables. Direct Addressing of Table Entries. Searching a Table. The XLAT (Translate) Instruction. Sorting Table Entries. Address Tables. Two-Dimensional Arrays.
V. ADVANCED INPUT/OUTPUT.
15. Facilities for Using the Mouse.Basic Mouse Operations. Program: Displaying the Mouse Location. More Advanced Mouse Operations. Program: Using the Mouse with a Menu.
16. Disk Storage I: Organization.Characteristics of a Disk Storage Device. The Disk System Areas and Data Area. The Boot Record. The Directory. The File Allocation Table. Processing Files on Disk.
17. Disk Storage II: Writing and Reading Files.ACSIIZ Strings. File Handles. Error Return Codes. File Pointers. Creating Disk Files. Reading Disk Files. Random Processing.
18. Disk Storage III: INT 21H Functions for Support Disks and Files.Operations Handling Disk Drives. Operations Handling the Directory and the FAT. Operations Handling Disk Files.
19. Disk Storage IV: INT 13H Disk Functions.BIOS Status Byte. Basic INT 13H Disk Operations. Other INT 13H Disk Operations.
20. Facilities for Printing.Common Printer Control Characters. INT 21H Function 40H: Print Characters. Special Printer Control Characters. BIOS INT 17H Functions for Printing.
VI. SPECIAL TOPICS.
21. Defining and Using Macros.Simple Macro Definitions. Using Parameters in Macros. Using Comments in Macros. Nested Macros. Macro Directives.
22. Linking to Subprograms.The SEGMENT Directive. Intrasegment Calls. Intersegment Calls. The EXTRN and PUBLIC Attributes. Using EXTRN and PUBLIC for an Entry Point. Defining the Code Segment as PUBLIC. Using Simplified Segment Directives. Passing Parameters to a Subprogram. The ENTER and LEAVE Instructions. Linking a C/C++ Program with an Assembly Language Program.
23. Program Loading and Overlays.The Program Segment Prefix. The High-Memory Area. Memory Allocation Strategy. The Program Loader. Allocating and Freeing Memory. Loading or Executing a Program Function. Program Overlays. Resident Programs.
VII. REFERENCE CHAPTERS.
24. BIOS Data Areas, Interrupts, and Ports.The Boot Process. The BIOS Data Area. Interrupt Services. BIOS Interrupts. INT 21H Services. Ports. String Input/Output. Generating Sound.
25. Operators and Directives.Type Specifiers. Operators. Directives.
26. The PC Instruction Set.Register Notation. The Addressing Mode Byte. The Instruction Set.
Appendix A: Conversion between Hexadecimal and Decimal Numbers.Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.
This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.
To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:
For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.
For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.
Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.
Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.
If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.
On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.
We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.
Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.
Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.
This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.
This site currently does not respond to Do Not Track signals.
Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.
This site is not directed to children under the age of 13.
Pearson may send or direct marketing communications to users, provided that
Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.
If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.
Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.
Pearson does not rent or sell personal information in exchange for any payment of money.
While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.
California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.
Pearson may disclose personal information, as follows:
This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.
Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.
We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.
Last Update: November 17, 2020