不懂CPU工作原理又如何 ---CSDN

  近日,一位i而来自BBC的软件工程师Daniel Harper 从浅入深,分享了以代码的方式来实现CPU所有功能的可行性,希望对大家了解计算机的内容原理有所帮助。

以下为译文:

  几个月前,我突然意识到自己并补真正理解计算机内部的工作原理。我仍然不明白现代计算机具体是怎么工作的。

然而,我读了J.Clark Scott 撰写的一本叫<<But  How Do It Know?>>  的书,书中描述了一个简单8位计算机,从与非门(NAND gate)  到寄存器、RAM、CPU、ALU和I/O的细节。

此书使我产生了在代码中实现一个CPU的渴望。

  我不知道 L1/L2 cache 是什么,我不知道流水线是什么,我不完全确定我理解Meltdown 和 spectre 漏洞文件。有人告诉我他们正在优化代码以好好利用CPU cache的时候,我也

不太确定X86指令的含义是什么。我不明白人们如何利用GPU或TPU工作。我甚至不知道TPU是个什么东西。我也不知道如何使用SIMD指令。

  但所有这些都使建立在你需要的知识基础之上,所以如果只是先看看地图,我就没法最终达到目的地。这意味着要回归基础并从简单的东西开始动手实操。书中描述的“科斯特计算机”很简单。这就是我选择它的原因。

原文地址:https://www.cnblogs.com/yunliu0603/p/10993664.html

时间: 2024-10-15 04:44:16

不懂CPU工作原理又如何 ---CSDN的相关文章

计算机原理学习(1)-- 冯诺依曼体系和CPU工作原理

前言 对于我们80后来说,最早接触计算机应该是在95年左右,那个时候最流行的一个词语是多媒体. 依旧记得当时在同学家看同学输入几个DOS命令就成功的打开了一个游戏,当时实在是佩服的五体投地.因为对我来说,屏幕上的东西简直就是天书.有了计算机我们生活发生了巨大的变化,打游戏,上网,聊天,甚至到现在以此为业.有时无不感叹计算机的强大. 人类总是聪明的而又懒惰的.即便是1+1这种简单的计算都不想自己做,1623年Wilhelm Schickard 制作了一个能进行六位以内数加减法,并能通过铃声输出答案

cpu工作原理

众所周知,CPU是电脑的“心脏”,是整个微机系统的核心,因此,它也往往成了各种档次微机的代名词,如昔日的286.386.486,奔腾.PII.K6到今天的PIII.P4.K7等.回顾CPU发展历史,CPU在制造技术上已经获得了极大的提高,主要表现在集成的电子元件越来越多,从开始集成几千个晶体管,到现在的几百万.几千万个晶体管,这么多晶体管,它们是如果处理数据的呢? ◆ CPU的原始工作模式在了解CPU工作原理之前,我们先简单谈谈CPU是如何生产出来的.CPU是在特别纯净的硅材料上制造的.一个CP

汇编语言--寄存器(cpu工作原理)

本文地址:http://www.cnblogs.com/archimedes/p/assembly-register.html,转载请注明源地址. 本文主要将介绍的是8086 CPU中的寄存器, 寄存器就是个存储信息的单元或者说是器件又或者说是容器而已,就比如内存也是一个存储介质或者说是存储单元而已,其实寄存器从理解上来说和内存差不多, 只不过寄存器(这里讨论的寄存器都是 CPU 中的寄存器,不包括外设上的寄存器)位于CPU内部,寄存器是 CPU 中的稀有资源,而对于一个汇编程序员来说,CPU

汇编学习笔记02(寄存器CPU工作原理)

1. 什么是寄存器呢? 就是可以用指令进行读写的部件. 程序员通过改变各种寄存器中的内容实现对CPU的控制. 如果是16位CPU的话, 就是相当于2个存储单元. 2. 字在寄存器中的存储? 8086CPU可以一次性处理两种尺寸的数据 Byte: 字节型数据, 一个字节由8个bit组成, 可以存在8位寄存器中. Word: 字型数据, 一个字型由16个bit组成, 也就是两个字节, 称为这个字的高位字节和低位字节. 3. 常用汇编指令的学习(需要注意的是汇编指令是不区分大小写的) mov ax,

汇编学习-第二章(CPU工作原理)

1.逻辑地址与物理地址 逻辑地址:人为假设计算机分散的内存连接一起,并分好段.上面的地址称逻辑地址. 逻辑地址 = 基地址(段地址 * 16) + 偏移地址 物理地址:存储单元在计算机中的唯一编号.CPU访问存储单元需要的地址. 2.通用寄存器 一个典型的CPU,由控制器.运算器.寄存器等组成,通过内部总线连接. 内部总线实现CPU内部期间的联系. 外部总线实现CPU与主板上其他期间联系. 8086有16个通过寄存器 AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,

appium自动化的工作原理(1)

用appium开发移动端自动化测试脚本这么长时间,还没有认证的了解下它的原理是什么,到底是如何实现的呢? 1.先看一个Appium加载的过程图解(来自:了解appium自动化的工作原理--https://blog.csdn.net/jffhy2017/article/details/69220719/) Appium的加载过程 1)调用Android adb完成基本的系统操作 2)向Android上部署bootstrap.jar 3)Bootstrap.jar Forward Android的端

CPU的内部架构和工作原理 (转,相当不错)

一直以来,总以为CPU内部真是如当年学习<计算机组成原理>时书上所介绍的那样,是各种逻辑门器件的组合.当看到纳米技术时就想,真的可以把那些器件做的那么小么?直到看了Intel CPU制作流程及AMD芯片的制作流程的介绍不禁感慨,原来科技是如此的发达. 本文我们以Intel为例对CPU的工作原理做简单介绍,仅仅是简单介绍,那么AMD,ARM,MIPS甚至PowerPC你应该会触类旁通才对. 还记得那是1968年7月18日,鲍勃-诺斯和戈登-摩尔的新公司在美国加利福尼亚州,美丽的圣弗朗西斯科湾畔芒

函数的工作原理——划分RAM搞不懂啊???

1.看到<21天学会C++>P92的函数工作原理之划分RAM,感觉还是迷迷糊糊,不太明白,进一步查询??? 2.程序启动时,操作系统(如DOS,Windows等)将依据编译器的需求设置各种内存区域. 对于一个C++程序员来说,经常需要关心的是全局名称空间.自由存储器.寄存器.代码空间和堆栈. 3.寄存器:CPU中的一个特殊存储区域,任意给定时刻指向下一行代码代码的寄存器组的寄存器被称为指令指针.指令指针的任务是跟踪接下来将执行哪一行代码. 4.代码空间:代码本身存放在代码空间中,每行代码都被转

CPU GPU设计工作原理《转》

我知道这很长,但是,我坚持看完了.希望有幸看到这文章并对图形方面有兴趣的朋友,也能坚持看完.一定大有收获.毕竟知道它们到底是怎么"私下勾搭"的.会有利于我们用程序来指挥它们....(这是我加上去的) 原文从这里开始: 要说到设计的复杂程度,那还是CPU了!这个不用讨论,很简单的道理你看看显卡芯片的更新速度和CPU的更新速度就可见一斑了.还是简单说说他们的设计原理吧. CPU: 但是,现在我要问一句:"什么是CPU?"我相信大多数人并不知道什么是CPU.当然,你可以回