Welcome to kimi's blog

计算机的基础知识

计算机的基础知识

计算机的基础介绍

计算机的本质

计算机也称"电脑",也称为通电的大脑
计算机的工作肯定离不开电, 电信号只有高低电平两种状态(0和1)
计算机其实只认识数字0和1(二进制)

进制数

  • 二进制:0 1
  • 八进制:0 1 2 3 4 5 6 7
  • 十进制:0 1 2 3 4 5 6 7 8 9
  • 十六进制:0 1 2 3 4 5 6 7 8 9 a b c d e f

通过二进制的长短来记录各式各样的数据

比特币(bit) 1bit

  • 8bit = 1bytes 字节

  • 1024bytes = 1 KB

  • 1024KB = 1 MB

  • 1024MB = 1GB

  • 1024GB = 1T

    注意:文件的后缀名仅仅是给人看的

计算机的五大组成部分

控制器

控制着整个计算机各个硬件设备的工作,相当于人体的大脑

运算器

进行数学运算、逻辑运算的部件,相当于人体的大脑

存储器

进行计算机记忆的储存,分为长期记忆和短期记忆,相当于人的记忆

输入设备

接收外界给的信息,相当于人的眼睛

输出设备

负责给外界传递信息,相当于于人的嘴巴

文件路径

在计算机上其实就是一块资源的定位坐标

​ C:\User\Jason\a.txt

路径分为绝对路径和相对路径

名称 含义 是否需要参考系
绝对路径 该路径可以找到具体的资源 不需要
相对路径 获取路径之后不一定都能找到具体的资源 需要

eg:找Typora的位置

绝对路径:D:\Typora

相对路径:Typora

计算机五大组成部分详解

学习专业性比较强的知识点,可以采用类比学习法快速掌握个大概内容

控制器:控制计算机的各个硬件的工作

运算器:进行数学运算、逻辑运算的部件
 	控制器+运算器=CPU(中央处理器)
    
储存器:进行计算机记忆的存储,分为长期记忆和短期记忆
	储存器一般分为内存和外存
    	内存:基于电工作,存取数据的速度快,但是断电后数据立刻丢失(类似于人的短期记忆)
           外存:不基于电工作,储存数据的速度比内存慢,但是可以永久保存数据(类似于人的长期记忆)
            	eg:硬盘、U盘、磁盘、固态

输入设备input:接受外界信息     eg:鼠标、键盘、触摸屏

输出设备output:输出设备是计算机向外输出数据的工具,存储器如内存、磁盘等既是输入设备又是输出设备,统称为IO设备
eg:显示屏、打印机、音响

重要的基础知识: 与运行程序相关的三大核心硬件

我们编写的程序一定是要运行于计算机硬件之上,而站在硬件的角度,与运行程序有关的三大核心硬件为CPU、内存、硬件。

程序最先是存放于硬盘中的,程序的运行是先从硬盘把代码加载到内存中,然后cpu去内存中读取指令运行

计算机三大核心硬件

  1. CPU(中央处理器)

    CPU作为计算机系统的运算和控制核心,是信息处理、程序运算的最终执行单元,是计算机中真正干活的人(程序要想运行起来必须要有CPU的参与)

  2. 内存

    内存的存取速度非常快,主要是与CPU配合使用

  3. 硬盘

    能够长久保存数据

    """当我们想要下载一款休闲游戏软件时>>>>:我们下载的软件是到哪里了?

    ​ 首先,思考计算机能够储存数据的地方(内存、硬盘)

    ​ 其次,反向思考如果是内存,断电后数据会立刻丢失,内存排除

    ​ 最后,确定了下载的软件只能是计算机的硬盘中

** 软件是如何运行的?**

	双击游戏图标
  1. ​ 将硬盘中的游戏程序代码读取到内存>>>如果容量大,等待时间越长(原理:硬盘读取数据是有上限的,硬盘转圈读取数据)
  2. CPU去内存中获取程序中的指令并执行
  3. 游戏开始运行

"""
疑惑解答


1、内存的容量一般比硬盘小的多得多
	硬件水平跟不上
    	一般内存有4GB  8GB 16GB 32GB 64GB 128GB 256GB,比较大的内存一般是服务器的内存
 2、为什么不砍掉内存让CPU跟硬件交互
	两者的运行速度相差较大,CPU的运行速度非常的快(1000),但是硬盘的运行速度非常慢(1)
        内存的运行速度比硬盘的运行速度快,可以同CPU搭配干活,从而提升CPU 的运行效率
  3、只要在运行的程序,程序产生的数据第一时间肯定在内存
	以前 的文本编辑器使用过程中,如果突然断电数据会立刻丢失
       现在的文本编辑器不会出现这种情况的原因是内部自动执行保存操作
        如何保存>>>>:将内存中的数据刷到硬盘中
        注意:自动保存机制有两种方式
        1.实时监测文档的变换,每次编辑改动都会在后台保存一次
        	绝对保证文档的安全,但是后台对CPU资源的占用会大一些
        2.循环定时监测,每隔一段时间保存一次
        	相对的保证文档的安全,无法保证时间间隔内的改动生效


操作系统

操作系统:控制、协调、管理计算机各个硬件的工作

我们目前所使用的应用程序都必须依赖于操作系统之上才可以运行,拿到新的一台计算机必须安装操作系统

PC端常见操作系统:windows、macOS、Linux

移动端常见操作系统:安卓、IOS、鸿蒙

开发一款插画软件
	程序员A开发procreate软件
    		1编写操作系统计算机各个硬件的代码
        	2、编写procreate的核心功能
        程序员B 开发 PS软件
    	 	1、编写操作系统计算机各个硬件的代码
            	2、编写PS的核心功能
        程序员开发画图
             	1、编写操作系统计算机各个硬件的代码
            	2、编写画图的核心功能
            
        由于计算机的各个硬件几乎一致,所以计算机的各个硬件的代码也几乎相同。
            有一家专门做操作系统的公司>>>>微软>>>windows
            

我们开发应用程序本质是在控制硬件,但是我们直接打交道的是操作系统,应用程序都是通过操作系统来间接地操作硬件的,所以一套完整的计算机系统分为三层,如下
image
** 一个非常重要的基础概念:平台**

应用程序都是运行于操作系统之上,而操作系统则是运行于硬件之上的,所以承载应用程序的是一台运行有操作系统的计算机,称之为应用程序的运行平台,即:硬件 + 操作系统 == 平台

编程与编程语言

编程的含义

编程语言
	语言:人与人之间沟通交流的媒介
	编程语言:人与计算机之间沟通交流的媒介

编程
	程序员将自己的思维逻辑和想法用计算机能够读懂的语言写下来的过程,编程的结果是产生了一堆文件

多练习

编程语言的发展史

计算机的发展史

网页地址:https://blog.csdn.net/s33s33333/article/details/121595517

  1. 机器语言

    程序员是直接用二进制与计算机沟通交流

    ​ 优势:计算机能够直接读懂,执行效率高

    ​ 劣势:学习难度大,开发效率低,门槛高

  2. 汇编语言

    用一些英语字母来表示一串二进制数

    ​ 优势:学习难度有所降低,但开发效率有所提高

    ​ 劣势:门槛还是太高

  3. 高级语言

    人类用能够读懂的字符和计算机沟通交流

    ​ 优势:学习难度低,开发效率高,门槛低

    ​ 劣势:执行速度没有机器语言和汇编语言快

    常见的高级语言:C++、Java、PHP、python、golang

    类多但原理几乎一致

    image

编程语言的分类

高级语言都需要经过翻译后才能被计算机识别并执行

编程语言分为编译器语言和解释器语言

  1. 编译型语言 C++、C、Objective-C、Swift、Kotlin

    翻译一次之后可以反复使用翻译的结果,类似于谷歌翻译

    ​ 优势:一次性翻译可以反复使用 执行效率高 速度快

    ​ 劣势:当程序中频繁出现BUG,那么就需要反复去编译

  2. 解释型语言 python、JavaScript、shell程序

    说一句翻一句,类似于同声传译

    ​ 优势:有bug和没bug执行效率几乎一样

    ​ 劣势:速度没有编译性语言快

注意:要想计算机能够识别并运行高效需要对应类型的翻译器

posted @ 2022-09-22 19:10  魔女宅急便  阅读(90)  评论(0)    收藏  举报
Title