万本电子书0元读

万本电子书0元读

顶部广告

计算机组成原理(基于x86-64架构)电子书

【实用性强】着眼于硬件组件和机器指令,帮助读者理解计算机执行代码时背后发生的事情,让读者成为更优秀、更有信心的程序员。 【案例丰富】经过多年课堂实践的检验,覆盖数据存储方式、操作系统管理硬件资源、布尔代数应用等多方面内容。 【知识全面】全书共21章,涵盖数据存储、逻辑门和晶体管、中央处理器、汇编和机器代码、数据结构、面向对象编程等内容。

售       价:¥

纸质售价:¥92.20购买纸书

5人正在读 | 0人评论 6.8

作       者:[美]罗伯特·G·普兰茨(Robert G· Plantz) 著

出  版  社:人民邮电出版社有限公司

出版时间:2025-04-01

字       数:33.5万

所属分类: 科技 > 计算机/网络 > 计算机教材

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
了解计算机软硬件的工作原理可以为理解复杂代码下坚实的基础,从而提升对代码的控制力。本书围绕如何将高级语言代码翻译成汇编语言、操作系统硬件资源管理、数据的编码、硬件的十制数据处理、程序代码和机器代码等主题,解释了现代计算机的工作原理;从内存组织、二制逻辑和数据类型等基本概念始,逐步探讨它们在汇编语言层面的实现方式。全书共21章,涵盖了数据存储、逻辑门和晶体管、中央处理器、汇编和机器代码、数据结构、面向对象编程等内容。 本书适合作为高等院校计算机组成原理相关课程的参考教材,也适合有编程基础的人阅读。<br/>【推荐语】<br/>【实用性强】着眼于硬件组件和机器指令,帮助读者理解计算机执行代码时背后发生的事情,让读者成为更优秀、更有信心的程序员。 【案例丰富】经过多年课堂实践的检验,覆盖数据存储方式、操作系统管理硬件资源、布尔代数应用等多方面内容。 【知识全面】全书共21章,涵盖数据存储、逻辑门和晶体管、中央处理器、汇编和机器代码、数据结构、面向对象编程等内容。 【架构清晰】大致分为数学和逻辑、硬件、软件3部分,为读者提供讨论概念所需的数学语言,介绍构建计算机的组件,讲解软件如何控制硬件。<br/>【作者】<br/>罗伯特·G.普兰茨(Robert G. Plantz)曾为双子星座号飞船和阿波罗登月舱设计电子设备。他在加利福尼亚大学伯克利分校获得电气工程博士学位,并在投身教育工作之前担任了8年的软件工程师。他在索诺玛州立大学担任教授20余年。<br/>
目录展开

内容提要

前言

资源与支持

第1章 预备知识

1.1 计算机子系统

1.2 程序执行

1.3 编程环境

1.4 小结

第2章 数据存储格式

2.1 描述开关和开关组

2.1.1 使用位表示开关

2.1.2 表示位组

2.1.3 使用十六进制数码

2.2 二进制和十进制的数学等价性

2.2.1 了解位置记数法

2.2.2 将二进制数转换为无符号十进制数

2.2.3 将无符号十进制数转换为二进制数

2.3 在存储器中存储数据

2.3.1 内存地址的表示方式

2.3.2 字符

2.3.3 无符号整数

2.4 使用C语言探究数据格式

2.4.1 C和C++ I/O库

2.4.2 编写并执行第一个C程序

2.5 使用调试器检查内存

2.5.1 使用调试器

2.5.2 理解内存字节存储序

2.6 小结

第3章 计算机算术

3.1 无符号整数的加减

3.1.1 十进制数字系统的加法

3.1.2 十进制数字系统的减法

3.1.3 无符号二进制整数的加法和减法

3.2 有符号整数的加减

3.2.1 补码

3.2.2 计算补码

3.2.3 二进制有符号整数的加减

3.2.4 整数编码的环性质

3.3 小结

第4章 布尔代数

4.1 基本布尔运算符

4.2 布尔表达式

4.3 布尔代数法则

4.3.1 与初等代数相同的布尔代数法则

4.3.2 与初等代数不同的布尔代数法则

4.4 布尔函数

4.4.1 规范和或最小项之和

4.4.2 规范积或最大项之积

4.4.3 规范布尔形式的比较

4.5 布尔表达式最小化

4.5.1 最小表达式

4.5.2 使用代数操作实现最小化

4.5.3 使用卡诺图进行最小化

4.6 组合基本布尔运算符

4.7 小结

第5章 逻辑门

5.1 电子学入门

5.1.1 电源和电池

5.1.2 无源元件

5.2 晶体管

5.2.1 MOSFET开关

5.2.2 CMOS开关

5.3 与非门和或非门

5.4 作为万能门的与非门

5.5 小结

第6章 组合逻辑电路

6.1 两类逻辑电路

6.2 加法器

6.2.1 半加器

6.2.2 全加器

6.2.3 由两个半加器组成的全加器

6.2.4 波动进位加法和减法电路

6.3 译码器

6.4 复用器

6.5 可编程逻辑设备

6.5.1 可编程逻辑阵列

6.5.2 只读存储器

6.5.3 可编程阵列逻辑

6.6 小结

第7章 时序逻辑电路

7.1 锁存器

7.1.1 使用或非门的SR锁存器

7.1.2 使用与非门的SR锁存器

7.1.3 带有Enable的SR锁存器

7.1.4 D锁存器

7.2 触发器

7.2.1 时钟

7.2.2 D触发器

7.2.3 T触发器

7.2.4 JK触发器

7.3 设计时序逻辑电路

7.3.1 设计计数器

7.3.2 设计分支预测器

7.4 小结

第8章 存储器

8.1 存储器层级结构

8.1.1 大容量存储器

8.1.2 内存

8.1.3 缓存

8.1.4 寄存器

8.2 实现存储器硬件

8.2.1 4位寄存器

8.2.2 移位寄存器

8.2.3 寄存器文件

8.2.4 读-写存储器

8.2.5 静态随机存取存储器

8.2.6 动态随机存取存储器

8.3 小结

第9章 中央处理单元

9.1 CPU概述

9.1.1 CPU子系统

9.1.2 指令执行周期

9.2 x86-64寄存器

9.2.1 通用寄存器

9.2.2 状态寄存器

9.3 C/C++的整数数据类型和寄存器大小

9.4 使用gdb查看CPU寄存器

9.5 小结

第10章 汇编语言编程

10.1 编译C程序

10.2 从C到汇编语言

10.2.1 我们不会用到的汇编器指令

10.2.2 我们会用到的编译器指令

10.3 使用汇编语言创建程序

10.3.1 汇编语言概述

10.3.2 第一条汇编语言指令

10.3.3 函数内的最小化处理

10.3.4 使用gdb学习汇编语言

10.4 AT&T语法

10.5 小结

第11章 深入main函数

11.1 write和read系统调用函数

11.2 通过寄存器传递参数

11.3 位置无关代码

11.4 调用栈

11.4.1 栈的概述

11.4.2 深入函数序言和结语

11.5 函数的局部变量

11.5.1 栈内变量

11.5.2 栈损坏

11.6 不使用C运行时环境

11.7 小结

第12章 剖析指令

12.1 机器码

12.2 指令字节

12.2.1 操作码字节

12.2.2 ModR/M字节

12.2.3 REX前缀字节

12.3 立即寻址模式

12.4 内存寻址模式

12.4.1 直接内存寻址

12.4.2 带有偏移量的寄存器间接寻址

12.4.3 带有索引的寄存器间接寻址

12.4.4 SIB字节

12.5 跳转指令

12.6 汇编器和链接器

12.6.1 汇编器

12.6.2 链接器

12.7 小结

第13章 控制流结构

13.1 跳转

13.1.1 无条件跳转

13.1.2 条件跳转

13.2 迭代

13.2.1 while循环

13.2.2 for循环

13.2.3 do-while循环

13.3 选择

13.3.1 if条件

13.3.2 if-then-else条件

13.3.3 switch条件

13.4 小结

第14章 剖析函数

14.1 C语言的变量名作用域

14.2 参数传递概述

14.3 全局变量

14.4 显式传递参数

14.4.1 C语言中的参数传递

14.4.2 汇编语言实现

14.5 处理6个以上的参数

14.5.1 将参数压入栈

14.5.2 直接在栈内存储参数

14.5.3 栈帧用法总结

14.6 静态局部变量

14.7 小结

第15章 函数的特殊用法

15.1 递归

15.2 使用汇编语言访问CPU特性

15.2.1 使用汇编语言编写的独立函数

15.2.2 内联汇编语言

15.3 小结

第16章 逻辑位、乘法以及除法指令

16.1 位掩码

16.1.1 C语言中的位掩码

16.1.2 逻辑指令

16.1.3 汇编语言中的位掩码

16.2 移位

16.2.1 C语言中的移位操作

16.2.2 移位指令

16.2.3 汇编语言中的移位操作

16.3 乘法

16.3.1 C语言中的乘法

16.3.2 乘法指令

16.3.3 汇编语言中的乘法

16.4 除法

16.4.1 C语言中的除法

16.4.2 除法指令

16.4.3 汇编语言中的除法

16.5 小结

第17章 数据结构

17.1 数组

17.1.1 C语言中的数组

17.1.2 汇编语言中的数组

17.2 记录

17.2.1 C语言中的记录

17.2.2 汇编语言中的记录

17.2.3 在C语言中向其他函数传递记录

17.2.4 在汇编语言中向其他函数传递记录

17.3 小结

第18章 面向对象编程

18.1 C++中的对象

18.1.1 使用C++对象

18.1.2 定义类成员函数

18.1.3 由编译器生成构造函数和析构函数

18.2 汇编语言中的对象

18.3 小结

第19章 小数

19.1 二进制小数

19.2 定点数

19.2.1 当小数部分为2的倒数幂之和时

19.2.2 当小数部分为十进制时

19.3 浮点数

19.3.1 浮点表示

19.3.2 IEEE 754浮点数标准

19.3.3 SSE2浮点数硬件

19.3.4 xmm寄存器

19.3.5 浮点数编程

19.3.6 浮点算术误差

19.4 关于数值精确性的一些说明

19.5 小结

第20章 输入/输出

20.1 时序考量

20.1.1 内存时序

20.1.2 I/O设备时序

20.1.3 总线时序

20.2 访问I/O设备

20.2.1 端口映射I/O

20.2.2 内存映射I/O

20.3 I/O编程

20.3.1 轮询式I/O

20.3.2 中断驱动I/O

20.3.3 直接内存访问

20.4 轮询式I/O编程算法

20.4.1 使用C语言实现UART内存映射I/O

20.4.2 使用汇编语言实现UART内存映射I/O

20.4.3 UART端口映射I/O

20.5 小结

第21章 中断与异常

21.1 特权级

21.2 CPU响应中断或异常

21.2.1 外部中断

21.2.2 异常

21.2.3 软件中断

21.3 系统调用

21.3.1 int 0x80软件中断

21.3.2 syscall指令

21.4 小结

累计评论(0条) 2个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部