计算机组成原理——概述篇

计算机发展历史

电子管计算机(1946 年——1958 年)

第一台计算机为ENIAC 诞生于美国宾夕法尼亚大学

特点:

  1. 集成度小,空间占用大

  2. 功耗高,运行速度慢

  3. 操作复杂,更换程序需要接线

晶体管计算机(1958 年——1964 年)

TX-0 ,麻省理工学院

PDP-1

特点:

  1. 集成度相对较高,空间占用相对小

  2. 功耗相对较低,运行速度更快

  3. 操作相对简单,交互更加方便

贝尔实验室发明晶体管

集成电路计算机(1964 年——1970 年)

7094 计算机

1401 计算机

此时出现操作系统IBM 的System/360

特点:

  1. 计算机变得更小

  2. 功耗更快

  3. 计算速度更快

  4. 计算机具备进入千家万户的条件

超大规模集成电路计算机(1970 年——至今)

代表人物乔布斯发明apple 和apple 二代

特点:

  1. 一个芯片集成了上百万的晶体

  2. 管速度更快,体积更小,价格更低,更能被大众接受用途丰富

  3. 文本处理、表格处理、高交互的游戏与应用

计算机分类

超级计算机

特点:

  1. 功能最强,运算速度最快,存储容量最大的计算机

  2. 多用于国家高科技领域和简短技术研究

  3. 标记他们运算速度的单位是TFlop/s

大型计算机

特点:

  1. 大型机,大型主机,主机

  2. 既具有高性能,可处理大量数据与复杂的运算

  3. 在大型机市场领域,IBM 占据着很大的份额

迷你计算机

特点:

  1. 也称小型机,普通服务器

  2. 不需要特殊的空调场所

  3. 具备不错的算力,可以完成较复杂的运算

l 普通服务器已经取代了传统的大型机,成为大规模企业计算的中枢

工作站

  1. 高端的通用型计算机,提供比个人计算机更强大的性能

  2. 类似于普通的台式电脑,提及较大,但性能较强

微型计算机(最常用

特点:

  1. 又称个人计算机,是最普通的一类计算机

  2. 麻雀虽小,五脏俱全

  3. 个人计算与前面的分类无异

冯诺伊曼计算机体系

定义:将程序指令和数据一起存储的计算机设计概念结构。

历程:早起计算机固定用途程序 => 改变程序结构重新设计电路=>程序不同同时进行=>把程序指令存储变设计通用电路

组成:输入设备,存储器,运算器,控制器,输出设备

功能

  1. 能够把需要的程序和数据送至计算机中(输入设备实现

  2. 能够长期记忆程序、数据、中间结果及最终运算结果的能力(存储器

  3. 能够具备算术、逻辑运算和数据传输等数据加工处理的能力(控制器、运算器

  4. 能够按照要求将处理结果输出给用户(输出设备

输入=> 运算器+存储器+控制器=>输出CPU = 运算器+控制器

冯诺伊曼瓶颈:cpu 和 存储器分开,容易导致cpu 空转,长时间等待接受数据

计算机组成原理——概述篇

现代计算机的结构(解决冯诺伊曼瓶颈问题):

在冯诺伊曼体系机构的基础上修改解决cpu 与存储器之间的性能差异问题已存储器为核心CPU = 运算器+控制器+存储器(磁带、硬盘、内存、cpu 寄存器)

计算机组成原理——概述篇

计算机层次与编程语言

程序翻译与程序解析

设:较为高级的计算机语言 L1 ,较为低级的计算机语言L0 。

进行语言之间的转换: 程序翻译:使用高级语言L1 进行程序描述,生成一个逻辑等价的由低级语言L0 组成的程序,L0 是计算机实际执行的语言,从L1 生成L0 的过程,称为程序翻译,生成的东西即为编译器。 程序解析:使用高级语言L1 进行逻辑描述,为执行L1 需要使用L0 语言实现另外一个程序,该程序将L1 程序作为输入,每一个L1 中的程序在L0 中进行等价的逻辑转换执行,叫做程序解析,通过L0 实现的另外一个程序叫做解释器

翻译型语言:C/C++、Object-c 、Golang

解析型语言:Python 、php 、JavaScript 、lua

翻译 +解析语言:JAVA 、C#、kotlin

计算机层次

  1. 应用层

  2. 高级语言层

  3. 汇编层

  4. 操作系统层

  5. 传统机器层

  6. 微程序机器层

  7. 硬件逻辑层

硬件逻辑层

门、触发器等逻辑电路组成,属于电子工程领域

微程序机器层

编程语言是微指令集

微指令所组成的微程序直接交由硬件执行

传统机器层

编程语言是CPU 指令集(机器指令)

编程语言和硬件直接相关

不同架构的cpu 使用不同的cpu 指令集

微指令<微程序=机器指令

  • 一条机器指令对应一个微程序
  • 一个微程序对应一组微指令

操作系统层

向上提供了建议的操作界面

向下对接了指令系统,硬件管理资源

操作系统是在软件和硬件之间的适配层

汇编语言层

汇编语言可以翻译成直接执行的机器语言

完成翻译的过程的程序叫做汇编器

高级语言层高级语言为广大程序员所接受的高级语言

高级语言非常多,有几百种,常见的有C/C++,JAVA ,Python ,Golang ,Object-c

应用层:满足计算机针对某种用途而专门设计。word 、excel 、point 等等

计算机的计算单位

容量单位

在物理层面,高低电平纪录信息理论上只认识0/1 两种状态0/1 能够表示的内容太少了,需要更大的容量表示,0/1 称之为bit (比特位)字节:1Byte=8bits

计算机组成原理——概述篇

1024=2^10

问题

计算机组成原理——概述篇

网络速度

计算机组成原理——概述篇

网络常用单位Mbps100m/s = 100mbps = 100mbit/s100mbit/s = (100/8)mb/s = 12.5mb/s

这里 M 只是数量单位,Million 的意思,Mbps 指的是Million bit per second ,即每秒钟多少Million bit ,而8bits = 1Byte

CPU (中央处理器)速度

CPU 的速度一般体现位CPU 的时钟频率

CPU 的时钟频率的单位一般是赫兹

主流CPU 的时钟频率都在2gHz 以上

Hz 其实就是秒分之一(它是每秒中的周期性变动重复次数的计量)

并不是描述计算机领域所专有的单位

计算机组成原理——概述篇

计算机字符与编码集

字符编码集

ASCII 码:7bits

使用7 个bits 就可以完成表示ASCII 码

包含95 个可打印字符

33 个不可打印字符

不足

很多应该或者国家中的符号都无法表示

数学符号:+ – ×÷

计算机组成原理——概述篇

extendedASCII 码:8bits 常见数学运算符

带音标的欧洲字符其他常用符、表格符等

计算机组成原理——概述篇

中文编码集

GB2312:7000 多字符

《信息交换汉字字符集》 中国第一个编码集

收录7445 个字符

6763 个汉字和682 个其它符号 GBK:20000 多字符

《汉字内码扩展规范》向下兼容GB2312 ,向上支持国际ISO 标准21003 个汉字,支持中日韩汉字

Unicode:全世界字符,使用UTF-x 编码

Unicode 是统一的编码标准,而UTF-8 ,是实现Unicode 标准的一种编码方式。通用UTF-8 编码;Windows 系统默认使用GBK 进行编码

Original: https://www.cnblogs.com/ZhouKali/p/16160528.html
Author: Zh0uKal1
Title: 计算机组成原理——概述篇

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/622184/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • SQL优化这5个极简法则,直接让查询原地起飞!

    SQL 作为关系型数据库的标准语言,是 IT 从业人员必不可少的技能之一。SQL 本身并不难学,编写查询语句也很容易,但是想要编写出能够高效运行的查询语句却有一定的难度。 查询优化…

    数据库 2023年5月24日
    082
  • 【StoneDB研发日志】列式存储 delete方案调研

    MySQL删除数据的方式 以MySQL 5.7为例,数据库删除数据的方式一共有以下三种: delete truncate drop 三种方式都可以删除数据,但使用场景有所不同。 […

    数据库 2023年5月24日
    097
  • 工作中常用Less知识点实践总结

    工作中常用Less知识点实践总结,帮助你更好的使用Less 我所理解的Less的一些好处 函数式编程css 自定义变量用于整体主题调整 嵌套语法简化开发复杂度 mixin的写法 ….

    数据库 2023年6月11日
    088
  • Harbor部署

    harbor 无论是使用Docker-distribution去自建仓库,还是通过官方镜像跑容器的方式去自建仓库,通过前面的演示我们可以发现其是非常的简陋的,还不如直接使用官方的D…

    数据库 2023年6月14日
    093
  • 3. 视图-触发器-存储过程-索引

    404. 抱歉,您访问的资源不存在。 可能是URL不正确,或者对应的内容已经被删除,或者处于隐私状态。 [En] It may be that the URL is incorre…

    数据库 2023年5月24日
    087
  • Vim使用技巧(持续更新)

    好记性不如烂笔头,在这里记录一些Vim使用技巧 vim配置 "拷贝同步&#…

    数据库 2023年6月14日
    087
  • Component name “Login“ should always be multi-word

    在运行vue项目的时候,看到此提示 这是因为没有关闭elint提示的错误,在vue.config.js下添加代码 lintOnSave: false Original: https…

    数据库 2023年6月11日
    084
  • Mysql_视图

    视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由…

    数据库 2023年6月11日
    093
  • python实现Mysql数据库批量新增数据

    一、批量插入数据的场景 二、插入数据的工具选择 三、选择Python进行批量插入 Python实现批量插入Mysql数据库数据 一、批量插入数据的场景 在进行数据压力时需要进行大数…

    数据库 2023年6月6日
    0107
  • mysql进阶

    mysql进阶 1.下载二进制格式的mysql软件包 [root@mr ~]# wget https://downloads.mysql.com/archives/get/p/23…

    数据库 2023年5月24日
    0132
  • Linux的一些的常用命令

    小杰笔记: 记录一下Linux的一些常见命令: 1:Linux关机与重启的命令: 2:切换目录与查看目录的文件: 3:文件目录的创建与删除: 4:文件的复制 删除与移动: 5:如何…

    数据库 2023年6月6日
    075
  • JavaWeb核心篇(2)——Request和Response

    JavaWeb核心篇(2)——Request和Response 上篇文章中提及到了Servlet,在Servlet中我们主要继承了HTTPServlet类,在HTTPServlet…

    数据库 2023年6月14日
    0107
  • SQL与数据库编程学习笔记-day1

    一:理论知识参考 学习网站参考: 数据库主要分为两类: 1.关系型数据库:关系型数据库采用表格的储存方式,数据以行和列的方式进行存储,要读取和查询都十分方便,例如常见的:Oracl…

    数据库 2023年6月9日
    090
  • 在RAC上部署OGG并配置OGG高可用

    简介 由于业务系统要与大数据平台进行对接,需要将Oracle DB的数据同步到异构数据库上,故选用也不得不用上了Goldengate方案然鹅,OGG在RAC上的HA配置一直众说纷纭…

    数据库 2023年6月16日
    094
  • Jmeter环境变量配置你不得不知道的事情

    在安装Jmeter的过程中大家肯定需要配置环境,但是为什么要配置JDK的环境变量呢?大家有没有好奇过,有没有仔细去像一下呢,其实在安装Jmeter前,大家应该都知道Jmeter是我…

    数据库 2023年6月6日
    086
  • Kafdrop

    Kafdrop 是一个用于查看 Kafka 主题和浏览消费者组的 Web UI docker run -d –rm -p 9000:9000 \ -e KAFKA_BROKERC…

    数据库 2023年6月14日
    0130
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球