第1章 硬件体系结构简介 1
1.1 引言 1
1.2 计算技术简史 1
1.3 数制 9
1.4 将十进制数转换为各种基数的数 20
1.5 工程符号 21
总结 22
参考文献 22
习题 22
第2章 数字逻辑简介 24
2.1 引言 24
2.2 电子门描述 32
2.3 真值表 36
总结 38
参考文献 38
习题 38
第3章 异步逻辑简介 40
3.1 引言 40
3.2 布尔代数定律 41
3.3 卡诺图 45
3.4 时钟和脉冲 50
总结 55
参考文献 55
习题 55
第4章 同步逻辑简介 58
4.1 引言 58
4.2 触发器 59
4.3 存储寄存器 68
总结 74
参考文献 75
习题 75
第5章 状态机简介 79
5.1 引言 79
5.2 现代硬件设计方法 96
总结 98
参考文献 98
习题 99
第6章 总线组织和存储器设计 103
6.1 总线组织 103
6.2 地址空间 115
6.3 直接存储器访问 128
总结 129
参考文献 130
习题 130
第7章 存储器组织和汇编语言编程 134
7.1 引言 134
7.2 标号 143
7.3 有效地址 147
7.4 伪操作代码 154
7.5 数据存储伪指令 155
7.6 汇编语言程序的分析 156
总结 158
参考文献 158
习题 158
第8章 汇编语言程序设计 162
8.1 引言 162
8.2 汇编语言和C++ 175
8.3 堆栈和子程序 180
总结 186
参考文献 186
习题 186
第9章 高级汇编语言编程 192
9.1 引言 192
9.2 高级寻址模式 192
9.3 68000指令 194
9.4 移动指令 195
9.5 逻辑指令 195
9.6 其他逻辑指令 196
9.7 68000指令总结 199
9.8 用TRAP#15指令模拟I/O 201
9.9 编译器和汇编器 203
总结 216
参考文献 216
习题 216
第10章 Intel x86体系结构 220
10.1 引言 220
10.2 8086 CPU的体系结构 221
10.3 数据寄存器、变址寄存器和指针寄存器 223
10.4 标志寄存器 226
10.5 段寄存器 226
10.6 指令指针(IP) 226
10.7 存储器寻址模式 228
10.8 x86指令格式 231
10.9 8086指令集总结 233
10.10 数据传送指令 234
10.11 算术指令 235
10.12 逻辑指令 235
10.13 字符串操作 236
10.14 控制转移 237
10.15 8086体系结构的汇编语言程序设计 239
10.16 系统向量 241
10.17 系统启动 241
总结 241
参考文献 242
习题 242
第11章 ARM体系结构 244
11.1 引言 244
11.2 ARM体系结构简介 245
11.3 条件执行 249
11.4 桶式移位器 250
11.5 操作数大小 250
11.6 寻址模式 251
11.7 堆栈操作 253
11.8 ARM指令集 255
11.9 ARM系统向量 263
总结 264
参考文献 264
习题 265
第12章 与外部接口 266
12.1 引言 266
12.2 中断 267
12.3 异常 270
12.4 Motorola 68K的中断 270
12.5 模数(A/D)转换和数模(D/A)转换 274
12.6 A/D和D/A转换器的分辨率 286
总结 288
参考文献 288
习题 288
第13章 现代计算机体系结构简介 292
13.1 处理器体系结构,CISC、RISC及DSP 293
13.2 流水线简介 296
总结 305
参考文献 305
习题 306
第14章 存储器、高速缓存和虚拟存储器 308
14.1 高速缓存简介 308
14.2 虚拟存储器 321
14.3 页 323
14.4 转换旁路缓冲器(TLB) 324
14.5 保护 325
总结 326
参考文献 327
习题 327
第15章 计算机体系结构的性能问题 329
15.1 引言 329
15.2 硬件和性能 329
15.3 最佳习惯 342
总结 343
参考文献 344
习题 344
第16章 未来发展趋势与可重构硬件 346
16.1 引言 346
16.2 可重构硬件 346
16.3 分子计算 354
16.4 局部时钟 355
总结 358
参考文献 358
习题 358
附录 奇数号习题答案 360
索引 382