图书目录

目    录

第1章  微处理器:8086/8088—— 

体系结构、引脚图和时序图 1

1.1  8086的寄存器组织 2

1.1.1  数据寄存器 2

1.1.2  段寄存器 2

1.1.3  指针和变址寄存器 3

1.1.4  标志寄存器 3

1.2  体系结构 3

1.2.1  存储分段 5

1.2.2  标志寄存器 6

1.3  8086的信号描述 7

1.4  物理存储器组织 13

1.5  一般总线操作 15

1.6  I/O寻址能力 16

1.7  特殊的微处理器行为 16

1.7.1  微处理器的复位和初始化 16

1.7.2  停机 17

1.7.3  测试和同步外部信号 17

1.7.4  系统总线的导出 17

1.8  最小模式下的8086系统

和时序 19

1.9  最大模式下的8086系统

和时序 22

1.10  8088微处理器 25

1.10.1  8088的体系结构

和信号描述 25

1.10.2  8088总线的导出 28

1.10.3  8088系统的一般时序 30

1.10.4  8086和8088的比较 31

1.11  小结 32

1.12  习题 32

第2章  8086/8088指令集和汇编命令 35

2.1  机器语言指令格式 35

2.2  8086的寻址方式 38

2.3  8086/8088指令集 43

2.3.1  数据复制/传送指令 44

2.3.2  算术指令 54

2.3.3  逻辑指令 60

2.3.4  串操作指令 64

2.3.5  控制转移与分支指令 66

2.3.6  无条件分支指令 67

2.3.7  条件转移指令 69

2.3.8  标志处理指令与处理器

控制指令 71

2.4  汇编命令与操作符 72

2.5  小结 80

2.6  习题 80

第3章  8086/8088汇编语言程序

设计思想 81

3.1  一些机器语言级程序 82

3.2  源程序到机器码的转变 88

3.3  利用汇编器进行程序设计 93

3.3.1  程序的创建 94

3.3.2  程序的汇编 95

3.3.3  程序的链接 97

3.3.4  程序的调试 98

3.4  汇编语言示例程序 100

3.4.1  如何编写汇编语言程序 101

3.4.2  通过DOS功能调用

来使用IBM微型计算机

资源的程序 119

3.5  小结 124

3.6  习题 124

第4章  专有体系结构特征及

相关编程 127

4.1  堆栈简介 127

4.2  8086/8088堆栈结构 128

堆栈编程 130

4.3  中断与中断服务例程 133

4.4  8086/8088中断周期 133

4.5  非屏蔽中断 135

4.6  可屏蔽中断 135

4.7  中断编程 136

4.8  过程参数传递 139

4.9  处理大于64KB的程序 142

4.10  宏汇编 144

4.10.1  宏定义 144

4.10.2  向宏传递参数 145

4.11  定时与延时 145

4.12  小结 148

4.13  习题 148

第5章  基本外设及其与8086/8088

的接口 151

5.1  半导体存储器接口 151

5.1.1  静态RAM接口 152

5.1.2  8088的存储器接口 156

5.2  动态RAM接口 159

5.3  与I/O端口的接口 166

5.4  PIO 8255(可编程输入/

输出端口) 175

5.5  8255的工作模式 177

5.5.1  BSR模式 177

5.5.2  I/O模式 178

5.6  与模数转换器的接口 199

5.6.1  ADC 0808/0809 200

5.6.2  ADC 7109——双斜率

积分型12位模数转换器 203

5.6.3  与8086的接口 208

5.7  与数模转换器的接口 210

5.7.1  AD 7523——8位乘法型

数模转换器 210

5.7.2  8位数模转换器DAC 0800 212

5.8  与步进电机的接口 213

5.9  使用8255来控制高功率设备 217

5.10  小结 218

5.11  习题 218

第6章  专用可编程外设及其接口 221

6.1  可编程计数器/定时器 221

6.1.1  体系结构和信号描述 221

6.1.2  控制字寄存器 223

6.1.3  8253的操作模式 223

6.1.4  8253的编程和接口 227

6.2  可编程中断控制器8259A 235

6.2.1  8259A的体系结构和

信号描述 235

6.2.2  8086系统的中断序列 237

6.2.3  8259A的命令字 238

6.2.4  8259的操作模式 241

6.2.5  8259的接口和编程 244

6.3  键盘/显示控制器8279 250

6.3.1  8279的体系结构

和信号描述 251

6.3.2  8279的操作模式 253

6.3.3  操作模式的详细信息 254

6.3.4  8279的命令字 255

6.3.5  键编码和状态数据格式 258

6.3.6  8279的接口和编程 259

6.4  可编程通信接口8251 USART 262

6.4.1  数据通信方法 262

6.4.2  8251的体系结构和

信号描述 262

6.4.3  8251A的操作模式描述 265

6.4.4  8251和8086的连接接口

和编程 270

6.5  小结 272

6.6  习题 272

第7章  DMA、软盘和CRT控制器 275

7.1  DMA控制器8257 275

7.1.1  8257的内部体系结构 276

7.1.2  数据总线缓冲器、读写

逻辑、控制单元和优先级

判决器 279

7.1.3  8257的信号描述 280

7.2  DMA传送与操作 282

7.2.1  DMA请求的优先级 283

7.2.2  编程与读取8257寄存器 283

7.2.3  8257和8086的接口 284

7.3  可编程DMA接口8237 287

7.3.1  8237的内部体系结构 287

7.3.2  8237的寄存器组织 287

7.3.3  8237的信号描述 290

7.3.4  8237的DMA操作 292

7.3.5  8237的传送方式 293

7.3.6  DMA的地址生成 294

7.3.7  8237命令与编程 294

7.4  软盘控制器8272 298

7.4.1  软盘 298

7.4.2  FDC 300

7.4.3  8272的内部体系结构 300

7.4.4  8272的信号描述 301

7.4.5  8272的功能描述 303

7.4.6  8272的命令 305

7.4.7  8272与8086的接口 322

7.5  CRT控制器8275 326

7.5.1  8275的内部体系结构 327

7.5.2  8275的信号描述 328

7.5.3  系统操作 330

7.5.4  8275的显示格式

与操作特性 331

7.5.5  8275 CRT控制器的命令集 335

7.5.6  状态标志位 340

7.5.7  8275与8086的连接

与编程 341

7.6  CRT控制器6845 344

7.6.1  6845的体系结构

与信号描述 344

7.6.2  6845的内部寄存器 351

7.6.3  重要的CRT时序 358

7.6.4  6845的接口与编程 360

7.7  小结 362

7.8  习题 363

第8章  多处理器系统 365

8.1  互连拓扑 366

8.2  多处理器系统的软件 371

8.3  数值处理器8087 372

8.3.1  8087的体系结构 373

8.3.2  8087的信号描述 374

8.3.3  8087的寄存器组 377

8.3.4  异常处理 380

8.3.5  8087和CPU的互连 381

8.3.6  8087的指令集 383

8.3.7  寻址方式和数据类型 389

8.3.8  8087的编程 390

8.4  I/O处理器8089 392

8.4.1  简介 392

8.4.2  8089的体系结构 394

8.5  总线仲裁和控制 396

8.6  紧耦合系统和松耦合系统 401

8.7  基于PC的多处理器

系统设计 403

8.7.1  简介 403

8.7.2  子处理单元的设计 403

8.7.3  系统软件设计 408

8.7.4  到多处理器系统的

DOS功能接口(虚拟) 410

8.7.5  结果和结论 413

8.8  小结 413

8.9  习题 413

第9章  80286-80287——具有存储管

理和保护功能的微处理器 415

9.1  80286的显著特征 415

9.2  80286的内部体系结构 416

9.2.1  80286的寄存器组织 416

9.2.2  80286的内部模块结构图 418

9.2.3  80286的中断 420

9.3  80286的信号描述 422

9.4  实地址模式 425

9.5  受保护的虚地址模式(PVAM) 426

9.5.1  简介 426

9.5.2  PVAM中的物理地址计算 427

9.5.3  描述符及其类型 428

9.5.4  段描述符Cache寄存器 431

9.6  特权等级 434

9.6.1  任务特权等级 435

9.6.2  描述符特权等级 435

9.6.3  选择子特权等级 435

9.6.4  描述符访问和特权

等级检查 435

9.6.5  特权等级变化 438

9.7  保护 438

9.8  特殊操作 440

9.8.1  处理器复位和初始化 440

9.8.2  任务切换操作 440

9.8.3  指针测试指令 441

9.8.4  保护模式初始化 442

9.8.5  进入PVAM的方式 442

9.8.6  停机 442

9.9  80286的总线接口 442

9.10  基本总线操作 443

9.11  80286的取指周期 446

9.12  80286最小系统配置 447

9.13  将存储器和I/O设备

连接到80286 449

9.14  80286的总线使用优先权 452

9.15  总线保持和HLDA顺序 453

9.16  中断确认顺序 453

9.17  指令集特征 454

9.17.1  寻址模式 454

9.17.2  80286支持的数据类型 455

9.17.3  80286的附加指令 456

9.17.4  保护控制指令 458

9.18  80287数学协处理器 460

9.18.1  80287的体系结构 460

9.18.2  状态字和控制字 462

9.18.3  80287的信号描述 463

9.18.4  和80286的接口 464

9.18.5  80287支持的数据类型 466

9.18.6  指令集小结 466

9.19  小结 473

9.20  习题 474

第10章  80386-80387和80486—— 

32位处理器 475

10.1  80386DX的显著特征 475

10.2  80386的体系结构和

信号描述 476

10.3  80386的寄存器组织 479

10.4  80386的寻址模式 482

10.5  80386的数据类型 483

10.6  80386的实地址模式 483

10.7  80386的保护模式 484

10.8  段 486

10.8.1  描述符表 486

10.8.2  描述符 486

10.9  页 487

10.9.1  页操作 487

10.9.2  线性地址到物理地址

的转换 488

10.10  虚拟8086模式 489

10.11  80386的增强指令集 491

10.12  协处理器80387 492

10.12.1  80387的体系结构 493

10.12.2  和80386的互连 495

10.13  带数值协处理器的

CPU—— 80486DX 496

10.13.1  80486的显著特征 496

10.13.2  80486的体系结构 497

10.13.3  80486的信号描述 499

10.13.4  80486的普通特征 503

10.13.5  片上Cache和Cache

控制单元 504

10.14  小结 508

10.15  习题 508

第11章  微处理器体系结构的最新

发展——从Pentium开始

的旅程 511

11.1  80586(Pentium)的显著特征 512

11.2  计算机体系结构的一些

相关概念 512

11.3  系统体系结构 513

11.3.1  超标量执行 514

11.3.2  分离的指令Cache

和数据Cache 515

11.3.3  浮点单元 515

11.3.4  浮点操作异常 516

11.4  分支预测 516

11.5  Pentium的增强指令集 517

11.6  MMX 517

11.7  Intel MMX的体系结构 517

11.8  MMX的数据类型 518

11.9  回卷和饱和算术运算 518

11.10  MMX指令集 519

11.11  编写多媒体应用程序时

应该注意的突出问题 520

11.12  通向Pentium Pro和

Pentium II的旅程 520

11.12.1  指令的动态执行 521

11.12.2  动态指令执行机制

的实现 521

11.13  Pentium III(P III)——21

世纪产生的CPU 522

11.14  小结 522

11.15  习题 523

第12章  Pentium 4——21世纪

产生的微处理器 525

12.1  Pentium 4微处理器的起源 525

12.2  Pentium 4微处理器的

显著特征 526

12.3  Pentium 4微处理器的

NetBurst微体系结构 527

12.3.1  前端模块 528

12.3.2  IA-32指令译码器 529

12.3.3  Trace Cache(TC) 529

12.3.4  微码ROM 529

  

12.3.5  Pentium 4中的前端分支

预测器 530

12.3.6  分支预测 530

12.4  指令快表(ITLB)和分支预测 531

12.5  乱序执行 531

12.5.1  乱序执行引擎 532

12.5.2  寄存器重命名 532

12.5.3  指令调度 533

12.6  快速执行模块 533

12.7  存储子系统 533

12.7.1  页管理及虚拟存储器 533

12.7.2  Cache 534

12.8  超线程技术 534

12.8.1  线程级并行性 534

12.8.2  实现策略 535

12.9  Pentium中的超线程技术 535

12.9.1  体系结构状态 536

12.9.2  超线程技术的设计问题 536

12.9.3  操作系统 537

12.10  高级Pentium微处理器

中的扩展指令集 537

12.10.1  流式SIMD扩展 538

12.10.2  Pentium III SSE指令

的特征 538

12.10.3  SSE指令的类型 539

12.10.4  流式SIMD扩展2(SSE2)

和扩展3(SSE3)指令 539

12.10.5  IA-32指令译码 541

12.10.6  微操作队列 541

12.11  指令集小结 541

12.11.1  Pentium 4微处理器

的通用指令 542

12.11.2  SSE SIMD单精度

浮点指令集 547

12.11.3  SSE2压缩和标量

双精度浮点指令 548

12.11.4  SSE3指令 550

12.12  形式化验证的需求 552

12.13  小结 552

12.14  习题 552

第13章  RISC体系结构概述 553

13.1  RISC处理器的历史 553

13.2  混合体系结构——RISC

和CISC的混合 554

13.3  RISC的优点 554

13.4  RISC处理器的基本特征 555

13.5  RISC处理器的设计问题 556

13.5.1  寄存器窗口 556

13.5.2  流水线 556

13.5.3  单周期指令执行 557

13.6  流水线系统的性能问题 557

13.6.1  指令延迟 557

13.6.2  相关性问题 558

13.6.3  使用RISC处理器应该

注意的问题 558

13.7  一些RISC处理器的

体系结构 559

13.7.1  MIPS 559

13.7.2  Sun UltraSPARC 560

13.8  另一些RISC处理器的

体系结构 563

13.9  小结 564

13.10  习题 564

第14章  基于微处理器的铝冶炼

控制系统 565

14.1  铝冶炼的通用过程 565

14.2  电解室的常用控制方法 566

14.3  铝冶炼过程中电解室的异常 567

14.4  异常电解室控制法则的

简单描述 568

14.5  设计中的主要问题 569

14.6  铝冶炼控制器硬件 569

14.7  控制算法 570

14.7.1  数据/参数描述 572

14.7.2  初始化 572

14.7.3  模块1 573

14.7.4  模块2 573

14.7.5  模块3 573

14.7.6  模块4 574

14.8  小结 574

第15章  基于微处理器的模式

扫描系统设计 575

15.1  扫描器系统的组织结构 576

15.2  扫描系统描述 578

15.3  可编程的操作模式 579

15.4  存储器读/写系统和

启动过程 582

15.5  结果及讨论 582

15.6  小结 584

第16章  设计一个电子称量台 585

16.1  设计难点 585

16.1.1  机械装置的基底

(称重平台) 586

16.1.2  机械装置 587

16.1.3  称重传感器的选择

和连接 588

16.1.4  电子线路设计 590

16.2  软件开发 600

16.2.1  软件操作 600

16.2.2  算法 601

16.3  校准 609

16.4  小结 609

第17章  微控制器8051和

80196简介 611

17.1  英特尔公司的8位微控制

器系列 612

17.2  8051的体系结构 613

17.3  8051的信号描述 615

17.4  8051的寄存器组 617

17.5  8051的重要操作特性 619

17.5.1  程序状态字 619

17.5.2  定时器模式控制寄存器 620

17.5.3  定时器控制寄存器 620

17.5.4  串口控制寄存器 620

17.5.5  电源控制寄存器 621

17.6  8051的存储器和I/O寻址 621

17.6.1  存储器寻址 621

17.6.2  外部I/O接口 624

17.7  8051的中断 625

17.8  8051的指令集 626

17.9  基于微控制器8051的连续

滚动布匹或纸张长度测量

系统的设计 628

17.9.1  引言 628

17.9.2  传感器 629

17.9.3  信号转换 630

17.9.4  微控制器系统 631

17.9.5  算法 633

17.10  英特尔公司的16位微控制

器系列MCS-96 634

17.10.1  引言 634

17.10.2  80196体系结构 634

17.10.3  80196KC的

寄存器组 638

17.10.4  80196KC的

一般特性 641

17.11  小结 642

17.12  习题 643

附录A  指令集一览 645

附录B  DOS功能调用:INT 21H 657

附录C  8051指令集一览 673

微处理器与外设大学教程(第2版)

  

目    录

  

XX

  

  

XXI