计算机组成原理-概述篇

目录

计算机发展简史

网络三定律(IT界三大定律)

计算机分类

计算机的体系和结构

计算机的层次与编程语言

计算机的速度单位

计算机的字符与编码集


计算机发展简史

计算机发展的四个阶段

  • 第一个阶段:电子管计算机
  • 第二次世界大战是电子管计算机产生的催化剂,英国为了解密德国海军的密文,美国为了计算炮弹轨道
  • 特点:1.集成度小,空间占用大;2.功耗高,运行速度慢;3.操作复杂,更换程序需要接线(需要几人一起操作,无显示器)
  • 第二个阶段:晶体管计算机
  • 贝尔实验室的三个科学家发明了晶体管
  • 全世界第一台晶体管计算机是TX-0,来自MIT(麻省理工)林肯实验室;
  • 世界上第一个商用小型计算机是PDP-1;史蒂芬.罗素在PDP-1上开发出史上第一个电脑游戏-空间战争
  • 特点:1.集成度相对较高,空间占用相对小;2.功耗相对较低,运行速度较快;3.操作相对简单,交互更加方便(可一人操作,能配备显示器)
  • 第三个阶段:集成电路计算机
  • 集成电路发明者为德州仪器工程师杰克·基尔比(基于锗的集成电路)(1958年发明)和罗伯特·诺伊斯(基于硅的集成电路)(1959年发明)。它在电路中用字母IC表示
  • 这个装置揭开二十世纪信息革命的序幕,同时宣告信息化时代来临
  • System/360是IBM推出的划时代的大型电脑,这一系列是世界上首个指令集可兼容计算机。
  • 第四个阶段:超大规模集成电路计算机
  • 特点:1.一个芯片集成了上百万的晶体管2.速度更快,体积更小,价格更低,更能被大众接受3.用途丰富
  • 第五个阶段:未来计算机
  • 生物计算机
  • 特点:1.体积小,效率高;
  • 2.不易损坏,生物级别的自动修复
  • 3.不受信号干扰,无热损耗
  • 量子计算机
  • 微型计算机发展历史
  • 微型计算机一般由第三阶段开始
  • 网络三定律(IT界三大定律)

  • 1.摩尔定律2.吉尔德定律3.麦特卡夫定律
  • 摩尔定律:集成电路的性能,每18-24个月就会提示一倍(已经慢慢失效)由英特尔创始人之一戈登.摩尔提出
  • 吉尔德定律:又称胜利者浪费定律,由乔治·吉尔德提出,最为成功的商业运作模式是价格最低的资源将会被尽可能的消耗,以此来保存最昂贵的资源
  • 核心:在未来25年,主干网的带宽每6个月增长一倍,12个月增长两倍,并预言将来上网会免费
  • 麦特卡夫定律:由以太网发明人鲍勃.麦特卡夫提出,核心为:网络价值同网络用户数量的平方成正比
  • 计算机分类

  • 超级计算机
  • 标记它们运算速度的单位是TFlop/s
  • 1TFlop/s=每秒一万亿次浮点计算
  • 大型计算机
  • 又称大型机,大型主机
  • 在大型计算机市场领域,IBM占据着很大的份额
  • 在大型计算机中进行编程的语言:COBOL
  • IBM Z9:使用Linux红帽系统,是NASA最后一台大型机
  • 去IOE行动:I为IBM,提供服务器;O为Oracle,提供数据库和软件;E为EMC,提供存储设备
  • 去IOE由阿里巴巴在2008年提出,原因:1.高维护费2.不够灵活;促使了2009年阿里云的诞生
  • 迷你计算机(服务器)也称小型机
  • 去IOE行动就是把大型机替换成普通服务器
  • 普通服务器已经代替了传统的大型机,成为大规模企业计算的中枢
  • 工作站
  • 高端的通用微型计算机,提供比个人计算机更好性能;外观类似于台式机
  • 微型计算机
  • 又称个人计算机,是世界上最普通的一类计算机,分为台式机,笔记本电脑,一体机
  • 计算机的体系和结构

  • 冯诺依曼体系
  • 定义:将程序指令和数据一起存储的计算机设计概念结构
  • 早期计算机仅含固定用途程序,改变程序得更改结构,重新设计电路----->这样就非常麻烦
  • 所以冯诺依曼就产生一个方法,即把程序存储起来,并设计通用电路,也就是存储程序指令,设计通用电路。这就是冯诺依曼体系的核心
  • 由冯诺依曼体系指导的计算机有5个主件:
  • 必须有一个存储器,一个控制器,一个运算器,有输出设备和输入设备
  • 现代计算机都是冯诺依曼机
  • 冯诺依曼机
  • 1.能够把需要的程序和数据送至计算机(通过输入输出设备实现)
  • 2.能够长期记忆程序、数据、中间结果及最终运算结果的能力(通过存储器实现)
  • 3.能够具备算术,逻辑运算和数据传送等数据加工处理能力(通过运算器和控制器实现)
  • 4.能够按照要求将处理结果输出给用户
  • 将CPU和存储器分开,会造成冯诺依曼瓶颈
  • 计算机的层次与编程语言

  • 假设计算机高级语言是L1,计算机执行的指令是L0. 程序编译过程生成新的L0程序,解释过程不生成新的L0程序
  • 程序编译是L1通过编译器生成L0,再让计算机加以执行;解释过程由L0编写的解释器去解释L1程序
  • 程序编译类语言如C/C++,Object-C,Golang;程序解释类语言如Python,Php,js;
  • 既能编译又能解释的语言有Java,C#
  • 如果用程序来划分计算机系统的话,我们大致可以把它划分为7个程序分别为:
  • 硬件逻辑层,微程序机器层,传统机器层,这3个属于实际机器类;
  • 操作系统层,汇编语言层,高级语言层,应用层,这4个属于虚拟机器类,其中应用层又属于应用软件,其余3个属于系统软件
  • 硬件逻辑层主要由门,触发器等逻辑电路组成,属于电子工程领域
  • 微程序机器层,编程语言是微指令集,由微指令所组成的微程序直接交由硬件执行
  • 传统机器层,编程语言是CPU指令集(机器指令),编程语言和硬件是直接相关的,不同架构的CPU使用不同的CPU指令集
  • 一条机器指令对应一个微程序
  • 一个微程序对应一组微指令
  • 操作系统层,操作系统一方面向上提供了简易的操作界面,同时向下对接指令系统,管理硬件资源,操作系统层是在软件和硬件之间的适配层
  • 汇编语言层,编程语言是汇编语言,汇编语言可以翻译成可直接执行的机器语言,完成翻译的过程的程序就是汇编器
  • 计算机的速度单位

  • 容量单位
  • 在物理层面,用高低电平记录信息(高表1,低表0)
  • 理论上只认识0/1两种状态(0/1称为bit(比特位))
  • 字节:
  • 1Byte=8bits(其余都是1024的进制)
  • 为啥网上购买的移动硬盘500G,格式化之后就只剩465G了?
  • 这是由于硬盘商一般用10进位标记容量,用1000进位而不是1024进位
  • 速度单位
  • 网络速度
  • 为什么电信拉的100M光纤,测试峰值速度只有12M每秒?
  • 由于网络常用单位为Mbps
  • 100M/s=100Mbps=100Mbit/s
  • 100Mbit/s=(100/8)MB/s=12.5MB/s
  • CPU速度
  • CPU的速度一般体现为CPU的时钟频率
  • CPU的时钟频率的单位一般是赫兹(Hz)
  • 主流CPU的时钟频率都在2GHz以上
  • Hz其实就是秒分之一,它是每秒中的周期性变动重复次数的计量
  • 2GHz=2*1000^3Hz=每秒20亿次
  • 计算机的字符与编码集

  • 字符编码集的历史
  • ASCII码
  • 使用7个bits就可以完全表示ASCII码
  • 包含95个可打印字符
  • 33个不可打印字符(包括控制字符)
  • 33+95=128=2的7次方
  • 扩展ASCII码
  • 开始ASCII码很多应用或者国家中的符合都无法表示(其中包括数学符合÷ π等等)
  • 第一次对ASCII码进行扩充,由7bits变为8bits(256个字符)
  • 字符编码集的国际化
  • 各国国家语言体系不一样,有不以有限字符组合的语言(例:中文)
  • 中文编码集GB2312
  • 一共收录了7445个字符(其中包括6763个汉字和682个其它符号)
  • 中文编码集GBK
  • 向下兼容GB2312,向上支持国际ISO标准
  • 收录了21003个汉字,支持全部中日韩汉字
  • 兼容全球的字符集Unicode
  • 也称统一码,万国码,单一码
  • Unicode定义了世界通用的符合集,使用UTF-*实现了编码
  • UTF-8以字节为单位对Unicode进行编码
  • Windows系统默认使用GBK编码
  • 编程推荐使用UTF-8编码

评论 35 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:终极编程指南 设计师:CSDN官方博客 返回首页

打赏作者

汤键.TJ

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值