计算机组成原理 第一弹

ps:本文章的图片来源都是来自于湖科大教书匠高老师的视频,声明:仅供自己复习,里面加上了自己的理解

这里附上视频链接地址:1-2 计算机的发展_哔哩哔哩_bilibili

​​

目录

🚀计算机系统

🚀计算机的发展


🚀计算机系统

硬件系统软件系统两部分组成

硬件是构成计算机系统的各种物理装置的总称

例如:中央处理器、CPU、内存、主板、显卡、固态硬盘、键盘、鼠标、显示器、电源电缆等都属于计算机硬件

硬件又可以分为主机外设两大类 

软件划分成系统软件和应用软件两大类

系统软件通常指的是操作系统和相关的系统管理工具。操作系统是一种控制和管理计算机硬件与软件资源的系统软件,它为应用程序提供了一个运行环境。系统软件的功能包括但不限于以下几个方面:

资源管理:操作系统负责管理计算机的硬件资源,包括处理器、内存、存储设备、网络设备等,以便应用程序可以合理地使用这些资源。

文件系统:操作系统提供文件系统来管理计算机上的文件和目录,包括文件的创建、读取、写入、删除和权限管理等功能。

用户界面:系统软件通常包括用户界面,用于与计算机进行交互。这可以是命令行界面(如Unix/Linux的shell)或图形用户界面(如Windows、macOS和各种Linux发行版)。

设备驱动程序:操作系统提供了设备驱动程序,用于管理计算机上的各种硬件设备,如打印机、键盘、鼠标、显示器等。

系统安全:系统软件负责管理用户的权限和系统的安全性,包括用户身份验证、访问控制、安全更新等。

系统调度:操作系统负责对运行中的程序进行调度和管理,以便合理地分配计算机资源,提高系统的整体性能。

系统维护工具:系统软件通常包括一些系统维护工具,用于诊断和解决问题,例如磁盘清理、性能监控、系统备份和恢复等。

✨总的来说就是为管理整个计算机系统所编制的程序

 应用软件是为了实现用户应用所编制的各种程序,

例如科学计算、数据处理、过程控制、事务管理等软件都属于应用软件

计算机系统性能的好坏取决于硬件和软件功能的总和,因为只有单单硬件或软件都是运行不起来的,软件要运行在硬件上

🚀计算机的发展

1936年,英国数学家艾伦图灵,提出了一种十分简单但运算能力极强的理想计算装置用它来计算所有能想象得到的可计算函数。这一装置只是一种理想的计算模型,或者说是一种理想中的计算机,又被称为图灵机(一种具备读写,存储等功能的通用计算机模型)

图灵机的三部分:带子,读写头,控制装置,能执行任何给定的计算,图灵的这一思想奠定了现代计算机基础,现代计算机实际上就是用相应的程序来完成任何设定好的任务。

1938年,美国数学家、信息论创始人香农,深刻的揭示了波尔代数与开关电路之间的联系。为数字电路设计与分析奠定了坚实的数学基础,这项开创性的研究为计算机科学、电子工程与信息技术的发展提供了重要的理论支持。

✨世界上第一台真正意义上的电子数字计算机是在1937年到1942年间,由美国物理系副教授阿塔纳索夫和当时还是物理系贝瑞合作研制成功的。称为阿塔纳索夫贝瑞计算机,简称为ABC。

✨该计算机使用了300个电子管,不可编程,仅用于求解线性方程组。只是一台样机并没有完全实现阿塔那索夫的构想。

1946年。莫克利和艾克特基于ABC计算机的设计思想,成功研制出了真正实用的电子数字计算机

 

 现在国际计算机界公认的事实是,第一台电子数字计算机的真正发明人是阿塔纳索夫。

 

发展阶段使用器件运算速度主存(内存)辅存(外存)特点
第一代(1946-1975)电子管(真空管)几千-几万水银延迟线,磁鼓,磁芯穿孔卡片,穿孔纸带使用机器语言编程无操作系统
第2代(1958-1964)晶体管几十万-几百万磁芯磁鼓,磁带,磁盘主要使用汇编语言编程,开始使用FORTRAN,COBOL等高级语言,单道批处理系统
第3代(1965-1971年)集成电路几百万-几千万半导体储存器磁带,磁盘

高级语言进一步发展,出现B语言(c语言的前身)

多道批处理系统,分时系统

第4代(1972至今)超大规模集成电路几十亿-几千亿半导体储存器磁盘,磁带,光盘,半导体存储器各种高级语言(C/C++,Java,Python)

✨电子管计算机体积大、功耗高、速度慢、可靠性差,主要应用于科学计算

✨相对于电子管计算机,晶体管计算机体积小、速度快、功耗低、可靠性高

✨相对于晶体管计算机,集成电路计算机的体积和功耗都显著减小,而可靠性大大提高,在这一阶段,还出现了巨型机、大型机与小型机同时发展的趋势,计算机类型开始出现多样化和系列化。软件技术与外部设备快速发展。应用领域不断扩大

✨从上述电子数字计算机的发展历程可以看出。其发展特点是体积越来越小,功耗越来越低,可靠性越来越高,运算速度越来越快。这些都依赖于电子器件的发展。

英特尔公司的创始人之一戈登摩尔。他在1965年接受美国电子杂志的总编采访时。对半导体集成电路上可容纳的晶体管数量、性能和价格等发展趋势进行了预测。也就是半导体集成电路上可容纳的晶体管数量大约每经过18~24个月便会增加一倍。换句话说呢,处理器的性能大约每两年翻一倍,同时价格下降为之前的一半,这就是著名的摩尔定律。半导体集成电路50多年的发展历程证明了摩尔定律对半导体芯片工业发展前景的预测是基本准确的。近年来,随着半导体芯片的设计、制造以及封装和测试技术的发展,半导体工艺已接近半导体集成电路极限,半导体芯片的发展开始逐渐偏离摩尔定律的预测,从2013年开始逐步放缓,至三年翻一番。

✨在计算机发展的早期阶段,人们使用机器语言来编写程序,机器语言用二进制代码来表示不同的机器指令,计算机能够直接识别和执行这些机器指令,这对编程人员的要求极高。一方面要求编程人员对计算机的硬件结构非常熟悉。另一方面,机器语言可读性差,易出错和难排错。

为了克服机器语言的上述特点,发展出了汇编语言。它使用一些便于记忆并且能够表示指令功能的注记符来编写程序,尽管使用汇编语言编程比使用机器语言编程的难度有所降低,但是汇编语言仍然是面向机器的语言,人们在使用汇编语言编程前,还是要花费很多时间熟悉所使用计算机的指令集,然后才能使用其相应的符号语言啊,也就是汇编语言来编写程序。因此还是很不方便。

✨为了使不熟悉具体计算机硬件结构和相应指令级的人也能很方便的为计算机编写程序。人们又创造了各种接近于人类语言的高级语言。世界上第一个高级语言是fortran。而最简单和易于初学者使用的高级语言是Basic。Pascal被认为是编程语言的一个重要里程碑。而现代程序语言革命的起点是C语言。

✨从上世纪90年代至今,是面向对象时代,最突出的特点为封装性、继承性和多态性

✨当前的计算机系统正朝着两极化的趋势发展。一级是向更微型化发展,注重在低功耗下也能取得较好的性能,具有多用途。

✨另一级是向更巨型化、超高速、并行处理智能化方向发展。

✨目前我国最快的超级计算机是神威太湖之光。每秒可进行9.3亿亿次浮点运算。


湖科大教书匠高老师的视频非常好,对考研同学特别友好,推荐大家去看!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/336561.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

UI测试脚本录制器已上线,RunnerGo :UI自动化测试平台

想快速配置可视化UI自动化测试脚本?RunnerGo近期上线脚本录制器,根据你的测试操作直接生成UI自动化测试脚本,下面是使用方法 Step1:下载录制器 点击RunnerGo上方插件按钮下载录制器 Step2:录制器使用 将插件文件拖入浏览器扩展程序 点击打…

Zabbix 系统监控详解

1 介绍 1.1 摘要 本文深入浅出,切近实际运维应用,由 zabbix 3.4 版本入手,学习 zabbix 监控告警实现方式,由 zabbix 5.0 浅出实现快速部署、快速应用。本人从业多年,关注 zabbix 开源社区,以及 zabbix 官…

【计算机网络】3、IPv6、网络三层模型、网络的规划与设计、网络的规划与设计、网络存储技术、网络地址翻译NAT、默认网关、虚拟局域网VLAN、虚拟专用网VPN、URL

文章目录 IPv6IPv6的特点IPv4和IPv6的过渡期间主要采用三种基本技术双协议栈隧道技术翻译技术 网络三层模型核心层汇聚层接入层 网络的规划与设计工作区子系统水平布线子系统管理子系统垂直干线子系统设备间子系统建筑群子系统总结 廉价磁盘网络存储技术直接附加存储(DAS)网络附…

Git学习笔记(第1章):Git概述

目录 1.1 版本控制 1.1.1 何为版本控制 1.1.2 为什么需要版本控制 1.1.3 版本控制工具 1.2 发展历史 1.3 工作机制 1.4 代码托管中心(远程库) Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。…

LeetCode19:删除链表的倒数第N个结点

力扣题目链接 思路:由于本题有可能删除头结点,为保证删除头结点和其他结点的操作一致,因此首先创建一个虚拟头结点dummy。 其次,本题需要删除倒数第N个结点,由于单链表只有next指针,因此需要找到倒数第N1…

事件驱动架构

请求驱动 服务注册,服务发现,虽然调用地址隐藏了,但是调用stub必须相同。 rpc通信,远程调用。 生产者和消费者要有相同的stub存根。 消费者和生产者的调用接口是耦合的。 事件驱动 核心:上下游不进行通信 中间通过M…

AP5101C 高压线性 LED恒流驱动器 DFN2*2 LED灯汽车雾灯转向灯

产品描述 AP5101C 是一款高压线性 LED 恒流芯片 , 简单 、 内置功率管 , 适用于6- 100V 输入的高精度降压 LED 恒流驱动芯片。电流2.0A。AP5101C 可实现内置MOS 做 2.0A,外置 MOS 可做 3.0A 的。AP5101C 内置温度保护功能 ,温度保护点为 130 …

「Kafka」Broker篇

「Kafka」Broker篇 主要讲解的是在 Kafka 中是怎么存储数据的,以及 Kafka 和 Zookeeper 之间如何进行数据沟通的。 Kafka Broker 总体工作流程 Zookeeper 存储的 Kafka 信息 启动 Zookeeper 客户端: [atguiguhadoop102 zookeeper-3.5.7]$ bin/zkCli.sh通…

go语言(一)----声明变量

package mainimport ("fmt""time" )func main() {fmt.Print("hello go!")time.Sleep(1 * time.Second)}运行后,结果如下: 1、golang表达式中,加;和不加;都可以 2、函数的{和函数名一…

范围运算between...and和空判断

目录 between...and 空判断 Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 between...and between...and的主要功能是用户进行范围查询,语法如下: select 字段 | 数值 between 最小值 and 最大值; 1.查询工资在 1500 ~ 3000 的所…

【Qt】信号和槽

需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、Qt中的信号和槽 1、信号 2、槽 3、Q_OBJECT 二、Qt中的connect函…

【Go面试向】实现map稳定的有序遍历的方式

问题 大家好 我是寸铁&#x1f44a; 总结了一篇实现map稳定的有序遍历的方式探讨的文章✨ 喜欢的小伙伴可以点点关注 &#x1f49d; 你对 map 了解多少&#xff1f;如果要实现第一个稳定的有序遍历有哪些方式&#xff1f; 回答 你对 map 了解多少&#xff1f; 我对map有一定的…

RHCSA上课笔记(前半部分)

第一部分 网络服务 第一章 例行性工作 1.单一执行的例行性工作 单一执行的例行性工作&#xff08;就像某一个时间点 的闹钟&#xff09;&#xff1a;仅处理执行一次 1.1 at命令&#xff1a;定时任务信息 [rhellocalhost ~]$ rpm -qa |grep -w at at-spi2-core-2.40.3-1.el9.x…

Qt文件和目录相关操作

1.相关说明 QCoreApplication类、QFile类、QDir、QTemporaryDir类、QTemporaryFile类、QFileSystemWatcher类的相关函数 2.相关界面 3.相关代码 #include "dialog.h" #include "ui_dialog.h" #include <QFileDialog> #include <QTemporaryDir>…

【JavaEE】网络原理:网络中的一些基本概念

目录 1. 网络通信基础 1.1 IP地址 1.2 端口号 1.3 认识协议 1.4 五元组 1.5 协议分层 什么是协议分层 分层的作用 OSI七层模型 TCP/IP五层&#xff08;或四层&#xff09;模型 网络设备所在分层 网络分层对应 封装和分用 1. 网络通信基础 1.1 IP地址 概念:IP地址…

AIGC语言大模型涌现能力是幻觉吗?

Look&#xff01;&#x1f440;我们的大模型商业化落地产品&#x1f4d6;更多AI资讯请&#x1f449;&#x1f3fe;关注Free三天集训营助教在线为您火热答疑&#x1f469;&#x1f3fc;‍&#x1f3eb; 在自然界中&#xff0c;涌现现象无处不在&#xff0c;从鸟群的和谐飞翔到生…

【C++】unordered_map,unordered_set模拟实现

unordered_map&#xff0c;unordered_set模拟实现 插入普通迭代器const迭代器unordered_map的[ ]接口实现查找修改哈希桶完整代码unordered_map完整代码unordered_set完整代码 喜欢的点赞&#xff0c;收藏&#xff0c;关注一下把&#xff01; 上一篇文章我们把unordered_map和u…

基于JavaWeb+SSM+Vue基于微信小程序的网上商城系统的设计和实现

基于JavaWebSSMVue基于微信小程序的网上商城系统的设计和实现 滑到文末获取源码Lun文目录前言主要技术系统设计功能截图订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 滑到文末获取源码 Lun文目录 目录 1系统概述 1 1.1 研究背景 1 1.2研究目的 1 1.3系统设计思想…

深度剖析跨境商城源码架构,助你把握行业动向

跨境电商作为当今电商行业的热点&#xff0c;其源码架构备受关注。作为专家&#xff0c;我将深度剖析跨境商城源码架构&#xff0c;帮助你把握行业动向。 跨境商城源码架构的基本组成 跨境商城源码架构一般包括前台系统、后台管理系统、数据管理系统和安全系统四大模块。前台…

LabVIEW振动数据采集与分析系统

在这个项目中&#xff0c; LabVIEW软件配合精确的硬件组件&#xff0c;以实现高效的振动数据采集和复杂信号分析。硬件方面&#xff0c;系统采用了PCB振动加速度传感器的高灵敏度传感器&#xff0c;以及NI9234型号的数据采集卡&#xff0c;确保了数据采集的高精度和可靠性。软件…