程序员培训课件之计算机进阶指南图解网络系统

上传人:沧海****19 文档编号:265878620 上传时间:2022-03-14 格式:PPTX 页数:423 大小:25.07MB
返回 下载 相关 举报
程序员培训课件之计算机进阶指南图解网络系统_第1页
第1页 / 共423页
程序员培训课件之计算机进阶指南图解网络系统_第2页
第2页 / 共423页
程序员培训课件之计算机进阶指南图解网络系统_第3页
第3页 / 共423页
程序员培训课件之计算机进阶指南图解网络系统_第4页
第4页 / 共423页
程序员培训课件之计算机进阶指南图解网络系统_第5页
第5页 / 共423页
点击查看更多>>
资源描述

《程序员培训课件之计算机进阶指南图解网络系统》由会员分享,可在线阅读,更多相关《程序员培训课件之计算机进阶指南图解网络系统(423页珍藏版)》请在金锄头文库上搜索。

1、这本书写的络知识主要是向程序员向程序员的,因为我本身也是个程序员,所以涉及到的知识主要是关于程 序员常作或者试的操作系统知识。常适合有点操作系统,但是不怎么扎实,或者知识点串不起来的同学,说这本图解系统就是这本图解系统就是为为了了 拯救半桶拯救半桶的同学的同学出来出来。因为我写的图解系统就四个字, 通俗易懂通俗易懂!相信你在看这本图解系统的时候,你的感受会是:前前这本书图解系统适合什么群体呢?很诚恳的告诉你,这本书不是教科书。是我在公众号写的图解系统章的整合,所以肯定是没有教科书那么细致和全,当然也不就不会有 很多废话,且有的知识点书上看不到。图解系统 PDF 不仅仅只有操作系统的知识,还涉及

2、计算机组成和 Linux 系统、命令的知识。阅读的顺序可以不从头读到尾,你可以根据你想要了解的知识点,去看哪个章节的章就好,可以随意 阅读任何章节的章。下这张思维导图是整个电书的录结构:当然,也适合试突击操作系统知识时拿来看,不敢说 100 % 涵盖了试的络问题,但是少 90% 是 有的,且内容的深度应对也是搓搓有余的,有常多的读者跑来感激我的图解系统, 帮助他们拿帮助他们拿到了国内很多到了国内很多线线的的 offer。卧槽, 原来是这样, 学师教知识原来是这么理解卧槽, 我的操作系统知识串起来了卧槽, 我感觉试稳了卧槽, 相恨晚这本书图解系统要怎么阅读呢?、硬件结、硬件结构构1.1 CPU

3、是如何执是如何执程序程序的的?代码写了那么多,你知道 a = 1 + 2 这条代码是怎么被 CPU 执的吗?软件了那么多,你知道软件的 32 位和 64 位之间的区别吗?再来 32 位的操作系统可以运在 64 位的电 脑上吗? 64 位的操作系统可以运在 32 位的电脑上吗?如果不,原因是什么?CPU 看了那么多,我们都知道 CPU 通常分为 32 位和 64 位,你知道 64 位相 32 位 CPU 的优势在哪 吗? 64 位 CPU 的计算性能定 32 位 CPU 很多吗?不知道也不慌张,接下来就循序渐进的、层层的攻破这些问题。勘误事勘误事宜宜我是个残党残党,可能中会有不少错别字,所以在学

4、习这份电书的同学, 如果你发现有任何错误或者如果你发现有任何错误或者 疑惑的地疑惑的地,欢迎你通过下,欢迎你通过下的邮箱反馈给我的邮箱反馈给我,我会逐个修正,然后发布新版本的图解系统 PDF, 起迭代出更好的图解系统!勘误邮箱: 要想知道程序执的原理,我们可以先从图灵机说起,图灵的基本思想是机器来模拟们纸笔进 数学运算的过程,且还定义了计算机由哪些部分组成,程序是如何执的。图灵机什么样呢?你从下图可以看到图灵机的实际样:图灵机的作式1 、 存储单元于存放数据;2、控制单元于识别字符是数据还是指令,以及控制程序的流程等;3、 运算单元于执运算指令;知道了图灵机的组成后,我们以简单数学运算的 1

5、+ 2 作为例,来看看它是怎么执这代码的。先,读写头把 1 、2 、+这 3 个字符分别写到纸带上的 3 个格,然后读写头先停在 1 字符对应的格上;有条纸带,纸带由个个连续的格组成,每个格可以写字符,纸带就好内存,纸带 上的格的字符就好内存中的数据或程序;有个读写头,读写头可以读取纸带上任意格的字符,也可以把字符写到纸带的格; 读写头上有些部件,如存储单元、控制单元以及运算单元:图灵机的基本组成如下:读写头再往右移动个格,就会碰到 + 号,读写头读到 + 号后,将 + 号传输给控制单元,控制单元发现是个 + 号不是数字,所以没有存到状态中,因为 + 号是运算符指令,作是加和 前的状态,于是通

6、知运算单元作。运算单元收到要加和状态中的值的通知后,就会把状态中的 1 和 2 读并计算,再将计算的结果 3 存放到状态中;然后读写头向右移动个格,同样的式把 2 读到图灵机的状态,于是现在图灵机的状态中存储 着两个连续的数字, 1 和 2;接着,读写头读 1 到存储设备中,这个存储设备称为图灵机的状态;通过上的图灵机计算 1 + 2 的过程,可以发现图灵机主要功能就是读取纸带格中的内容,然后交给 控制单元识别字符是数字还是运算符指令,如果是数字则存到图灵机状态中,如果是运算符,则通知运 算符单元读取状态中的数值进计算,计算结果最终返回给读写头,读写头把结果写到纸带的格中。在 1945 年冯诺

7、依曼和其他计算机科学家们提出了计算机具体实现的报告,其遵循了图灵机的设计,且 还提出电元件构造计算机,并约定了进制进计算和存储,还定义计算机基本结构为 5 个部分, 分别是中央处理器(中央处理器(CPU)、)、内存内存、输输设备设备、输出设备输出设备、总总线线。事实上,图灵机这个看起来很简单的作式,和我们今天的计算机是基本样的。接下来,我们同再 看看当今计算机的组成以及作式。最后,运算单元将结果返回给控制单元,控制单元将结果传输给读写头,读写头向右移动,把结果 3 写到纸带的格中;冯诺依曼模型这 5 个部分也被称为冯诺依曼模型,接下来看看这 5 个部分的具体作。内内存存我们的程序和数据都是存储

8、在内存,存储的区域是线性的。数据存储的单位是个进制位(进制位(bit) ,即 0 或 1。最的存储单位是字节(字节(byte), 1 字节等于 8 位。内存的地址是从 0 开始编号的,然后增排列,最后个地址为内存总字节数 - 1,这种结构好似我们程序 的数组,所以内存的读写任何个数据的速度都是样的。中央处理中央处理器器中央处理器也就是我们常说的 CPU, 32 位和 64 位 CPU 最主要区别在于次能计算多少字节数据:32 位 CPU 次可以计算 4 个字节;64 位 CPU 次可以计算 8 个字节;这的 32 位和 64 位,通常称为 CPU 的位宽。之所以 CPU 要这样设计,是为了能计

9、算更的数值,如果是 8 位的 CPU,那么次只能计算 1 个字节0255 范围内的数值,这样就法次完成计算 10000 * 500 ,于是为了能次计算数的运算, CPU 需要持多个 byte 起计算,所以 CPU 位宽越,可以计算的数值就越,如说 32 位 CPU 能计算的最整数是 4294967295 。CPU 内部还有些组件,常的有寄存器、控制单元和逻辑运算单元等。其中,控制单元负责控制 CPU 作,逻辑运算单元负责计算,寄存器可以分为多种类,每种寄存器的功能不尽相同。通寄存器,来存放需要进运算的数据,如需要进加和运算的两个数据。程序计数器,来存储 CPU 要执下条指令所在的内存地址,注意

10、不是存储了下条要执 的指令,此时指令还在内存中,程序计数器只是存储了下条指令的地址。指令寄存器,来存放程序计数器指向的指令,也就是指令本身,指令被执完成之前,指令都存储 在这。数据是如何通过线路传输的呢?其实是通过操作电压,低电压表示 0,压电压则表示 1。如果构造了低这样的信号,其实就是 101 进制数据,进制则表示 5,如果只有条线路,就意味 着每次只能传递 1 bit 的数据,即 0 或 1,那么传输 101 这个数据,就需要 3 次才能传输完成,这样的效率常低。地址总线,于指定 CPU 将要操作的内存地址;数据总线,于读写内存的数据;控制总线,于发送和接收信号,如中断、设备复位等信号,

11、 CPU 收到信号后然进响应,这时 也需要控制总线;因为内存离 CPU 太远了,寄存器就在 CPU ,还紧挨着控制单元和逻辑运算单元,然计算时速度会 很快。常的寄存器种类:输设备向计算机输数据,计算机经过计算后,把数据输出给输出设备。期间,如果输设备是键盘, 按下按键时是需要和 CPU 进交互的,这时就需要到控制总线了。先要通过地址总线来指定内存的地址;再通过数据总线来传输数据;CPU 中的寄存器主要作是存储计算时的数据,你可能好奇为什么有了内存还需要寄存器?原因很简单,总线是于 CPU 和内存以及其他设备之间的通信,总线可分为 3 种:线路位宽与 CPU 位宽当 CPU 要读写内存数据的时候

12、,般需要通过两个总线:输输、输出设备输出设备总总线线这样位位传输的式,称为串,下个 bit 必须等待上个 bit 传输完成才能进传输。当然,想 次多传些数据,增加线路即可,这时数据就可以并传输。为了避免低效率的串传输的式,线路的位宽最好次就能访问到所有的内存地址。 CPU 要想操作的内 存地址就需要地址总线,如果地址总线只有 1 条,那每次只能表示 0 或 1这两种情况,所以 CPU 次 只能操作 2 个内存地址,如果想要 CPU 操作 4G 的内存,那么就需要 32 条地址总线,因为 2 32 = 4G 。知道了线路位宽的意义后,我们再来看看 CPU 位宽。CPU 的位宽最好不要于线路位宽,

13、如 32 位 CPU 控制 40 位宽的地址总线和数据总线的话,作起来 就会常复杂且麻烦,所以 32 位的 CPU 最好和 32 位宽的线路搭配,因为 32 位 CPU 次最多只能操作 32 位宽的地址总线和数据总线。如果 32 位 CPU 去加和两个 64 位的数字,就需要把这 2 个 64 位的数字分成 2 个低位 32 位数字和 2 个位 32 位数字来计算,先加个两个低位的 32 位数字,算出进位,然后加和两个位的 32 位数字, 最后再加上进位,就能算出结果了,可以发现 32 位 CPU 并不能次性计算出加和两个 64 位数字的结 果。对于 64 位 CPU 就可以次性算出加和两个

14、64 位数字的结果,因为 64 位 CPU 可以次读 64 位的数 字,并且 64 位 CPU 内部的逻辑运算单元也持 64 位数字的计算。但是并不代表 64 位 CPU 性能 32 位 CPU 很多,很少应需要算超过 32 位的数字,所以如果计算的如果计算的数额不超过数额不超过 32 位数字的情况位数字的情况下下, 32 位和位和 64 位位 CPU 之间没什么区别的之间没什么区别的,只有当计算超过只有当计算超过 32 位数字的情位数字的情况下,况下, 64 位的优势才能体现出来位的优势才能体现出来。另外, 32 位 CPU 最只能操作 4GB 内存,就算你装了 8 GB 内存条,也没。 6

15、4 位 CPU 寻址范围 则很,理论最的寻址空间为 264 。在前,我们知道了程序在图灵机的执过程,接下来我们来看看程序在冯诺依曼模型上是怎么执的。程序实际上是条条指令,所以程序的运过程就是把每条指令步步的执起来,负责执指令 的就是 CPU 了。程序执的基本过程CPU 的位宽决定,如 32 位的 CPU,指令是 4 个字节,需要 4 个内存地址存放,因此程序计数 器的值会增 4;简单总结下就是,个程序执的时候, CPU 会根据程序计数器的内存地址,从内存把需要执 的指令读取到指令寄存器执,然后根据指令度增,开始顺序读取下条指令。CPU 从程序计数器读取指令、到执、再到下条指令,这个过程会不断循

16、环,直到程序执结束,这个不断循环的过程被称为 CPU 的指令周的指令周期期。那 CPU 执程序的过程如下:第步, CPU 读取程序计数器的值,这个值是指令的内存地址,然后 CPU 的控制单元操作地址总线指定需要访问的内存地址,接着通知内存设备准备数据,数据准备好后通过数据总 线将指令数据传给 CPU, CPU 收到内存传来的数据后,将这个指令数据存到指令寄存器。第步, CPU 分析指令寄存器中的指令,确定指令的类型和参数,如果是计算类型的指令,就把 指令交给逻辑运算单元运算;如果是存储类型的指令,则交由控制单元执;第三步, CPU 执完指令后,程序计数器的值增,表示指向下条指令。这个增的,由a = 1 + 2 执具体过程知道了基本的程序执过程后,接下来 a = 1 + 2 的作为例,进步分析该程序在冯诺伊曼模型的执 过程。CPU 是不认识 a = 1 + 2 这个字符串,这些字符串只是便我们程序员认识,要想这段程序能跑起来, 还需要把整个程序翻译成汇编语汇编语的程序,这个过程称为编译成汇编代码。针对汇编代码,我们还需要汇编器翻译成机器码,这些机器码由 0 和 1 组成的机器语,这条条机

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 数据挖掘与识别

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号