IBM PC汇编语言与程序设计(第4版)

IBM PC汇编语言与程序设计(第4版) pdf epub mobi txt 电子书 下载 2026

出版者:清华大学出版社
作者:埃布尔
出品人:
页数:606
译者:
出版时间:1998-02
价格:30.00
装帧:平装
isbn号码:9787302028307
丛书系列:
图书标签:
  • 计算机
  • 汇编
  • 编程
  • AssemblyLanguage
  • 程序语言
  • 汇编语言
  • 已购
  • dev
  • IBM PC
  • 汇编语言
  • 程序设计
  • 第4版
  • 计算机科学
  • 技术
  • 编程
  • x86
  • 经典教材
  • 电子工业出版社
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

内容简介

本书目的是帮助读者学习用汇编语言进行程序设计,首先简明

地介绍硬件和软件,然后介绍编程所必需的指令,特别重视用例清

晰。第4版与前几版相比:加强对Intel80486及其后继机型的介绍,

有更多的实例和练习,而且较早地引入了中断操作,介绍了最新的

汇编程序版本,对全书作了大面积调整和修订,每章后的问题经过

修订和增补。全书分7部分:PC机硬、软件基础;汇编语言基础;

屏幕操作与键盘操作;数据处理;先进的输入/输出;高级程序设

计;有关BIOS数据区程序中断,伪操作,指令系统的参考资料;书

后附有每章后部分问题的答案。

作者简介

目录信息

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
· · · · · · (收起)

读后感

评分

评分

评分

评分

评分

用户评价

评分

我个人认为,这本书的配套资源和后续的辅助材料设计也做得非常到位。在每一章的末尾,作者都设置了不同难度的思考题和实践项目,这些练习并非简单的重复代码输入,而是需要读者调动所学知识去解决实际问题的“小挑战”。例如,书中曾有一个要求自己编写一个简单的内存拷贝程序的练习,它看似简单,实则涵盖了寄存器使用、内存边界检查和循环优化等多个关键点。更让人惊喜的是,书中附带的光盘或者配套网站上(如果是更新版本),通常会提供一些早期DOS环境下的调试工具的简易教程或者源码包,这使得读者能够真正地将书本知识在当时的环境下跑起来,获得即时的反馈。这种理论结合实践的闭环设计,是任何一本纯理论书籍都无法比拟的优势,极大地提升了学习的成就感和对知识的掌握程度。

评分

就其实用价值而言,这本书的价值远超出了单纯的编程指导。它更像是一扇通往计算机底层运作机制的“时间之窗”。通过学习书中的内容,我不仅掌握了如何使用汇编语言编写程序,更重要的是,我开始理解操作系统是如何调度任务的,内存是如何被分配和管理的,甚至连编译器在将高级语言翻译成机器码的过程中,幕后发生了什么,都有了更清晰的认识。书中对于当时标准PC环境下的系统调用和内存寻址模式的描述,虽然在今天看来可能已经属于“历史遗迹”,但正是这些“遗迹”,构成了现代计算机体系结构的基石。掌握了这些,再去看现代的C++或Python代码时,你会立刻对性能瓶颈和资源消耗产生一种全新的敏感度,这对于任何想在软件领域走得更远的人来说,都是一笔宝贵的精神财富。

评分

深入阅读这本书的结构安排,我发现作者在内容组织上采取了一种循序渐进、由浅入深的策略,这对于打牢基础至关重要。开篇并没有直接一头扎进晦涩难懂的指令集,而是花了大篇幅来解释x86架构的基础概念、寄存器的作用以及汇编语言在整个软件生态中的位置。这种“宏观铺垫”的做法,使得读者在接触到具体的MOV、ADD等指令时,心里已经有了一个清晰的框架。随后,章节的过渡处理得非常流畅,比如从数据处理自然而然地引向流程控制,再到子程序的调用与管理。作者对细节的把握令人赞叹,在讲解中断和I/O操作时,他没有停留在理论层面,而是结合了当时PC硬件的实际情况进行了深入剖析,这种结合了理论深度与实践广度的叙述方式,极大地提升了知识的实用性。相比于一些只罗列指令的参考手册,这本书更像是一本带有完整教学逻辑的教科书,引导着读者一步步构建起自己的汇编知识体系。

评分

这本书的装帧设计非常用心,封面采用了一种复古的深蓝色调,搭配烫金的字体,散发着一种沉稳而专业的质感。拿到手里就能感受到印刷纸张的厚实和韧性,内页的排版更是让人眼前一亮。它没有采用当下流行的那种极简风格,而是保留了早期技术书籍的严谨布局,每一章的结构都清晰可辨,小标题和代码示例的字体选择也恰到好处,既保证了阅读的舒适度,又在视觉上营造出一种对技术敬畏的感觉。特别是书中对一些核心概念的图示说明,即使是复杂的内存结构或指令流程,也能通过简洁的方框和箭头清晰地展现出来,这对于初学者来说是极大的福音。侧边栏的设计也很实用,经常会放置一些作者的“经验之谈”或历史背景介绍,让学习过程不至于太过枯燥,仿佛有位经验丰富的老师在旁边耳提面命。整体而言,这本书的物理呈现就好像是一件精心打磨的工艺品,让人在学习之余,也能感受到一种对经典计算机科学的致敬。

评分

这本书的语言风格非常独特,它有一种老派的、不事雕琢的真诚感。作者在解释复杂的逻辑时,总是用一种非常直白的叙述方式,没有过多的花哨修饰,直击问题的核心。举个例子,当他讲解如何进行位操作或浮点运算时,他会用非常生活化的比喻来辅助理解,这种接地气的表达方式,大大降低了初学者对“底层编程”的畏惧感。更值得称道的是,书中对代码示例的注释极其详尽,几乎每一条指令后面都有作者亲笔写下的解释,不仅说明了这条指令“做什么”,更重要的是解释了它“为什么这么做”,以及“在什么情况下应该这么做”。这种对编程思想的渗透式教学,远比单纯的语法罗列要高明得多。读这本书,感觉就像是坐在一个知识渊博的老前辈身边,听他慢条斯理地剖析每一个技术细节,充满了耐心和洞察力。

评分

十年前读的书

评分

学汇编必看

评分

毕业后读的,不过只看了一半。。。。奇怪,经典的书怎么豆瓣上没人读??

评分

毕业后读的,不过只看了一半。。。。奇怪,经典的书怎么豆瓣上没人读??

评分

十年前读的书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有