CPU眼里的C/C++

CPU眼里的C/C++

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

从CPU的视角,多角度地揭秘编程语言背后的运行原理和设计之美。

内容简介

全书共6章。

第1章:介绍本书所使用到的主要工具和一些需要心里有数的预备知识;

第2章:解析最简单、常用的基础语法,帮助读者适应本书的节奏;

第3章:为进阶知识,会从CPU、操作系统的角度,深入分析函数的工作原理和实现细节;

第4章:解析经典的C语法,背后的实现逻辑,并介绍“面向对象”的编程思想及优缺点;

第5章:讨论跟操作系统强相关的软件技术,会将所有章节的内容贯穿起来,初步形成一个现代操作系统的运作模型;

第6章:我们会讨论一些经典的面试、笔试题,跟读者一起分享工作、学习、求职中的苦与乐。

本书可作为高等院校计算机、自动化及相关专业的本科生或研究生教材,也可供对C/C工作原理、操纵系统感兴趣的研究人员和工程技术人员阅读参考。

作者简介

阿布编程(原名:杨晓涛),微软云计算与人工智能事业部软件工程师。喜欢关注和敬畏生活中渺小的人和事。

章节目录

版权信息

内容简介

作者简介

推荐序一

推荐序二

推荐序三

前言

第1章 预备知识

阅读建议

1.1 工具介绍

Compiler Explorer

使用方法

热点问题

1.2 CPU眼里的程序运行

提出问题

代码分析

热点问题

1.3 CPU眼里的汇编语言

汇编语言是必需的吗?

代码分析

思考

热点问题

第2章 基础语法

阅读建议

2.1 CPU眼里的main函数

提出问题

代码分析

热点问题

2.2 CPU眼里的变量

提出问题

认识内存

代码分析

热点问题

2.3 CPU眼里的goto、if else

提出问题

goto代码分析

if…else代码分析

goto的风险和应用

热点问题

2.4 CPU眼里的指针变量

提出问题

指针变量

指针*操作

指针±操作

热点问题

2.5 CPU眼里的指针本质和风险

提出问题

代码分析

指针的风险

热点问题

2.6 CPU眼里的数组

提出问题

一维数组

多维数组

2.7 CPU眼里的数组越界

阅读建议

提出问题

代码分析

编程轶事

热点问题

2.8 CPU眼里的引用

提出问题

代码分析

热点问题

2.9 CPU眼里的i++与++i

提出问题

代码分析

差异分析

热点问题

2.10 代码陷阱类型转换

提出问题

代码分析

解决办法

编程轶事

第3章 函数原理

阅读建议

3.1 CPU眼里的参数传递

提出问题

代码分析

传值:变量值,不可改

传指针:变量值,可改

传引用vs传指针

热点问题

3.2 CPU眼里的函数括号{}

提出问题

代码分析

热点问题

3.3 CPU眼里的调用和返回

提出问题

代码分析

热点问题

3.4 CPU眼里的函数指针

提出问题

代码分析

热点问题

3.5 CPU眼里的函数返回值

提出问题

代码分析

热点问题

3.6 CPU眼里的堆和栈

提出问题

“栈”的分析

“栈”的生长方向

“堆”的分析

“堆”的生长方向

编程轶事

热点问题

3.7 函数实验回溯函数调用关系

提出问题

代码分析

编程轶事

第4章 C++特性

阅读建议

4.1 CPU眼里的this

提出问题

代码分析

热点问题

4.2 CPU眼里的构造函数

提出问题

代码分析

热点问题

4.3 CPU眼里的虚函数

提出问题

代码分析

热点问题

4.4 CPU眼里的多态

提出问题

代码分析

实例分析

热点问题

4.5 CPU眼里的模板

提出问题

代码分析

热点问题

4.6 CPU眼里的malloc和new

提出问题

代码分析

热点问题

4.7 面向对象实践依赖反转

提出问题

GuiLite介绍

代码结构

热点问题

第5章 高级编程

阅读建议

5.1 CPU眼里的虚拟内存

提出问题

虚拟内存原理

减少内存碎片

简化运行条件

隔离进程

内存共享

SWAP

热点问题

5.2 坐井观天的进程

提出问题

代码分析

进程vs线程

热点问题

5.3 CPU眼里的地址映射

提出问题

问题分析

热点问题

5.4 CPU眼里的volatile

提出问题

代码分析

编程轶事

热点问题

5.5 CPU眼里的常量

提出问题

代码分析

热点问题

5.6 CPU眼里的系统调用

提出问题

代码分析

热点问题

5.7 CPU眼里的大端、小端

提出问题

代码分析

编程轶事

热点问题

5.8 CPU眼里的上下文

提出问题

代码实验

编程轶事

热点问题

5.9 CPU眼里的锁

提出问题

代码实验

编程轶事

热点问题

第6章 面试挑战

阅读建议

6.1 static、global以及local

提出问题

代码分析

热点问题

6.2 数组和双重指针

提出问题

代码分析

热点问题

6.3 指针为什么这么难

提出问题

学习指针的困境

指针的普通性和特殊性

多重指针

数组、指针的混用

6.4 auto的工作原理

提出问题

代码分析

6.5 thread_local的工作原理

提出问题

代码分析

6.6 面试的技巧

常见问题

应对技巧

CPU眼里的C/C++是2023年由清华大学出版社出版,作者阿布编程。

得书感谢您对《CPU眼里的C/C++》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
C++程序设计教程 电子书
全书共10章,第1章主要讲解了C++语言相对于C语言在基础知识上的扩充。第2—7章分别讲解了类与对象、继承与多态、运算符重载、模板、I/O流和异常。第8-9章分别讲解了STL、设计模式以及C++11的一些新特性,作为C++程序员,这一部分内容或早或晚都必须要学习,熟练掌握它们可使程序开发更加得心应手。第10章为项目实战,结合前面所学知识,开发了一个企业级项目——物流管理系统。
C++语言程序设计 电子书
C++程序基础知识(基本句子结构,I/O,函数,类与对象,数据共享与保护,数组与指针,继承,多态,异常处理).C++支持面向过程与面向对象两种编程模式,本教材在结构安排上,注重这两种模式的过渡,结合到面向对象的专题论述,让学生从传统过程C模式程序设计真正进入面向对象C++模式的程序设计知识海洋中。
C++从入门到精通 电子书
C++基础知识、核心技术与提高篇实践项目。
C++ 开发从入门到精通 电子书
本书的特色是实现了入门知识、实例演示、范例演练、技术解惑、综合实战5大部分内容的融合,让读者看得懂、用得上、学得会。 一本书的容量,讲解了入门类、范例类和项目实战类三类图书的内容。 丰富的配套资源学习更高效 440个实例,更多的实践演练机会 837分钟视频讲解,降低学习难度 290个拓展实例,真正地举一反三 101个技术解惑,破解学习难点 “技术讲解”→范例演练”→“技术解惑”贯穿全书,全面掌握C++语言开发 技术讲解:通过145个实例,循序渐进地讲解了C开发的各个知识点。 范例演练:290个拓展范例和5个综合实例,使读者真正具有项目实战能力。 技术解惑:把容易混淆的概念单独讲解和剖析,帮助读者绕过学习中的陷阱。 QQ群 网站论坛实现教学互动,形成互帮互学的朋友圈 网站论坛:读者答疑/学习辅导/PPT资源下载读者 QQ群:疑惑快速解答/和作者直接交流
中学生C++创意编程 电子书
本书采用单元和课的形式,通过30个寓教于乐且贴近中学生的学习和生活、符合中学生认知的编程案例,帮助中学生学习和掌握C++的编程思维和方法。本书利用流程图厘清编程思路,进而剖析解决问题必需的C++知识,包括常量、变量、顺序结构、选择结构、循环结构、数组、函数、文件操作、算法等。在此过程中,学生可以通过探索体会编程的乐趣和魅力,并学会运用计算思维来解决问题。本书适合中学生自主学习使用,可作为青少年编程