深入理解计算机组成原理:概论篇
-
计算机的发展简史
- 计算机发展的四个阶段
- 微型计算机的发展历史
- 计算机的分类
-
计算机的体系结构
- 冯诺依曼体系:
- 现代计算机的结构
-
计算机的层次与编程语言
- 程序翻译与程序解释
- 计算机的层次与编程语言
-
计算机的计算单位
- 容量单位
- 速度单位
-
计算机的字符与编码集
- 字符编码集的国际化
- 中文编码集
- 中文编码集
计算机的发展简史
计算机发展的四个阶段
-
第一阶段:电子管计算机
-
第二阶段:晶体管计算机
-
第三阶段:集成电路计算机
-
第四阶段:超大规模集成电路计算机
-
第五阶段(未来的计算机):
-
- 生物计算机
- 量子计算机
微型计算机的发展历史
摩尔定律: 集成电路的性能,每18~24个月就会提升一倍
计算机的分类
超级计算机
-
功能最强、运算速度最快、存储容量最大的计算机
-
多用于国家高科技领域和尖端技术研究
大型计算机
-
又称大型机、大型主机、主机等
-
具有高性能,可处理大量数据与复杂的运算
-
在大型机市场领域,IBM占据着很大的份额
迷你计算机(服务器)
-
也称为小型机,普通服务器
-
不需要特殊的空调场所
-
具备不错的算力,可以完成较复杂的运算
大型机=>普通服务器
普通服务器已经代替了传统的大型机,成为大规模企业计算的中枢。
工作站
- 高端的通用微型计算机,提供比个人计算机更强大的性能
- 类似于普通台式电脑,体积较大,但性能强劲。
微型计算机(个人计算机,最普通的一类计算机)
- 从构成的本质上来讲,个人计算机与前面的分类无异
计算机的体系结构
- 冯诺依曼体系
- 现代计算机的结构
冯诺依曼体系:
将程序指令和数据一起存储的计算机设计概念结构
冯诺依曼体系:
-
- 必须有一个存储器
-
- 必须有一个控制器
-
- 必须有一个运算器
冯诺依曼体系:
-
- 必须有输入设备
- 必须有输出设备
现代计算机都是冯诺依曼机
CPU和存储器速率之间的问题无法调和
现代计算机的结构
- 现代计算机在冯诺依曼体系结构基础上进行修改
- 解决CPU与存储设备之间的性能差异问题
计算机的层次与编程语言
- 程序翻译与程序解释
- 计算机的层次与编程语言
程序翻译与程序解释
-
计算机执行的指令都是L0
-
翻译过程生成新的L0程序,解释过程不生成新的L0程序
-
解释过程由L0编写的解释器去解释L1程序
计算机的层次与编程语言
-
- 硬件逻辑层
-
-
- 门、触发器等逻辑电路组成
- 属于电子工程的领域
-
-
- 微程序机器层
-
-
- 编程语言是微指令集
- 微指令所组成的微程序直接交由硬件执行
-
-
- 传统机器层
-
-
- 编程语言是CPU指令集(机器指令)
- 编程语言和硬件是直接相关
-
-
-
- 不同架构的CPU使用不同的CPU指令集
-
-
- 操作系统层
-
-
- 向上提供了简易的操作界面
- 向下对接了指令系统,管理硬件资源
-
-
-
- 操作系统层是在软件和硬件之间的适配层
-
-
- 汇编语言层
-
-
- 编程语言是汇编语言
- 汇编语言可以翻译称可直接执行的机器语言
-
-
-
- 完成翻译的过程就是汇编器
-
-
- 高级语言层
-
-
- 编程语言为广大程序员所接受的高级语言
- 高级语言的类别非常多,有几百种
-
-
-
- 常见的高级语言有:Python、JAVA、C/c++,Golang等
-
-
- 应用层
-
-
- 满足计算机针对某种用途而专门设计
-
计算机的计算单位
-
容量单位
-
- M
- G
-
- T
-
速度单位
容量单位
-
在物理层面上,高低点平记录信息
-
理论上只认识0/1两种状态
-
0/1能够表示的内容太少了,需要更大的容量表示方法
-
0/1 称为Bit(比特位)
这是因为进制的不同所决定的,平常商家所说的容量并不是以1024为进制的
速度单位
- 网络速度
- CPU频率
网络速度
为什么电信拉的100M光纤,测试峰值速度只有12M每秒?
网络常用单位为(Mbps)
100M/s = 100Mbps = 100Mbit/s (此处一Bit等于8位,所以真正的网速要除以8)
100Mbit/s = (100/8)MB/S = 12.5 Mb/S
CPU速度
-
CPU的速度一般体现为CPU的时钟频率
-
CPU的时钟频率的单位一般是赫兹(HZ)
-
主流CPU的时钟频率都在2GHz以上
-
Hz其实就是秒分之一
-
并不是描述计算机领域所专有的单位
它是每秒钟的周期性变动重复次数的计量
每秒钟高低电频变换的次数
计算机的字符与编码集
- 字符编码集的历史
- 中文编码集
字符编码集的历史
-
ASCII码
-
Extender ASCII码
-
字符编码集的国际化
ASCII码
-
使用7个比特位就可以为完全表示ASCII码
-
包含95个可打印字符
-
33个不可打印字符(包括控制字符)
33+95 =128 = 2的7次方
小写字母a-z 33个控制字符,其他都是我们编程可见的字符
在计算机发展的早期,由于主要是英国和美国进行计算机的研究,所以ASCII码已经满足了人们使用的需求。但是随着发展,很多应用或者国家的符号都无法表示。
数学符号“”
第一次对ASCII码进行扩充,7bits => 8bits
字符编码集的国际化
-
欧洲、中亚、东亚、拉丁美洲国家语言的多样性
-
语言体系不一样,不以有限字符组合的语言
-
中国、韩国、日本等的语言最为复杂
中文编码集
中文编码集
上一篇: 轻松实现网络覆盖:锐捷无线上网部署指南
下一篇: 搞定工作难题!锐捷睿易实用工具全解析
推荐阅读
-
深入理解计算机组成原理:概论篇
-
理解计算机组成原理:探索GPU图形处理器的作用
-
第六篇:深入理解浏览器工作原理 - 网络部分详解
-
搞定408计算机组成原理高分秘诀:深入解析指令系统与大题结构(上篇)
-
深入理解408计算机组成原理:聚焦*处理器与大题解构实战(上篇)
-
实战讲解8051单片机:第二章输出口运用实例教程 ——理解MCS-51内存架构的入门篇 2-1 深入了解MCS-51的存储器工作原理
-
【2022新手指南】Java编程进阶之路 - 六、技术架构篇 ### MySQL索引底层解析与优化实战 - 你会讲解MySQL索引的数据结构吗?性能调优技巧知多少? - Redis深度揭秘:你知道多少?从基础到哨兵、主从复制全梳理 - Redis持久化及哨兵模式详解,还有集群搭建和Leader选举黑箱打开 - Zookeeper是个啥?特性和应用场景大公开 - ZooKeeper集群搭建攻略及 Leader选举、读写一致性、共享锁实现细节 - 探究ZooKeeper中的Leader选举机制及其在分布式环境中的作用 - Zab协议深入剖析:原理、功能与在Zookeeper中的核心地位 - RabbitMQ全方位解读:工作模式、消费限流、可靠投递与配置策略 - 设计者视角:RabbitMQ过期时间、死信队列与延时队列实践指南 - RocketMQ特性和应用场景揭示:理解其精髓与差异化优势 - Kafka详细介绍:特性及广泛应用于实时数据处理的场景解析 - ElasticSearch实力揭秘:特性概述与作为搜索引擎的广泛应用 - MongoDB认知升级:非关系型数据库的优势阐述,安装与使用实战教学 - BIO/NIO/AIO网络模型对比:掌握它们的区别与在网络编程中的实际应用 - Netty带你飞:理解其超快速度背后的秘密,包括线程模型分析 - 网络通信黑科技:Netty编解码原理与常用编解码器的应用,Protostuff实战演示 - 解密Netty粘包与拆包现象,怎样有效应对这一常见问题 - 自定义Netty心跳检测机制,轻松调整检测间隔时间的艺术 - Dubbo轻骑兵介绍:核心特性概览,服务降级实战与其实现益处 - Dubbo三大神器解读:本地存根与本地伪装的实战运用与优势呈现 ----------------------- 七、结语与回顾
-
计算机组成原理深入学习笔记:第 33 讲
-
计算机组成原理深入学习笔记:第 32 讲
-
计算机组成原理 - 原理篇 处理器(下)