计算机历史
早期的计算器 -> 机械计算器 -> 电子管计算机 -> 晶体管计算机 -> 集成电路计算机
早期的计算器
算盘
算筹:十进制计数法
纳皮尔算筹:计算乘除
计算尺:提出对数概念,化幂运算为乘除,化乘除为加减
机械计算器
契克卡德计算钟:能算六位数
帕斯卡计算器:能自动处理计算
莱布尼兹步进计算器:第一台具有完整四则运算的计算机
查尔斯·巴贝奇:现代计算机鼻祖,差分机(1822年,缺少零件,没做出来)、分析机(1833年,组成结构和现代计算机类似,也可以分为五大组成部件)
现代计算机
图灵机(1936)
图灵将人类用纸和笔进行数学运算过程进行抽象,提出的一种计算模型-图灵机
图灵机组成:
1、一条无限长的纸带,上面有格子,格子里有字符(内存)
2、读写头,可以读出当前格子的字符,并且能改变它(cpu控制单元)
3、一套规则表,用来更新状态(cpu计算单元)
4、状态寄存器,用来保存当前所处状态(cpu寄存器)
冯若依曼式计算机(1945)
冯若依曼在思考EDVAC项目时,根据图灵机的思想,完成了影响计算机历史走向的《EDVAC报告书的第一份草案》。为现代计算机指明了道路。
1、机器内部使用二进制表示数据。
2、像存储数据一样存储程序。
3、计算机由输入模块、输出模块、存储器、控制器、计算器,5大模块组成。
EDVAC(1950)
第一台现代电子计算机,采用**电子管**作为基本电子元器件,体积大、耗电量大、寿命短、可靠性低 、成本高;存储器采用水银延迟线。
第二代电子计算机(50年代)
50年代后期,随着晶体管技术的成熟,各个计算机制造公司淘汰了电子管,开始生产晶体管计算机
第三代电子计算机(1964)
中小规模集成电路计算机
1964年,IBM研制出了大型集成电路通用计算机。集成电路的基本单元就是晶体管,使计算机的体积和功耗进一步减小,可靠性和运算速度进一步提高。
第三代电子计算机(1971-至今)
大规模集成电路计算机
计算机基本硬件组成
(1)cpu:相当于人的大脑,负责从程序中获得指令并且执行。
(2)内存:程序和cpu沟通的桥梁,计算机中所有程序的运行都是在内存中。
(3)主板:主板上集成了各种电子元件、插槽和接口,为cpu、内存和各种功能卡(网卡、声卡)提供了按照插槽。
北桥芯片:负责与CPU的联系并控制内存,是主板上离CPU最近的芯片。现在很多处理器上北桥芯片已经内置化了。北桥的总线称为系统总线。
南桥芯片:负责IO设备接口的控制。南桥的总线称为IO总线。
(4)IO设备:和外界交流的输入输出设备。
(5)显卡:图形处理器。
冯若依曼和哈佛
冯若依曼结构
哈佛结构
冯若依曼结构和哈佛结构的主要区别在于是否区分指令和数据。现在的计算机,在内存里,指令和数据是放在一起的,在cpu内部会区分指令缓存和数据缓存,最终执行的时候,指令和数据是从两个不同地方出来的。因此在cpu外部,采用的是冯若依曼结构,cpu内部采用的是哈佛结构。
冯若依曼结构的优点是结构简单,缺点是相对效率较低。哈佛结构的优点是效率高,缺点是结构设计复杂。
cpu指令如何执行
java程序的运行流程
1、编写java代码,在.java文件中,此时是人类可读的代码。
2、javac编译.java文件变成class字节码文件(二进制)。
3、将class文件读到内存中(内存)。
3、jvm虚拟机解释编译,操作系统调用cpu执行指令(cpu)。
cpu的组成
控制单元:从内存中提取指令并解码执行。
算术逻辑单元(ALU):处理算数和逻辑运算。
从功能来看:cpu的内部由寄存器、控制器、运算器和时钟四部分组成。
寄存器:暂存指令、数据、地址,一个cpu中会有许多寄存器
控制器:将内存中的指令、数据读入寄存器,并根据指令的结果控制计算机。
运算器:负责运算。
时钟:负责发出cpu开始计时时的时钟信号。
cpu相关的系统总线
cpu和内存来回传数据,主要涉及两类总线,一个是地址总线,一个是数据总线
地址总线的位数,决定了cpu能访问地址有多广。
数据总线的位数,决定了cpu一次能拿多少个数。
cpu指令执行过程
冯若依曼计算机的cpu,工作可以分5个阶段,(1)取指令(2)指令译码(3)执行指令(4)获取数据(5)结果写回
/、官网资料
https://www.yuque.com/books/share/227872c0-1f19-4c83-960e-5e13e39343c8