`
songgz
  • 浏览: 40830 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

编程启源 第二章 如厕真传

阅读更多
  古人云:“真传一句话,假传万卷书”。万有引力复杂不,只不过是一个苹果落地那么简单。拿最复杂的CPU来说吧,也只不过如同一座厕所而已。果真如此吗?计算机难学的原因在这里啊,太恶心了!出家人不打狂语,这是真的,有可能图灵大师就是在如厕时想出来的。

  例如:一座厕所里,有一个排队机,一个便池、一个洗手盆、一个烘手器。一个人如所的流程:首先是排号、其次是解手、再次是洗手、最后是烘手,如厕完毕,等待下一个人。这就如同执行一条CPU指令。即一个时钟周期。如厕的人就是CPU要处理的数据。厕所就是CPU,便池相当于ALU。最原始的CPU大体也就是这么个样子,基于顺序操作的。虽然能工作但是很慢,不太实用。因为一个时钟周期只能执行一条CPU指令,并且需要执行四步,排号、解手、洗手、烘手,所以时钟周期要足够长才可以,以保证这四步的执行。

  基于顺序设计的CPU,并没有发挥这座厕所的最大性能。一个更好的设计是在顺序设计的基础上,设计一个按流水线执行的CPU。既然是按顺,那顺序是不能变的,就是一个一个指令地执行。那要想使执行指令的时间减少(时钟周期),就要用到计算机中,亘古不变的真理:“以空间换时间”。我们把顺序执行的四步,看做一条流水线,按这个标准再增加三条流水线,总共四条,这样我们能同时执行四条指令,效率增加了四倍。等等,那顺序怎么办,好办,共用一台排队机就可以了。每一步的执行时间就是一个时钟周期了,代价就是增加了一些设施(空间)。这是一个多么精巧的设计啊!关于厕所文化,还没有完,它会始终与你同在。

  这是一个简单又形像的比喻,虽然任何修辞都会严重遮蔽科学那神圣的光环,但是足以作为一个模型,帮助我们分析解决编程可能遇到的问题,也足以说明“法于时空,和于数理”对编程的重要性。



分享到:
评论

相关推荐

    启源病历书写系统v6.8共享版

    启源病历书写系统是基于易语言编写的,编写她的初衷是为了将临床一线的医疗工作者从繁重的医疗文书中解脱出来,所以本软件特色为使用简单,书写快速。 本软件仿WORD界面书写,仿病历纸张页面 ,一般信息自动生成,...

    蛮牛启源课程资料 (服务端)

    ### 蛮牛启源课程资料 (服务端)——环境配置知识点详解 #### 一、MySQL 安装与配置 1. **安装过程** - 选择**Custom**模式进行安装,这样可以自定义安装路径。 - 点击**Next**后,选择**Install**开始安装过程。...

    启源装备:首次公开发行股票并在创业板上市招股说明书.PDF

    启源装备:首次公开发行股票并在创业板上市招股说明书.PDF

    启源篮球俱乐部章程.doc

    启源篮球俱乐部章程.doc

    启源+深蓝有望复制王朝+海洋的成功.pdf

    二、 盈利预测与投资建议 根据最新情况,长安汽车2023年至2025年的净利润预测分别调整为92.8亿/61.5亿/89.3亿。虽然盈利预测略有调整,但考虑到公司在新能源汽车领域的战略布局,其增长潜力不容忽视。随着新能源车...

    ,结构与工艺启源资料.ppt

    ,结构与工艺启源资料.ppt

    芯启源与新华三就高端网络路由器展开全面深度合作.pdf

    芯启源与新华三在高端网络路由器领域的全面深度合作标志着两家公司在信息技术行业的强强联合,旨在推动路由器技术的创新与发展,提升中国在全球网络设备市场的竞争力。此次合作将聚焦于路由器的设计、研发、生产和...

    启源横剪线安全操作规程.docx

    1. **人身与设备安全第一**:在操作过程中,始终将人身安全和设备安全放在首位。 2. **专注与监护**:操作时必须保持高度集中,操作台旁需有人随时监控,以便及时处理突发状况。 3. **故障记录与及时维修**: - ...

    ,结构与工艺启源精选.ppt

    《结构与工艺启源精选.ppt》主要涵盖了纤维缠绕胶管的基本结构、特性以及生产工艺参数,特别是关于钢丝缠绕胶管的成型过程。以下是对这些知识点的详细阐述: 1. **纤维缠绕胶管的基本结构**: 纤维缠绕胶管是一种...

    启源金融终端专业版 短线高手(主力版)

    启源金融终端(专业版) 功能介绍 1.沪深合一LEVEl2行情 level2提供沪深十档行情,速度比传统行情速度要更快;买一,卖一的明细在买卖队列上进行揭示,买一卖一挂单是由散户单构成的,还是由主力大单构成的,将会...

    启源SH十挡level2专业版

    已经解除了试用限制,每天先初始化一遍,在登录

    DDR3基础与进阶

    本文是作者在华为工作期间写...第二章 DDR硬件设计 第三章 DDR3几个关键技术 第四章DDR3工作流程、参数详解 第五章 DDR3训练 第六章 DDR3信号完整性测试 第七章 DDR3问题案例 第八章 SDRAM、DDR、DDR2、DDR3、DDR4对比

    win7下移动U盘偷偷拷贝到指定目录 实现写计划任务 开机自启源代码

    本文将深入探讨如何使用VC++编程语言,结合MFC库来实现这一功能,并且会提及如何利用DOS命令来辅助执行相关操作。 首先,我们需要了解MFC。MFC是微软为Windows平台提供的C++类库,它封装了Windows API,使得开发者...

    网易大数据-实战大作业:网站分析大数据框架调度-火影启源1

    【大数据调度框架实战详解】 本实验主要围绕大数据处理的核心组件,包括Flume、MapReduce (MR)、Hive、Sqoop以及自定义UDF(用户定义函数)的应用,旨在构建一个完整的大数据处理流程,从数据采集、清洗、分析到...

    启发式算法,启发式算法有哪些,matlab

    启发式算法是一种优化技术,它基于经验和直觉来解决问题,特别是在面对复杂问题和大量可能性时。这类算法通常不保证找到全局最优解,但能够高效地寻找接近最优的解决方案。在IT行业中,启发式算法广泛应用于搜索、...

    CPLD&Verilog;基础教程

    该开发板及配套教程是本人在华为工作期间设计的,... 说到 CPLD 就得提一下 FPGA,FPGA 是比 CPLD 更高级的可编程逻辑器件, 但很多基础内容是相通的,包括编程语言都是一样的,所以也可以将 CPLD 当成入 门级的 FPGA。

    ASP.Net网站开发项目化教程(配套源码).zip

    - **类与对象**:理解面向对象编程的基础,包括类的定义、对象创建和继承。 - **LINQ(Language Integrated Query)**:学习在C#中使用LINQ进行数据查询,简化数据库操作。 - **异步编程**:掌握async/await...

    PDF转换器完全破解版

    可以很快速的把PDF在word 位图 GIF之间相互转换,质量很高,速度很快,内服破解补丁,解压补丁覆盖安装目录内同名文件即可使用。

    黑默cs1.6工具箱.exe

    CS启源工具箱

    金融行业研究方法-投行案例学习(94):委托加工模式解决之道.pdf

    该模式下,企业在产品生产的某些环节中选择将零部件的加工任务外包给第三方,以此来优化资源配置、降低成本并提高效率。 #### 外协加工风险与应对措施 1. **风险分析**:启源装备作为一家专注于变压器专用设备的...

Global site tag (gtag.js) - Google Analytics