微型计算机原理与接口技术(慕课版)

微型计算机原理与接口技术(慕课版)"

作者:孙力娟、李爱群、陈燕俐、周宁宁、邓玉龙
ISBN:9787302541936
定价:¥69.80
字数:千字
页数:
出版时间:2019.09.01
开本:
版次:1-6
装帧:
出版社:清华大学出版社
简介

本书以最有代表性的 Intel的32位微处理器作为背景,讲述微型计算机原理、汇编语言程序设计和接口技术。在阐述经典的微型计算机系统构成,汇编编程方法和计算机接口技术的基础上,对当前的主流技术进行介绍。在计算机系统原理和汇编语言的内容中,对实现互联网应用并发计算的汇编高级指令集,与现代多任务操作系统密切相关的保护模式下的计算机系统的工作原理以及程序设计,Win32汇编语言编程以及汇编语言和高级语言混合编程等进行讲述。

前言

出版说明一、 系列教材背景

人类已经进入智能时代,云计算、大数据、物联网、人工智能、机器人、量子计算等是这个时代最重要的技术热点,为了适应和满足时代发展对人才培养的需要,2017年2月以来,教育部积极推进新工科建设,先后形成了“复旦共识”“天大行动”和“北京指南”,并发布了《教育部高等教育司关于开展新工科研究与实践的通知》《教育部办公厅关于推荐新工科研究与实践项目的通知》,全力探索形成领跑全球工程教育的中国模式、中国经验,助力高等教育强国建设。新工科有两个内涵: 一是新的工科专业;二是传统工科专业的新需求。新工科建设将促进一批新专业的发展,这批新专业有的是依托于现有计算机类专业派生、扩展而成的,有的是多个专业有机整合而成的。由计算机类专业派生、扩展形成的新工科专业有计算机科学与技术、软件工程、网络工程、物联网工程、信息管理与信息系统、数据科学与大数据技术等。由“计算机类”学科交叉融合形成的新工科专业有网络空间安全、人工智能、机器人工程、数字媒体技术、智能科学与技术等。

在新工科建设的“九个一批”中,明确提出“建设一批体现产业和技术最新发展的新课程”“建设一批产业急需的新兴工科专业”,新课程和新专业的持续建设,都需要以适应新工科教育的教材作为支撑。由于各个专业之间的课程相互交叉,但是又不能相互包含,所以在选题方向上,既考虑由计算机类专业派生、扩展形成的新工科专业的选题,又考虑由计算机类专业交叉融合形成的新工科专业的选题,特别是网络空间安全专业、智能科学与技术专业的选题。基于此,清华大学出版社计划出版“面向新工科专业建设计算机系列教材”。

二、 教材定位

教材使用对象为“211工程”高校或同等水平及以上高校计算机类专业及相关专业学生。三、 教材编写原则

(1) 借鉴Computer Science Curricula 2013(以下简称CS2013)。CS2013的核心知识领域包括算法与复杂度、体系结构与组织、计算科学、离散结构、图形学与可视化、人机交互、信息保障与安全、信息管理、智能系统、网络与通信、操作系统、基于平台的开发、并行与分布式计算、程序设计语言、软件开发基础、软件工程、系统基础、社会问题与专业实践等内容。

(2) 处理好理论与技能培养的关系,注重理论与实践相结合,加强对学生思维方式的训练和计算思维的培养。计算机专业学生能力的培养特别强调理论学习、计算思维培养和实践训练。本系列教材以“重视理论,加强计算思维培养,突出案例和实践应用”为主要目标。

(3) 为便于教学,在纸质教材的基础上,融合多种形式的教学辅助材料。每本教材可以有主教材、教师用书、习题解答、实验指导等。特别是在数字资源建设方面,可以结合当前出版融合的趋势,做好立体化教材建设,可考虑加上微课、微视频、二维码、MOOC等扩展资源。

出版说明◆微型计算机原理与接口技术(慕课版)四、 教材特点〖*2〗1. 满足新工科专业建设的需要系列教材涵盖计算机科学与技术、软件工程、物联网工程、数据科学与大数据技术、网络空间安全、人工智能等专业的课程。

2. 案例体现传统工科专业的新需求

编写时,以案例驱动,任务引导,特别是有一些新应用场景的案例。

3. 循序渐进,内容全面

讲解基础知识和实用案例时,由简单到复杂,循序渐进,系统讲解。

4. 资源丰富,立体化建设

除了教学课件外,还可以提供教学大纲、教学计划、微视频等扩展资源,以方便教学。

五、 优先出版〖*2〗1. 精品课程配套教材主要包括国家级或省级的精品课程和精品资源共享课的配套教材。

2. 传统优秀改版教材

对于已经出版过的优秀教材,经过市场认可,由于新技术的发展,给图书配上新的教学形式、教学资源,计划改版的教材。

3. 前沿技术与热点教材

反映计算机前沿和当前热点的相关教材,例如云计算、大数据、人工智能、物联网、网络空间安全等方面的教材。

六、 联系方式

联系人: 白立军

联系电话: 01083470179

联系和投稿邮箱: bailj@tup.tsinghua.edu.cn

“面向新工科专业建设计算机系列教材”编委会

2019年6月系列教材编委会

主任:

张尧学清华大学计算机科学与技术系教授中国工程院院士/教育部高等学校软件工程专业教学指导委员会主任委员

副主任:

陈刚浙江大学计算机科学与技术学院院长/教授

卢先和清华大学出版社副社长/编审

委员: 

毕胜大连海事大学信息科学技术学院院长/教授

蔡伯根北京交通大学计算机与信息技术学院院长/教授

陈兵南京航空航天大学计算机科学与技术学院院长/教授

成秀珍山东大学计算机科学与技术学院院长/教授

丁志军同济大学计算机科学与技术系系主任/教授

董军宇中国海洋大学信息科学与工程学院副院长/教授

冯丹华中科技大学计算机学院院长/教授

冯立功战略支援部队信息工程大学网络空间安全学院院长/教授

高英华南理工大学计算机科学与工程学院副院长/教授

桂小林西安交通大学计算机科学与技术学院教授

郭卫斌华东理工大学计算机科学与工程系系主任/教授

郭文忠福州大学数学与计算机科学学院院长/教授

郭毅可上海大学计算机工程与科学学院院长/教授

过敏意上海交通大学计算机科学与工程系教授

胡瑞敏武汉大学计算机学院教授

黄河燕北京理工大学计算机学院院长/教授

雷蕴奇厦门大学计算机科学系教授

李凡长苏州大学计算机科学与技术学院院长/教授

李克秋天津大学计算机科学与技术学院院长/教授

李肯立湖南大学信息科学与工程学院院长/教授

李向阳中国科学技术大学计算机科学与技术学院执行院长/教授

梁荣华浙江工业大学计算机科学与技术学院执行院长/教授

刘延飞火箭军工程大学基础部副主任/教授

陆建峰南京理工大学计算机科学与工程学院副院长/教授

罗军舟东南大学计算机科学与工程学院教授

吕建成四川大学计算机学院(软件学院)院长/教授

吕卫锋北京航空航天大学计算机学院院长/教授

马志新兰州大学信息科学与工程学院副院长/教授

毛晓光国防科技大学计算机学院副院长/教授

明仲深圳大学计算机与软件学院院长/教授

彭进业西北大学信息科学与技术学院院长/教授

钱德沛中山大学数据科学与计算机学院院长/教授

申恒涛电子科技大学计算机科学与工程学院院长/教授

苏森北京邮电大学计算机学院执行院长/教授

汪萌合肥工业大学计算机与信息学院院长/教授

王长波华东师范大学计算机科学与软件工程学院常务副院长/教授

王劲松天津理工大学计算机科学与工程学院院长/教授

王良民江苏大学计算机科学与通信工程学院院长/教授

王泉西安电子科技大学校长助理/教授

王晓阳复旦大学计算机科学技术学院院长/教授

王义东北大学计算机科学与工程学院院长/教授

魏晓辉吉林大学计算机科学与技术学院院长/教授

文继荣中国人民大学信息学院院长/教授

翁健暨南大学信息科学技术学院执行院长/教授

吴卿杭州电子科技大学计算机学院院长/教授

武永卫清华大学计算机科学与技术系副主任/教授

肖国强西南大学计算机与信息科学学院院长/教授

熊盛武武汉理工大学计算机科学与技术学院院长/教授

徐伟陆军工程大学指挥控制工程学院院长/副教授

杨鉴云南大学信息学院院长/教授

杨燕西南交通大学信息科学与技术学院副院长/教授

杨震北京工业大学信息学部副主任/教授

姚力北京师范大学人工智能学院执行院长/教授

叶保留河海大学计算机与信息学院院长/教授

印桂生哈尔滨工程大学计算机科学与技术学院院长/教授

袁晓洁南开大学计算机学院院长/教授

张春元国防科技大学教务处处长/教授

张强大连理工大学计算机科学与技术学院院长/教授

张清华重庆邮电大学计算机科学与技术学院执行院长/教授

张艳宁西北工业大学校长助理/教授

赵建平长春理工大学计算机科学技术学院院长/教授

郑新奇 中国地质大学(北京)信息工程学院院长/教授

仲红安徽大学计算机科学与技术学院院长/教授

周勇中国矿业大学计算机科学与技术学院院长/教授

周志华南京大学计算机科学与技术系系主任/教授

邹北骥中南大学计算机学院教授

秘书:

白立军清华大学出版社副编审◆微型计算机原理与接口技术(慕课版)····························································

Foreword“微型计算机原理与接口技术”是理工类学生学习和掌握微型计算机基本组成、工作原理、接口技术以课程介绍

及汇编语言程序设计的重要课程。通过本课程的学习,能够使学生具有微型计算机系统软硬件开发和应用的基本能力。

微型计算机从诞生之日起发展到今天,支撑的应用从最初的简单数值计算演化为现代的复杂媒体处理以及网络并发计算,微型计算机领域在其基本理论框架基础上发展出多种新技术。作为教材,本书一方面要讲述本学科领域的基本理论和基础知识;另一方面,要跟踪相关领域的发展动向和最新技术,及时调整和更新教材内容。从学习角度,基于32位微处理器的计算机系统是学习微型计算机系统原理和应用开发的基础。本书以最有代表性的 Intel公司的32位微处理器作为背景,讲述微型计算机原理、汇编语言程序设计和接口技术。在阐述经典的微型计算机系统构成、汇编语言编程方法和计算机接口技术的基础上,对当前的主流技术进行介绍。在微型计算机系统原理和汇编语言的内容中,对实现互联网应用并发计算的汇编语言高级指令集,与现代多任务操作系统密切相关的保护模式下的计算机系统的工作原理以及程序设计,Win32汇编语言编程以及汇编语言和高级语言混合编程等进行讲述;在微型计算机接口的内容中,对新型总线技术以及新型接口技术等进行介绍。本书力求内容全面, 将计算机硬件和软件知识紧密结合,基础原理和新兴技术有机融合,有一定深度并具有较强实用性。

全书共分13章。

第1章微型计算机基础,介绍计算机系统的基本组成,讲述计算机中信息的表示和编码方法。

第2章80x86微处理器,介绍32位微处理器的内部结构,讲述32位微处理器的工作模式。第3章汇编语言指令集,讲述80x86的指令构成、寻址方式、汇编语言语法、汇编语言基本指令集和高级指令集。

第4章汇编语言程序设计,讲述DOS16汇编和Win32汇编语言程序的结构、编程格式和功能调用,通过程序实例讲述汇编语言程序的设计方法,对汇编语言和C语言的混合编程方法进行介绍。

第5章总线,介绍32位微处理器的外部引脚和总线时序、微型计算机系统中常用的总线标准和总线结构。

第6章存储系统,讲述微型计算机系统的存储器构成,实模式和保护模式下的存储器组织。

第7章输入输出系统,讲述微型计算机系统的输入输出接口基本原理、32位微型计算机系统接口技术,介绍DMA控制器。

第8章中断系统,讲述中断原理、实模式下中断、保护模式下中断及异常,介绍中断控制器8259A以及实模式下中断程序设计方法。

第9章微型计算机系统串行通信,讲述微型计算机系统串行通信的基本原理、串行接口芯片8250以及串行通信程序设计方法。

第10章并行I/O接口,讲述并行I/O接口芯片8255A及其编程应用方法,介绍打印机并行接口。

第11章可编程定时器/计数器,讲述8254芯片的构成、工作方式以及编程方法。

第12章数/模和模/数转换,讲述数/模以及模/数转换接口原理,介绍DAC0832和ADC0809芯片的构成和应用。

第13章保护模式及其编程,介绍微型计算机系统在保护模式下的工作原理以及汇编程序设计方法。

本书是慕课版教材,各章节主要内容配备了以二维码为载体的课件和微课视频,与教材配套的慕课课程已经在中国大学慕课平台上对外开课。

本书由孙力娟、李爱群、陈燕俐、周宁宁、邓玉龙编写,由陈燕俐完成全书的统稿工作。南京邮电大学计算机学院的章韵教授仔细审阅了全书,并提出许多宝贵建议。本书在编写过程中还得到许多老师的支持和帮助,使得本书更加完善,在此表示衷心的感谢。 

由于编者水平有限,书中难免有错漏之处,恳请读者和同行批评指正。编者2019年7月

目录

Contents第1章微型计算机基础1

1.1微型计算机概述1

1.1.1微型计算机概况1

1.1.2微型计算机系统的基本组成7

1.2计算机中信息的表示与编码11

1.2.1数制概念11

1.2.2数值数据的编码与运算13

1.2.3字符的编码17

1.2.4浮点数18

1.3本章小结20

习题20

第2章80x86微处理器22

2.1Intel微处理器发展简况22

2.216位微处理器内部结构25

2.332位微处理器内部结构27

2.3.1Pentium微处理器的内部结构27

2.3.232位微处理器结构特点29

2.3.332位微处理器的编程结构29

2.432位微处理器的工作模式36

2.4.132位微处理器的地址空间37

2.4.2实地址模式37

2.4.3保护虚拟地址模式39

2.4.4虚拟8086模式42

2.5本章小结42

习题43◆微型计算机原理与接口技术(慕课版)第3章汇编语言指令集44

3.1概述44

3.1.1指令集体系结构、机器指令和符号指令44

3.1.2符号指令的书写格式46

3.2操作数47

3.2.1通用寄存器中的操作数47

3.2.2段寄存器和指令指针寄存器48

3.2.3标志寄存器49

3.3寻址方式53

3.3.1立即寻址53

3.3.2寄存器寻址54

3.3.3存储器操作数寻址55

3.3.4寻址方式小结59

3.4汇编语言语法60

3.4.1汇编语言语句类型和格式60

3.4.2名字项61

3.4.3操作数项63

3.4.4操作项69

3.5汇编语言基本指令集74

3.5.1传送类指令74

3.5.2算术运算指令81

3.5.3转移和调用指令94

3.5.4逻辑运算和移位指令103

3.5.5串操作指令107

3.5.6处理机控制指令117

3.6汇编语言高级指令集118

3.6.1MMX指令119

3.6.2SSE指令127

3.7汇编语言和高级语言中的数据与操作128

3.7.1计算机编程语言的数据与操作128

3.7.2汇编语言和C语言中的数据129

3.7.3汇编语言和C语言中的操作132

3.8本章小结134

习题135

第4章汇编语言程序设计137

4.1汇编语言源程序结构137

4.1.1DOS16汇编完整段定义格式137

4.1.2Win32汇编简化段定义格式142

4.2汇编语言程序开发过程146

4.2.1DOS16汇编语言程序开发步骤146

4.2.2使用Visual Studio开发Win32汇编语言程序147

4.3功能调用151

4.3.1DOS功能调用151

4.3.2BIOS功能调用154

4.4Win32控制台输入输出编程158

4.5分支和循环程序设计161

4.5.1分支程序设计161

4.5.2循环程序设计164

4.5.3分支循环高级语法166

4.6子程序设计169

4.6.1用CALL指令来调用子程序169

4.6.2用INVOKE指令调用子程序172

4.7宏指令设计174

4.7.1宏指令与宏调用174

4.7.2条件汇编177

4.8汇编语言程序设计举例177

4.8.1代码转换程序设计177

4.8.2算术运算程序设计184

4.8.3字符串处理程序设计185

4.9汇编语言和C/C++语言的混合编程190

4.9.1混合编程的基本规则190

4.9.2C/C++语言中内嵌汇编语言指令191

4.9.3独立的汇编目标代码192

4.10本章小结193

习题194

第5章总线195

5.1总线基本概念195

5.1.1总线的类型与总线结构195

5.1.2总线的性能197

5.1.3总线信息的传送方式197

5.232位微处理器的外部引脚与总线时序198

5.2.1Pentium微处理器的引脚功能198

5.2.232位微处理器的典型总线操作时序203

5.3典型总线标准205

5.3.1AT(ISA)总线206

5.3.2PCI总线209

5.4通用外部总线标准216

5.4.1并行I/O标准接口IDE(EIDE)216

5.4.2并行I/O标准接口SCSI216

5.4.3通用串行总线USB218

5.532位微型计算机总线结构224

5.6本章小结226

习题226

第6章存储系统227

6.1概述227

6.1.1存储系统的概念227

6.1.2存储器的体系结构228

6.1.3存储器的分类230

6.1.4存储器的主要性能指标231

6.2随机存储器与只读存储器233

6.2.1RAM的分类与常用RAM芯片的工作原理233

6.2.2ROM的分类与常用ROM芯片的工作原理239

6.3微型计算机系统中的存储器组织241

6.3.1存储器的扩展技术241

6.3.2CPU与主存储器的连接247

6.3.3PC的存储器组织249

6.4本章小结253

习题253

第7章输入输出系统255

7.1概述255

7.1.1接口电路255

7.1.2输入输出端口256

7.1.3输入输出指令258

7.2微型计算机系统与输入输出设备的信息交换259

7.2.1无条件传送方式259

7.2.2查询方式260

7.2.3中断控制方式261

7.2.4直接存储器存取方式262

7.3DMA控制器263

7.3.18237A DMA控制器264

7.3.28237A内部寄存器268

7.3.38237A的时序272

7.3.48237A的应用274

7.4IA32系列微型计算机接口技术276

7.5Intel 64系列微型计算机接口技术278

7.6本章小结279

习题279

第8章中断系统281

8.1中断的基本概念281

8.1.1中断概念的引入及描述281

8.1.2中断源及中断分类282

8.1.3中断类型码、中断向量及中断向量表283

8.2多级中断管理287

8.380x86 中断指令287

8.4中断控制器8259A289

8.4.18259A的功能289

8.4.28259A的结构289

8.4.38259A中断管理方式293

8.4.48259A初始化296

8.5PC系列机中的中断系统303

8.5.1PC系列机的中断管理方式303

8.5.2非屏蔽中断304

8.5.3可屏蔽中断304

8.6微型计算机系统中用到的中断及应用举例306

8.6.1日时钟中断306

8.6.2键盘中断314

8.6.3实时时钟中断316

8.6.4用户中断318

8.7硬件中断和软件中断的区别323

8.8高级可编程中断控制器324

8.8.1APIC系统的组成324

8.8.2APIC中断优先级处理332

8.8.3APIC系统的中断处理332

8.9本章小结333

习题333

第9章微型计算机系统串行通信335

9.1串行通信基础335

9.1.1串行通信类型335

9.1.2串行数据传输方式337

9.1.3串行异步通信协议338

9.2可编程串行异步通信接口芯片8250341

9.2.18250的内部结构341

9.2.28250的引脚功能343

9.2.38250内部寄存器345

9.2.48250的初始化编程349

9.3串行通信程序设计350

9.3.1串行通信的外部环境351

9.3.2BIOS通信软件352

9.3.3串行通信程序设计举例354

9.4本章小结360

习题360

第10章并行I/O接口362

10.1可编程并行I/O接口芯片8255A362

10.1.18255A的内部结构及外部引脚362

10.1.28255A控制字365

10.1.38255A的工作方式367

10.1.48255A初始化编程373

10.28255A应用373

10.2.18255A在微型计算机系统中的应用373

10.2.28255A应用举例374

10.3打印机并行接口380

10.3.1打印机并行接口标准380

10.3.2打印机适配器381

10.3.3打印机接口编程382

10.4本章小结388

习题388

第11章可编程定时器/计数器389

11.18254概述389

11.1.18254的内部结构389

11.1.28254引脚功能391

11.28254的工作方式392

11.38254的控制字与编程方法397

11.3.18254的控制字/状态字397

11.3.28254初始化编程399

11.3.3读取当前计数值399

11.48254在微型计算机系统中的应用400

11.5本章小结406

习题406

第12章数/模和模/数转换408

12.1前向通道和后向通道408

12.1.1前向通道中的模/数转换接口408

12.1.2后向通道中的数/模转换接口409

12.2数/模转换接口409

12.2.1数/模转换原理409

12.2.2DAC0832简介411

12.3模/数转换接口413

12.3.1模/数转换原理413

12.3.2ADC0809简介415

12.4本章小结417

习题417

第13章保护模式及编程418

13.1保护模式下的存储管理418

13.1.1分段管理419

13.1.2分页管理423

13.1.3虚拟存储器425

13.1.4存储保护426

13.1.5Windows下的内存管理和内存寻址427

13.2保护模式下的程序调用和转移428

13.2.1系统段描述符、门描述符和任务状态段429

13.2.2任务内的段间转移433

13.2.3任务间的转移435

13.3保护模式下的中断和异常436

13.3.1中断和异常的分类436

13.3.2中断和异常的类型437

13.3.3中断和异常的处理过程438

13.3.4中断和异常处理后的返回439

13.3.5Windows下的中断和异常440

13.4保护模式下的输入输出保护440

13.5操作系统类指令442

13.5.1实模式和任何特权级下可执行的指令442

13.5.2实模式和在特权级0下可执行的指令443

13.5.3仅在保护模式下执行的指令444

13.6保护模式下的程序设计445

13.6.1实模式与保护模式切换445

13.6.2保护模式下中断和异常程序设计455

13.6.3输入输出保护及任务切换463

13.7本章小结469

习题469

参考文献470

作者简介

编辑推荐

l 以32位Intel微处理器为原型,由浅入深,清晰讲述计算机软件和硬件的基础理论知识。

l 教材内容紧扣实际应用,帮助读者搭建计算机软件和硬件融合的桥梁。

l 适应网络化教学,在教材中插入教学MOOC视频和电子课件等在线课程教学资源,为读者打造立体化的多媒体学习平台。

作者寄语

孙力娟:南京邮电大学副校长,教授,博士生导师,南京邮电大学计算机科学与技术学术带头人,获得多项科研奖项,江苏省六大人才高峰人才。长期担任“微型计算机原理与接口技术”等相关本科课程的教学工作。

电子资料

www.luweidong.cn

下一个