展开全部

主编推荐语

本书是计算机科学概论课程教材,对计算机科学做了百科全书式的精彩阐述。

内容简介

本书首先介绍的是信息编码及计算机体系结构的基本原理,进而介绍操作系统和组网及因特网的相关内容,接着探讨算法、程序设计语言及软件工程,然后讨论数据抽象和数据库方面的问题,讲述图形学的主要应用以及人工智能,最后以计算理论的介绍结束全书。

本书在内容编排上由具体到抽象逐步推进,很适合教学安排,每一个主题自然而然地引导出下一个主题。此外,书中还包含大量的图、表和示例,有助于读者对知识的了解与把握。

目录

  • 版权信息
  • 内容提要
  • 版权声明
  • 前言
  • 本书与AP®计算机科学原理课程框架之间的关联
  • 资源与服务
  • 第0章 绪论
  • 持久理解和学习成果
  • 0.1 算法的作用
  • 0.2 计算的历史
  • 0.3 学习大纲
  • 0.4 计算机科学的首要主题
  • 0.4.1 算法
  • 0.4.2 抽象
  • 0.4.3 创新
  • 0.4.4 数据
  • 0.4.5 程序设计
  • 0.4.6 因特网
  • 0.4.7 影响
  • 社会问题
  • 课外阅读
  • 第1章 数据存储
  • 持久理解和学习成果
  • 1.1 位和位存储
  • 1.1.1 布尔运算
  • 1.1.2 门和触发器
  • 1.1.3 十六进制记数法
  • 1.2 主存储器
  • 1.2.1 存储器结构
  • 1.2.2 存储器容量的度量
  • 1.3 海量存储器
  • 1.3.1 磁系统
  • 1.3.2 光系统
  • 1.3.3 闪存驱动器
  • 1.4 用位模式表示信息
  • 1.4.1 文本的表示
  • 1.4.2 数值的表示
  • 1.4.3 图像的表示
  • 1.4.4 声音的表示
  • *1.5 二进制系统
  • 1.5.1 二进制记数法
  • 1.5.2 二进制加法
  • 1.5.3 二进制中的分数
  • *1.6 整数的存储
  • 1.6.1 二进制补码记数法
  • 1.6.2 二进制补码记数法中的加法
  • 1.6.3 溢出问题
  • 1.6.4 余码记数法
  • *1.7 分数的存储
  • 1.7.1 浮点记数法
  • 1.7.2 截断误差
  • *1.8 数据与程序设计
  • 1.8.1 Python入门
  • 1.8.2 你好,Python
  • 1.8.3 变量
  • 1.8.4 运算符和表达式
  • 1.8.5 货币转换
  • 1.8.6 调试
  • *1.9 数据压缩
  • 1.9.1 通用的数据压缩技术
  • 1.9.2 图像压缩
  • 1.9.3 音频和视频压缩
  • *1.10 通信差错
  • 1.10.1 奇偶校验位
  • 1.10.2 纠错码
  • 复习题
  • 社会问题
  • 课外阅读
  • 第2章 数据操控
  • 持久理解和学习成果
  • 2.1 计算机体系结构
  • 2.1.1 CPU基础知识
  • 2.1.2 存储程序概念
  • 2.2 机器语言
  • 2.2.1 指令系统
  • 2.2.2 数据传输类
  • 2.2.3 算术/逻辑类
  • 2.2.4 控制类
  • 2.2.5 Vole:一种演示用的机器语言
  • 2.3 程序执行
  • 2.3.1 程序执行的一个例子
  • 2.3.2 程序与数据
  • *2.4 算术/逻辑指令
  • 2.4.1 逻辑运算
  • 2.4.2 循环移位运算及移位运算
  • 2.4.3 算术运算
  • *2.5 与其他设备通信
  • 2.5.1 控制器的作用
  • 2.5.2 直接存储器存取
  • 2.5.3 握手
  • 2.5.4 流行的通信媒介
  • 2.5.5 通信速率
  • *2.6 数据操控编程
  • 2.6.1 逻辑运算和移位运算
  • 2.6.2 控制结构
  • 2.6.3 函数
  • 2.6.4 输入和输出
  • 2.6.5 马拉松训练助手
  • *2.7 其他体系结构
  • 2.7.1 流水线
  • 2.7.2 多处理器机器
  • 复习题
  • 社会问题
  • 课外阅读
  • 第3章 操作系统
  • 持久理解和学习成果
  • 3.1 操作系统的历史
  • 3.2 操作系统的体系结构
  • 3.2.1 软件概述
  • 3.2.2 操作系统组件
  • 3.2.3 系统启动
  • 3.3 协调机器的活动
  • 3.3.1 进程的概念
  • 3.3.2 进程管理
  • *3.4 处理进程间的竞争
  • 3.4.1 信号量
  • 3.4.2 死锁
  • 3.5 安全性
  • 3.5.1 来自外部的攻击
  • 3.5.2 来自内部的攻击
  • 复习题
  • 社会问题
  • 课外阅读
  • 第4章 组网及因特网
  • 持久理解和学习成果
  • 4.1 网络基础
  • 4.1.1 网络分类
  • 4.1.2 协议
  • 4.1.3 组合网络
  • 4.1.4 进程间通信的方法
  • 4.1.5 分布式系统
  • 4.2 因特网
  • 4.2.1 因特网体系结构
  • 4.2.2 因特网编址
  • 4.2.3 因特网应用
  • 4.3 万维网
  • 4.3.1 万维网实现
  • 4.3.2 HTML
  • 4.3.3 XML
  • 4.3.4 客户端活动和服务器端活动
  • *4.4 因特网协议
  • 4.4.1 因特网软件的分层方法
  • 4.4.2 TCP/IP协议簇
  • *4.5 简单的客户机服务器
  • 超越无限
  • 4.6 网络安全
  • 4.6.1 攻击的形式
  • 4.6.2 防护和对策
  • 4.6.3 密码学
  • 4.6.4 网络安全的法律途径
  • 复习题
  • 社会问题
  • 课外阅读
  • 第5章 算法
  • 持久理解和学习成果
  • 5.1 算法的概念
  • 5.1.1 非正式的回顾
  • 5.1.2 算法的正式定义
  • 5.1.3 算法的抽象本质
  • 5.2 算法的表示
  • 5.2.1 原语
  • 5.2.2 伪代码
  • 5.3 算法的发现
  • 5.3.1 问题求解的艺术
  • 5.3.2 迈出第一步
  • 5.4 迭代结构
  • 5.4.1 顺序搜索算法
  • 5.4.2 循环控制
  • 5.4.3 插入排序算法
  • 5.5 递归结构
  • 5.5.1 二分搜索算法
  • 5.5.2 递归控制
  • 5.6 效率和正确性
  • 5.6.1 算法效率
  • 5.6.2 软件验证
  • 复习题
  • 社会问题
  • 课外阅读
  • 第6章 程序设计语言
  • 持久理解和学习成果
  • 6.1 历史回顾
  • 6.1.1 早期程序设计语言
  • 6.1.2 机器无关和超越机器无关
  • 6.1.3 程序设计范型
  • 6.2 传统的程序设计概念
  • 6.2.1 变量和数据类型
  • 6.2.2 数据结构
  • 6.2.3 常量和字面量
  • 6.2.4 赋值语句
  • 6.2.5 控制语句
  • 6.2.6 注释
  • 6.3 过程单元
  • 6.3.1 函数
  • 6.3.2 参数
  • 6.3.3 有返回值的函数
  • 6.4 语言实现
  • 6.4.1 翻译过程
  • 6.4.2 软件开发包
  • 6.5 面向对象程序设计
  • 6.5.1 类和对象
  • 6.5.2 构造器
  • 6.5.3 附加特性
  • *6.6 程序设计并发活动
  • *6.7 说明性程序设计
  • 6.7.1 逻辑推演
  • 6.7.2 Prolog
  • 复习题
  • 社会问题
  • 课外阅读
  • 第7章 软件工程
  • 持久理解和学习成果
  • 7.1 软件工程学科
  • 7.2 软件生命周期
  • 7.2.1 周期是个整体
  • 7.2.2 传统的开发阶段
  • 7.3 软件工程方法学
  • 7.4 模块化
  • 7.4.1 模块式实现
  • 7.4.2 耦合
  • 7.4.3 内聚
  • 7.4.4 信息隐藏
  • 7.4.5 组件
  • 7.5 行业工具
  • 7.5.1 较老的工具
  • 7.5.2 统一建模语言
  • 7.5.3 设计模式
  • 7.6 质量保证
  • 7.6.1 质量保证的范围
  • 7.6.2 软件测试
  • 7.7 文档
  • 7.8 人机界面
  • 7.9 软件所有权和责任
  • 复习题
  • 社会问题
  • 课外阅读
  • 第8章 数据抽象
  • 持久理解和学习成果
  • 8.1 基本数据结构
  • 8.1.1 数组和聚合
  • 8.1.2 列表、栈和队列
  • 8.1.3 树
  • 8.2 相关概念
  • 8.2.1 再谈抽象
  • 8.2.2 静态结构与动态结构
  • 8.2.3 指针
  • 8.3 数据结构的实现
  • 8.3.1 存储数组
  • 8.3.2 存储聚合
  • 8.3.3 存储列表
  • 8.3.4 存储栈和队列
  • 8.3.5 存储二叉树
  • 8.3.6 操控数据结构
  • 8.4 一个简短的案例研究
  • 8.5 定制的数据类型
  • 8.5.1 用户定义的数据类型
  • 8.5.2 抽象数据类型
  • 8.6 类和对象
  • *8.7 机器语言中的指针
  • 复习题
  • 社会问题
  • 课外阅读
  • 第9章 数据库系统
  • 持久理解和学习成果
  • 9.1 数据库基础
  • 9.1.1 数据库系统的重要性
  • 9.1.2 模式的作用
  • 9.1.3 数据库管理系统
  • 9.1.4 数据库模型
  • 9.2 关系模型
  • 9.2.1 关系设计中的问题
  • 9.2.2 关系运算
  • 9.2.3 SQL
  • *9.3 面向对象数据库
  • *9.4 维护数据库的完整性
  • 9.4.1 提交/回滚协议
  • 9.4.2 锁定
  • *9.5 传统的文件结构
  • 9.5.1 顺序文件
  • 9.5.2 索引文件
  • 9.5.3 散列文件
  • 9.6 数据挖掘
  • 9.7 数据库技术的社会影响
  • 复习题
  • 社会问题
  • 课外阅读
  • 第10章 计算机图形学
  • 持久理解和学习成果
  • 10.1 计算机图形学的范围
  • 10.2 3D图形学概述
  • 10.3 建模
  • 10.3.1 单个物体的建模
  • 10.3.2 整个场景的建模
  • 10.4 渲染
  • 10.4.1 光-表面相互作用
  • 10.4.2 裁剪、扫描转换和隐藏面消除
  • 10.4.3 着色
  • 10.4.4 渲染-流水线硬件
  • *10.5 处理全局光照
  • 10.5.1 光线跟踪
  • 10.5.2 辐射度
  • 10.6 动画
  • 10.6.1 动画基础
  • 10.6.2 运动学和动力学
  • 10.6.3 动画制作过程
  • 复习题
  • 社会问题
  • 课外阅读
  • 第11章 人工智能
  • 持久理解和学习成果
  • 11.1 智能与机器
  • 11.1.1 智能体
  • 11.1.2 研究方法
  • 11.1.3 图灵测试
  • 11.2 感知
  • 11.2.1 理解图像
  • 11.2.2 语言处理
  • 11.3 推理
  • 11.3.1 产生式系统
  • 11.3.2 搜索树
  • 11.3.3 启发式
  • 11.4 其他研究领域
  • 11.4.1 知识的表达和处理
  • 11.4.2 学习
  • 11.4.3 遗传算法
  • 11.5 人工神经网络
  • 11.5.1 基本特性
  • 11.5.2 训练人工神经网络
  • 11.6 机器人学
  • 11.7 后果的思考
  • 复习题
  • 社会问题
  • 课外阅读
  • 第12章 计算理论
  • 持久理解和学习成果
  • 12.1 函数及其计算
  • 12.2 图灵机
  • 12.2.1 图灵机的原理
  • 12.2.2 丘奇-图灵论题
  • 12.3 通用程序设计语言
  • 12.3.1 Bare Bones语言
  • 12.3.2 用Bare Bones语言编程
  • 12.3.3 Bare Bones的通用性
  • 12.4 一个不可计算的函数
  • 12.4.1 停机问题
  • 12.4.2 停机问题的不可解性
  • 12.5 问题的复杂性
  • 12.5.1 问题复杂性的度量
  • 12.5.2 多项式问题与非多项式问题
  • 12.5.3 NP问题
  • *12.6 公钥密码学
  • 12.6.1 模表示法
  • 12.6.2 RSA公钥密码学
  • 复习题
  • 社会问题
  • 课外阅读
  • 附录A ASCII码
  • 附录B 用于处理二进制补码表示的电路
  • 附录C Vole:一种简单的机器语言
  • C.1 Vole体系结构
  • C.2 Vole的机器语言
  • 附录D 高级程序设计语言
  • D.1 Ada
  • D.2 C
  • D.3 C++
  • D.4 C
  • D.5 FORTRAN
  • D.6 Java
  • 附录E 迭代结构与递归结构的等价性
  • 索引
  • 教师支持申请表
展开全部

评分及书评

4.8
9个评分
  • 用户头像
    给这本书评了
    5.0

    计算机的主存储器是由称为存储单元(cell)的可管理单元组成的,一个典型存储单元的容量为 8 位。因为一个 8 位的串称为一个字节(byte),所以一个典型存储单元的容量是一个字节。嵌在家用电器(如恒温器和微波炉)中的小型计算机的主存储器可能仅有几百个存储单元,但台式计算机和智能手机的主存储器可能有数十亿个存储单元。虽然计算机中没有左或右的概念,但是我们通常假设存储单元的位是排成一行的。该行的左端称为高位端(high-order end),右端称为低位端(low-order end)。高位端的最左边的一位称作高位或最高有效位(most significant bit)。取这个名称是因为,如果把存储单元里的内容解释为数值,那么这一位就是该数的最高有效位。类似地,低位端的最右边的一位称为低位或最低有效位(least significant bit)。因此,我们可以像图 1-7 所示的那样描述字节型存储单元的内容。

      转发
      评论
      用户头像
      给这本书评了
      5.0
      非常好的一本计算机认知书

      花费了将近 80 个小小时读完了本书,受益匪浅。计划学完编程之后再来复读本书。本书较为全面的、概念性的讲述了计算机科学的各个概念,让非计算机专业人员能够对计算机科学有一个较为全面的认识,为后续各部分详细的研究奠定了基础,非常不错。本书中作者的语言表达不是太直白,很多逻辑关系进行了适当的简略,存在较多微小的思维跳跃,阅读过程中必须紧跟作者的思路,并且要反复思考作者要表达的逻辑。有可能读起来会比较吃力。本书中的内容理解起来还是有一定的难度,对于学习能力、逻辑思维能力、基础知识储备有一定的要求。建议具备一定的计算机理论知识之后再阅读本书,不具备计算机理论知识的人员,阅读的时候需要花费较多的时长。本书需要多读几遍,反复研究,以便加深理解。

        转发
        评论

      出版方

      人民邮电出版社

      人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。