计算机基本组成

计算机五大组成


  1. 控制器
    负责按照程序控制其他组成部分的运行。

  2. 运算器
    主要功能是进行算术运算、逻辑运算等,其核心在于算术逻辑单元
    控制器+运算器 = CPU(中央处理器)

  3. 存储器
    计算机的记忆功能,现代计算机以存储器为中心进行运作
    内存:容量小,速度快,掉电的时候数据会丢失 类似于人的短期记忆
    外存:容量大,速度慢,失电后仍然能够保存数据 类似于人的长期记忆
    外存设备有:U盘、磁盘、磁带、机械硬盘、固态硬盘

  4. 输入设备
    键盘、鼠标等都是输入设备

  5. 输出设备
    显示器、音响、打印机等都是输出设备

计算机三大核心硬件

  1. CPU
    CPU是计算机的核心部件,所有的程序都要通过它来运行
  2. 内存
    容量小,速度快,这个特点让它可以配合CPU使用
  3. 外存
    容量大,速度慢,失电后仍然能够保存数据,这些特点让它能够长期的存储我们的数据信息
  • 计算机程序运行过程
    用户想要运行一个软件,首先需要下载这个软件,软件程序都会被存到存储器上。# 外存还是内存?
    每次打开电脑我们都能够运行软件程序,这个程序时长期保存于存储设备上的,所以程序长期保存在外存中。
    当CPU需要执行程序时,需要将外存的程序先转移到内存,再由内存传递到CPU执行。
  • 问:为什么程序不直接从外存调到CPU执行呢?
    因为,CPU和外存的运行速度差距过于大了,当外存读写一条数据的时候,可能CPU已经可以运行上千条程序了,浪费了CPU的性能。而将外存的程序预先的加载到内存中,当CPU想要执行程序的时候,就可以更快速的从内存读取程序执行了。
# 一些基础的计算机知识
1、内存的容量一般比硬盘小的多
  相同体积下,内存能够存储的量相对小,且价格贵,一般我们常见的内存条的大小有:4GB、8GB、16GB、32GB(已经很大了)
2、运行程序所产生的数据第一时间一定出现在内存。
      曾经的文本编辑器再没有保存文档的时候,如果断电了的话,所编辑的文档就会丢失,
    那是因为,保存文档是将内存中的数据写入到外存的过程,如果没有这一步,
    文档就无法利用外存长期保存的特点。
      而现在的文本编辑器为了我们的信息安全,会自动的保存文档。
   - 有两种自动保存文档的方式
        1.实时监测文档的变换,每次编辑改动都会在后台保存一次
        	绝对保证文档的安全,但是后台对CPU资源的占用会大一些
        2.循环定时监测,每隔一段时间保存一次
        	相对的保证文档的安全,无法保证时间间隔内的改动生效

操作系统


'''
控制 协调 管理计算机各个硬件的工作
'''
一个软件应用,需要完成的功能是用户给一个简单的输入,如鼠标点击一下,就能控制计算机的各个硬件,
如控制打印机打印硬盘中的某个文档,这个过程中有cpu、内存、外存、输出设备参与其中。
而对于很多应用而言,控制各大硬件进行运作的程序复杂且重复,于是操作系统应运而生,
专门控制协调计算机的各硬件的工作,软件工程师就只需要编写自己软件的核心逻辑业务程序了。

我们现在所使用的应用程序都必须依赖于操作系统之上才可以运行,所以一台设备想要使用,第一件事就是安装操作系统

PC端常见操作系统windows/macos/linux

移动端常见操作系统安卓/iOS/鸿蒙os

编程语言


编程与编程语言

什么是人的语言?

人与人之间交流的方式。有中文、英文、日文等……

什么是编程语言?

人与机器之间交流的方式。

什么是编程?

程序员通过编程语言,将自己想要执行的程序操作告诉计算机,交由计算机执行。这个过程中需要程序员将逻辑和想法写下来存到文件中,这些文件能够被计算机所识别。

所以编程语言的学习与人类语言的学习很像,最重要的是经常练习。

编程语言发展史

机器语言

​ 计算机最底层的语言:10100101,全部由01组成,这种语言没有识别度,因此编写起来十分的麻烦,开发效率很低,也有很高的门槛。

汇编语言

​ 用一些简单的英文字母组合来代替二进制串,略微的提高了可读性,但是作为早期的过渡语言,这种提升十分的有限,开发效率依旧很低。

高级语言

​ 高级语言已经能很好的让程序员识别程序中的功能、逻辑,大大提升了开发的效率,但是计算机识别起来会多一个翻译的过程,运行速度略微变慢。现在的程序员基本都是应用高级语言来开发程序。

​ 目前常见的高级语言有:C、C++、python、Java、PHP、Golang等

编程语言的分类

这里的分类是对高级语言的分类

编译型语言

​ 编译型语言如C,是将整段程序一次编译成能够计算机能够识别运行的代码。其特点在于翻译和执行是分开的,翻译后会产生目标代码,这个代码可以一直重复执行,但是想要对这个代码进行修改的话就必须将老的程序修改后整个重新进行编译再执行。

解释型语言

​ 解释型语言如python,是边翻译边执行,每翻译一句,就执行一句。其特点是不会产生可直接执行目标代码,每次执行代码都要都会不断的进行翻译的过程。

​ 编译型语言像是翻译软件,会将整句话翻译后显示结果,

​ 解释型语言像是同声传译,每说一句话,就会翻译一句话。

posted @ 2022-09-22 18:53  leethon  阅读(259)  评论(0编辑  收藏  举报