搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
计算机系统要素(如何从头构建一台现代计算机原书第2版)/计算机科学丛书
0.00     定价 ¥ 79.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购15本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787111769576
  • 作      者:
    作者:(以)诺阿姆·尼桑//西蒙·朔肯|责编:朱劼|译者:李清安//龚奕利
  • 出 版 社 :
    机械工业出版社
  • 出版日期:
    2025.05
收藏
编辑推荐
本书是一本经典的计算机系统入门教程,全球已有400多所高校将本书纳入教学体系,在线课程的注册学员超过20万人。作者秉承“理解计算机系统的最佳方法是从零开始构建一台计算机”的理念,以“从与非门到俄罗斯方块”为学习目标,将软件和硬件的核心主题巧妙地组织起来,使初学者能够在很短的时间内全面理解计算机专业的核心概念,从而为后续的专业课程学习奠定坚实的基础。
展开
作者简介
诺阿姆·尼桑(Noam Nisan)
在加州大学伯克利分校获得计算机科学博士学位,目前为希伯来大学计算机科学与工程学院教授,以色列科学院及人文学院院士。研究方向为计算机科学、博弈论和经济学的交叉领域,如算法博弈论、经济与计算等。

西蒙·朔肯(Shimon Schocken)
莱希曼大学教授, Efi Arazi计算机科学学院创院院长,谷歌 - 莱希曼技术学院联合创始人及院长。曾在纽约大学担任终身教授,在哈佛大学、斯坦福大学、普林斯顿大学担任客座教授。
展开
内容介绍
本书涵盖数电、体系结构、汇编语言、编译器、操作系统等计算机核心课程的基础内容,结合项目实践能够对整个计算机学科建立宏观的理解,并能完成制作一个基本计算机系统的任务。
展开
目录
目  录

译者序
前言
第一部分 硬件
I.1 Hello,World之下 2
I.2 从与非门到俄罗斯方块 3
I.3 抽象与实现 4
I.4 设计方法 5
I.5 前方之路 6
第1章 布尔逻辑 7
1.1 布尔代数 7
1.1.1 布尔函数 8
1.1.2 真值表和布尔表达式 8
1.2 门 9
1.3 硬件构造 10
1.3.1 硬件描述语言 11
1.3.2 硬件模拟 13
1.4 规范 14
1.4.1 与非门 14
1.4.2 基本逻辑门 14
1.4.3 基本门的多位版本 15
1.4.4 基本门的多路版本 16
1.5 实现 17
1.5.1 行为模拟 17
1.5.2 硬件实现 18
1.5.3 内置芯片 19
1.6 实验 19
1.7 总结与讨论 20
第2章 布尔运算 21
2.1 算术运算 21
2.2 二进制数 21
2.3 二进制加法 22
2.4 有符号二进制数 23
2.5 规范 24
2.5.1 加法器 24
2.5.2 算术逻辑单元 25
2.6 实现 28
2.7 实验 29
2.8 总结与讨论 29
第3章 存储 31
3.1 存储设备 31
3.2 时序逻辑 32
3.2.1 时间很重要 32
3.2.2 触发器 34
3.2.3 组合与时序逻辑 34
3.3 规范 35
3.3.1 数据触发器 36
3.3.2 寄存器 36
3.3.3 RAM 37
3.3.4 计数器 38
3.4 实现 38
3.4.1 数据触发器 38
3.4.2 寄存器 38
3.4.3 RAM 39
3.4.4 计数器 40
3.5 实验 40
3.6 总结与讨论 41
第4章 机器语言 42
4.1 机器语言概述 42
4.1.1 硬件单元 42
4.1.2 语言 43
4.1.3 指令 44
4.2 Hack的机器语言 45
4.2.1 背景 45
4.2.2 程序示例 48
4.2.3 Hack语言规范 49
4.2.4 符号 50
4.2.5 输入/输出处理 52
4.2.6 语法约定和文件格式 52
4.3 Hack编程 53
4.4 实验 55
4.5 总结与讨论 57
第5章 计算机体系结构 58
5.1 计算机体系结构基础 58
5.1.1 存储程序的概念 58
5.1.2 冯·诺依曼体系结构 59
5.1.3 存储器 59
5.1.4 中央处理单元 60
5.1.5 输入和输出 61
5.2 Hack硬件平台规范 62
5.2.1 概述 62
5.2.2 中央处理单元 62
5.2.3 指令存储器 63
5.2.4 输入/输出 63
5.2.5 数据存储器 65
5.2.6 计算机 66
5.3 实现 66
5.3.1 中央处理单元 66
5.3.2 内存 68
5.3.3 计算机 68
5.4 实验 69
5.5 总结与讨论 70
第6章 汇编器 72
6.1 背景 72
6.2 Hack机器语言规范 73
6.2.1 程序 74
6.2.2 符号 74
6.2.3 语法约定 75
6.3 汇编到二进制的翻译 76
6.3.1 处理指令 76
6.3.2 处理符号 76
6.4 实现 77
6.4.1 实现一个基本的汇编器 77
6.4.2 完成汇编器 79
6.5 实验 79
6.6 总结与讨论 81
第二部分 软件
II.1 Jack编程初探 85
II.2 程序的编译 87
第7章 虚拟机Ⅰ:处理 89
7.1 虚拟机范式 90
7.2 栈机器 91
7.2.1 入栈和出栈 91
7.2.2 栈上的算术运算 92
7.2.3 虚拟内存段 94
7.3 虚拟机规范:第一部分 94
7.4 实现 95
7.4.1 Hack平台上的标准虚拟机
映射:第一部分 96
7.4.2 虚拟机模拟器 98
7.4.3 有关虚拟机实现的设计建议 99
7.5 实验 101
7.6 总结与讨论 102
第8章 虚拟机Ⅱ:控制 105
8.1 高级魔法 105
8.2 分支 106
8.3 函数 108
8.4 虚拟机规范:第二部分 113
8.4.1 分支命令 113
8.4.2 函数命令 113
8.4.3 虚拟机程序 113
8.5 实现 114
8.5.1 函数调用和返回 114
8.5.2 Hack平台上的标准虚拟机
映射:第二部分 115
8.5.3 有关虚拟机实现的设计建议 117
8.6 实验 118
8.7 总结与讨论 120
第9章 高级语言 122
9.1 例子 122
9.2 Jack语言规范 126
9.2.1 语法元素 126
9.2.2 程序结构 127
9.2.3 数据类型 128
9.2.4 变量 130
9.2.5 语句 130
9.2.6 表达式 130
9.2.7 子例程调用 131
9.2.8 对象的创建与清除 132
9.3 编写Jack应用程序 132
9.4 实验 133
9.5 总结与讨论 134
第10章 编译器Ⅰ:语法分析 136
10.1 背景 137
10.1.1 词法分析 137
10.1.2 语法规则 138
10.1.3 语法解析 139
10.1.4 解析器 141
10.2 规范 142
10.2.1 Jack语言的语法 143
10.2.2 Jack语言的语法分析器 144
10.3 实现 144
10.3.1 Jack分词器 145
10.3.2 编译引擎 145
10.3.3 Jack分析器 147
10.4 实验 147
10.4.1 分词器 148
10.4.2 编译引擎 149
10.5 总结与讨论 150
第11章 编译器Ⅱ:代码生成 151
11.1 代码生成 152
11.1.1 变量的编译 152
11.1.2 表达式的编译 155
11.1.3 字符串的编译 157
11.1.4 语句的编译 157
11.1.5 对象的编译 159
11.1.6 数组的编译 165
11.2 规范 166
11.3 实现 166
11.3.1 虚拟机上的标准映射 167
11.3.2 实现指南 167
11.3.3 软件架构 170
11.4 实验 172
11.4.1 实施阶段 172
11.4.2 测试程序集 173
11.5 总结与讨论 174
第12章 操作系统 176
12.1 背景 177
12.1.1 数学运算 177
12.1.2 字符串 180
12.1.3 内存管理 181
12.1.4 图形化输出 183
12.1.5 字符的输出 185
12.1.6 键盘输入 186
12.2 Jack操作系统规范 187
12.3 实现 187
12.4 实验 192
12.4.1 测试计划 192
12.4.2 完整测试 194
12.5 总结与讨论 195
第三部分 进一步讨论
第13章 探索更多乐趣 198
13.1 硬件的实现 198
13.2 硬件的改进 199
13.3 高级语言 199
13.4 优化 199
13.5 通信 199
附录
附录A 布尔函数综合 202
附录B 硬件描述语言 206
附录C 测试描述语言 217
附录D Hack芯片集合 227
附录E Hack中的字符集 228
附录F Jack操作系统的API 229

○原书并未将第13章单独列为一部分,为确保本书体系更完整、合理,将第13章列为第3部分。—编辑注
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证