计算机理论基础(1)| 青训营笔记

简介: 计算机理论基础(1)| 青训营笔记

计算机硬件


1.2 计算机基本原理


1.2.1 世界上第一台计算机


1.2.2 冯·诺依曼提出“存储控制程序”


1.2.3 计算机发展阶段(部分)


第一代电子管计算机时代,使用机器语言或者汇编语言

第二代晶体管计算机时代,出现高级程序设计语言


1.2.4 计算机系统


计算机系统由硬件系统和软件系统组成

硬件由五大部件组成:运算器 控制器 存储器 输入设备 输出设备


1.2.5 CPU


CPU即中央处理器,由运算器(ALU) 控制器(CU) 寄存器组(GPR) 组成,CPU是计算机必不可少的核心组成部件

预算期用来对数据进行各种逻辑算术或者逻辑运算,所以被称作算术逻辑部件(ALU)

运算器(ALU) 对数据进行算术运算、逻辑运算等

控制器(CU) 控制单元,取出指令并保存,解释指令的功能,由此产生控制各部件工作的信号,执行指令

使用双核(或多核)处理器的PC机中,是几个CPU?

集成在一块芯片上,物理上只有一个,逻辑上有两个(或多个),多CPU是指物理上就有多个CPU的存在

CPU主要任务执行指令


1.2.6 存储器


存储器是用于存储以二进制形式的数据和数据,分为内存器(主存)和外存储器(辅存)

内外存储器的区别

存取速度 内存要快,外存相对要慢
存储容量 内存要小,内存要大
易失性 内存断电后小时,外存断电后保持
用途 内存存放启动运行的程序和需要立即处理的数据,外村存放计算机系统中所有信息
与CPU相关 CPU从内存直接获得指令和数据进行处理,外存的程序和数据需要载入内存之后才能被CPU使用


1.2.7 输入设备


常见的输入设备:键盘,鼠标扫描仪,麦克风等


1.2.8 输出设备


常见的输出设备:显示器,打印机,绘图仪,扬声器等


1.2.9 总线


总线用于连接CPU、内存、外存和各种I/O谁被并在它们之间传输信息的一组共享的数据线及其控制电路

CPU总线(前端总线) 用于连接CPU和主存之间的总线

I/O总线 用于连接主存和I/O设备(包括外设)总线(目前使用的PCI和PCI-E)

按总线功能或者信号类型来分:地址总线(传输地址信号)、数据总线(传输数据信号)、控制总线(传输控制信号)

数据总线用来传送数据信息 地址总线是专门用来传送地址的 控制总线用来传送控制信号和时序信号

地址总线的位数决定了CPU可直接寻址的内存空间的大小,地址总线位数与存储单元个数有关

若地址总线为n位,则可以寻址空间为2^n字节

总线带宽是指单位时间内总线上可以传输最大的数据量

总线带宽(MB/s)= (总线位宽/8) * 总线工作的频率(MHz) * 每个总线周期数据传输的次数

程序(指令)和数据均以二进制编码表示,均存放在存储器中


1.2.10 指令


指令是构成程序的基本单位,程序是由一连串指令组成的

指令的组成:操作码和操作数(地址码)操作码不可少,地址码可以没有

指令的执行过程 取指令→指令译码→执行指令→保存

取指令 CPU的控制器从存储器读取一条指令并放入指令寄存器中
指令译码 指令寄存器中的指令经过译码,决定该指令应进行何种操作、操作数在哪里
执行指令 取出操作数并进行相应运算
保存 运算结果保存至寄存器,有时也会保存至内存

指令系统 CPU可执行的全部指令称为该CPU的指令系统,即它的机器语言

一般同一个公司为解决软件兼容性问题,都会选择“向下兼容”方式开发新的处理器,即所有新处理器均保留老处理器的全部指令,同时还扩充功能更强的新指令

智能手机和平板电脑使用的是ARM架构的CPU,和PC上的CPU指令系统不一样,不兼容

相关文章
|
11天前
|
安全 架构师 Java
理论实战源码齐飞!架构师社区疯传的SpringSecurity进阶小册真香
安全管理是Java应用开发中无法避免的问题,随着Spring Boot和微服务的流行,Spring Security受到越来越多Java开发者的重视,究其原因,还是沾了微服务的光。作为Spring家族中的一员,其在和Spring家族中的其他产品如SpringBoot、Spring Cloud等进行整合时,是拥有众多同类型框架无可比拟的优势的。
57 0
|
8月前
|
存储 算法 安全
2023年Java核心技术面试第五篇(篇篇万字精讲)
2023年Java核心技术面试第五篇(篇篇万字精讲)
51 0
|
8月前
|
Java
2023年Java核心技术面试第八篇(篇篇万字精讲)
2023年Java核心技术面试第八篇(篇篇万字精讲)
80 0
|
8月前
|
缓存 安全 Java
2023年Java核心技术第九篇(篇篇万字精讲)(上)
2023年Java核心技术第九篇(篇篇万字精讲)(上)
36 0
|
8月前
|
存储 安全 Java
2023年Java核心技术第九篇(篇篇万字精讲)(下)
2023年Java核心技术第九篇(篇篇万字精讲)(下)
42 0
|
8月前
|
存储 算法 安全
2023年Java核心技术第十篇(篇篇万字精讲)
2023年Java核心技术第十篇(篇篇万字精讲)
67 0
|
8月前
|
算法 安全 Java
2023年Java核心技术第十三篇(篇篇万字精讲)
2023年Java核心技术第十三篇(篇篇万字精讲)
64 1
|
11天前
|
敏捷开发 算法 测试技术
【软件设计师—基础精讲笔记5】第五章 软件工程基础
【软件设计师—基础精讲笔记5】第五章 软件工程基础
53 2
|
8月前
|
存储 算法 Java
2023年Java核心技术第十二篇(篇篇万字精讲)
2023年Java核心技术第十二篇(篇篇万字精讲)
61 1
|
11天前
|
缓存 中间件 数据库
框架| 青训营笔记
框架| 青训营笔记
32 0