计算机基础知识整理
计算简单核心基础知识
(ps:小白入门知识点)
一、计算机组成原理
1.什么是计算机
计算机(computer),俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件系统和软件系统组成,没有安装任何软件的计算机称为裸机。可分为超级计算机、工业控制计算机、网络计算机、个人计算机、嵌入式计算机五类,较先进的计算机有生物计算机,光子计算机,量子计算机等。
2.为什么要用计算机
计算机是人发明的一种帮助人类完成普通人力不能完成的一些任务的工具,相当于人的奴隶,通过计算机可以解决很多人在工作和生活中遇到的问题。
3.计算机的五大组成部分
-
控制器:计算机的指挥控制系统
-
运算器:计算机的运算系统,包括逻辑运算和算术运算
(ps:控制器 + 运算器即为计算机中央处理器:CPU,相当于人类的大脑)
-
存储器:计算机存储数据的地方,主要分为内存和硬盘,还有寄存器(容量小)、高速缓存、磁带(服务器数据备份)、 BIOS (basic input output system计算机出厂自带的小系统)等
内存:存取速度快,但是不能永久保存数据,断电即丢失数据。
硬盘:硬盘目前又分为固态硬盘和机械硬盘两种,固态硬盘的存取速度要高于机械硬盘,但相对于内存来说存取速度还是很慢,但是在不损坏硬盘的情况下可以永久保存数据。
-
输入设备:计算机接收外界数据的设备,比如键盘,鼠标,摄像头,麦克风等。
-
输出设备:计算机向外输出数据的设备,比如显示器,打印机,音响等。
(ps:输入设备和输出设备可称为I/0设备)
4.计算机三大核心部件
- cpu:大脑
- 内存:读取速度快,但断电会丢失数据
- 硬盘:永久存储数据
5.CPU工作流程
例如通过暴风影音打开一个视频
1、硬盘运转将数据读到内存
2、CPU去内存里面拿数据
3、将打开视频的命令翻译成自己能够对应上的操作步骤
4、控制硬件执行
x86:32位操作系统,cpu一次性从内存中读取32个字符的数据
x64:64位操作系统,cpu一次性从内存中读取64个字符的数据
6.计算机的操作系统
上面的五大组成部分指的是计算机硬件系统里面的五大重要组成部分,而计算机除了硬件系统还有软件系统,软件系统又分为系统软件和应用软件,其中操作系统就属于系统软件部分。简单来说操作系统主要将计算机硬件的各种复杂的接口封装起来,便于程序员开发程序以及便于用户通过应用软件方便快捷的管理调用计算机各部分硬件。
因此计算机可分为三层结构,应用程序《--》操作系统《--》硬件系统,具体如下图所示。应用程序都是运行在操作系统之上的,而操作系统又是基于计算机硬件运行的,因此我们把操作系统和计算机硬件合称为平台,即应用程序都是在计算机的平台上开发和运行的。
常见的操作系统有windows系统,linux系统,mac系统等。
7.什么是文件?
文件其实就是操作系统给你提供的操作硬盘的简单接口
二、编程和编程语言简介
1.什么叫编程。
编程指的就是编写程序,指人(程序员)将自己的思维逻辑和意图通过编写的程序告诉计算机,从而使计算机完成指定任务。编程得到的是一堆文件,最终目的是让计算机通过这堆程序文件完成指定的工作。
2.为什么要编程。
编程可以让计算机理解人类的思维逻辑和意图完成一些指定的任务,从而解放人力。
3.编程语言。
人与人交流需要语言,比如汉语,英语等,同样人与机器交流也需要某种沟通介质,这就是编程语言。
编程语言又分为三种语言:机器语言、汇编语言、高级语言
-
机器语言
机器语言是站在计算机的角度来开发程序,而计算机只能识别高低电频,因此计算机语言是一系列用0和1这种二进制代码写的指令,优点是站在计算机的角度编写的指令,更容易被计算机理解,执行效率高,可直接控制计算机硬件。缺点是过于复杂,开发效率低 ,依赖具体的计算机硬件,跨平台性差 。
-
汇编语言
汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。它同样需要编程者将每一步具体的操作用命令的形式写出来。 优点是相对于机器语言来说使用英文标签编写程序相对简单,执行效率稍低,开发效率稍高。 缺点是仍然是直接操作硬件,比起机器语言来说,复杂度稍低,但依旧居高不下,所以开发效率依旧较低 ,一样依赖具体的硬件,跨平台性差
-
高级语言
高级语言是站在人的角度,说人话,即用人类的字符去编写程序,而人类的字符是在向操作系统发送指令,而非直接操作硬件,所以高级语言是与操作系统打交道的,此处的高级指的是高层、开发者无需考虑硬件细节。优点是开发效率可以得到极大的提升,缺点是高级语言离硬件较远,更贴近人类语言,人类可以理解,而计算机则需要通过翻译才能理解,所以执行效率会低于低级语言。
高级语言可以分为编译型(如C语言)和解释型(python)
-
编译型
把程序所有代码编译成计算机能识别的二进制指令,之后操作系统会拿着编译好的二进制指令直接操作硬件。优点是编译一次之后就可以拿着结果重复运行,而无需再次翻译,执行效率高于解释型缺点是编译型代码是针对某一个平台翻译的,当前平台翻译的结果无法拿到另外一个平台使用,即无法跨平台
-
解释型
类似同声翻译,需要有一个解释器,解释器会读取程序代码,一边翻译一边执行,优点是代码运行是依赖于解释器,不同平台有对应版本的解释器,所以代码是可以跨平台运行,缺点是
每次执行都需要翻译,执行效率低于编译型。
-
4.总结
执行效率:机器语言>汇编语言>高级语言(编译型>解释型)
开发效率:机器语言<汇编语言<高级语言(编译型<解释型)
跨平台性:解释型具有极强的跨平台型
三