计算机基础理论
1、计算机发展史
**计算机发展史,是介绍计算机发展的历史。计算机发展历史可分为1854年-1890年、1890年-20世纪早期、20世纪中期、20世纪晚期-现在,四个阶段。
第一台计算机
第一台计算机是美国军方定制,专门为了计算弹道和射击特性表面而研制的,承担开发任务的“莫尔小组”由四位科学家和工程师埃克特、莫克利、戈尔斯坦、博克斯组成。1946年这台计算机主要元器件采用的是电子管。该机使用了1500个继电器,18800个电子管,占地170m,重量达30多吨,耗电150KW,造价48万美元。这台计算机每秒能完成5000次加法运算,400次乘法运算,比当时最快的计算工具快300倍,是继电器计算机的1000倍、手工计算的20万倍。用今天的标准看,它是那样的“笨拙”和“低级”,其功能远不如一只掌上可编程计算器,但它使科学家们从复杂的计算中解脱出来,它的诞生标志着人类进入了一个崭新的信息革命时代。
现代计算机
第五代计算机,亦称“智能计算机”。将信息采集、存储、处理、通信同人工智能结合在一起的智能计算机系统。主要面向知识处理,具有形式化推理、联想和理解的能力,能够帮助人们进行判断、决策、开拓未知领域和获取新的知识。
2、计算机的本质
#计算机就是电脑,即通电的大脑。
3、计算机的五大组成部分
- 控制器
控制计算计各个硬件的工作 #相当于人的大脑
- 运算器
控制数学运算和逻辑运算 #也相当于人的大脑
- 存储设备
内存
相当于人的短期记忆
eg:内存条
优点:存取数据的速度很快
缺点:基于电工作的,断电立刻丢失,不能用来永久保存数据
外存
相当于人的长期记忆
eg:磁带 U盘 硬盘
优点:断电不丢失,永久保存
缺点:存取数据的速度较慢
- 输入设备
将外界的数据传递给计算机
相当于人的眼睛 嘴巴 耳朵
eg:鼠标 键盘 麦克风
- 输出设备
将计算机内部的数据传递给外部
相当于人的嘴巴...
eg:显示屏 音响 打印机
- 计算机内部存储数据的原理
'''计算机内部只认识01二进制数据'''
计算机是基于电工作的,而电信号只有高低电频两种状态
存储单位:
比特位(bit):二进制
8bit = 1bytes
1024bytes = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
···
ps:满足大数据的要求得有4v特征:
1.规模性 Volume
2.高速性 Velocity
3.多样性 Variety
4.价值性 Value
4、三大核心硬件
中央处理器(CPU) # 控制器+运算器
CPU去内存中取程序的指令并运行 #程序运行其实就是CPU在执行程序的代码
内存
程序要想运行必须先存在于内存中 #双击程序图标其实是将该程序的数据由硬盘加载到内存
外存
永久保存相应数据 #电脑下载软件的过程其实是将数据下载到了硬盘
5、操作系统
操作系统(operating system,简称OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面
#三层架构(应用程序、操作系统、计算机硬件)
#我们日常生活中所使用的 程序员所编写的程序都必须基于操作系统之上
PC端
windows 更加注重用户体验
linux 更加主动软件运行
macOS 两者均可
# 移动端
安卓
ios
鸿蒙
6、文件的概念
#什么是文件、文件夹?
其实是操作系统暴露给用户可以简单快捷操作硬盘的'接口'
7、编程与编程语言
编程与编程语言的关系
1.什么是编程?
程序员使用计算机能够读懂的语言'将自己的思维逻辑和想法'写下来的过程
2.什么是编程语言?
人与计算机之间沟通交流的媒介
编程语言的发展史#
机器语言:
直接使用0 1 二进制编程
优势:计算机能够直接识别 执行速度快
劣势:学习难度打,编程效率低
汇编语言:
用简单的英文字母代替一串二进制数
优势:相比于机器语言难度有所降低
劣势:学习难度大,编程效率低
高级语言:
用人类能够读懂的字符与计算机沟通交流
优势:学习难度大大降低,编程效率大大提高
劣势:计算机无法直接识别,执行速度相对较慢
#高级语言需要有‘翻译官’的存在才可以与计算机沟通交流
#eg:拿python举例子,那么下载python解释器就是翻译官!
注.如何让自己的计算机能够识别高级语言?
- 识别C++,那就下载安装C++编译器
- 识别Python,那就下载安装Python解释器
编程语言的分类#
1.编译型 c++
类似与英文课本的翻译,一次翻译完成后可以多次使用
优势:执行效率高
劣势:修改bug不方便 #比如课本改版就是整本改喽~
2.解释型 python
类似与同声传译,说一句翻译一句
优势:修改bug方便 #比如翻译官,翻译错了可以立马修改
劣势:执行效率、速度没有编译型高
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】博客园携手 AI 驱动开发工具商 Chat2DB 推出联合终身会员
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 聊一聊 C#异步 任务延续的三种底层玩法
· 敏捷开发:如何高效开每日站会
· 为什么 .NET8线程池 容易引发线程饥饿
· golang自带的死锁检测并非银弹
· 如何做好软件架构师
· 欧阳的2024年终总结,迷茫,重生与失业
· Bolt.new 30秒做了一个网站,还能自动部署,难道要吊打 Cursor?
· 史上最全的Cursor IDE教程
· 关于产品设计的思考
· 聊一聊 C#异步 任务延续的三种底层玩法