计算机基础

[一]编程和编程语言是什么

【1】什么是编程

编程就是将人类的语言转换为计算机能识别的语言

【2】什么是编程语言

  • 任何人之间都会进行交流
  • 人和人之间交流的媒介就是语言
  • 编程语言就是人与计算机进行交流的语言

【3】为什么要常出现编程语言?

  • 最根本的原因就是计算机无法识别人类语言
  • 于是就开发了计算机能识别的语言

【4】为什么要做编程?

  • 编程就是为了让计算机能够理解人类所下达的指令,然后让计算机实现自动完成任务的功能

[二]计算机组成原理

【1】什么是计算机

  • 计算机就是通电的智能机器
  • 能够批量处理人类的指令和数据

【2】为什么要发明计算机

  • 节省劳动成本、增加效益

【3】计算机的五大组成部分

(1)控制器

  • 相当于人类的大脑,可以相互协调、工作。

(2)运算器

  • 相当于我们大脑进行的逻辑运算和数字运算的功能
    • 逻辑运算包括与或非、如果、但是、其他
    • 数据运算:加减乘除

(3)存储器

  • 人类的记忆存在与大脑中,如海马体
    • 人类的记忆也分为:长期记忆、短期记忆
(1)短期记忆:内存
  • 临时存储数据,断电重启数据消失。
(2)长期记忆:外存
  • 硬盘
    • 机械硬盘
      • 可以存储大量的数据,但是读取速度比较慢,价格低
    • 固态硬盘
      • 可以存储大量的数据,读取速度快,但是价格高
  • 可以持久性的存储数据,并且断电不会消失

(4)输入设备

  • 就是我们使用的向电脑输入内容的设备
  • 鼠标键盘、麦克风...

(5)输出设备

  • 计算机向我们展示信息的平台和设备
  • 投影仪、显示器....

[4]计算机的三大核心硬件

(1)CPU

  • 控制器+运算器=CPU
  • 中央控制处理器
  • 控制整个电脑的调度和运算

(2)内存

  • 临时存储数据的地方
  • 断电数据消失,数据安全性低,但是读取速度快

(3)硬盘

  • 持久化存储数据的地方
  • 断电数据不消失、数据安全性高,读取速度慢

[5]程序的执行过程

  • 数据准备
  • 数据读取
  • 数据写入

[三]操作系统的概念

【1】操作系统的由来

  • 出现的目的就是为了简化操作
  • 为了简化一系列的操作指令,只能是找到这些指令的替代品

【2】操作系统

  • 操作系统其实就是再一堆硬件的基础上实现功能和接口的封装,通过这些接口和程序进行硬件的调度。

【3】开发一套操作系统

  • 开发一款视频软件
    • 核心业务:播放视频、输出音频
      • 将视频文件数据从硬盘中读取出来到内存中,经过播放器进行转码
      • 进行音视频输出

【4】常见的操作系统

(1)Windows平台

(2)Mac平台

(3)Linux平台

(4)Andoraid

(5)IOS

(6)鸿蒙

【5】系统软件和操作软件的区别

(1)什么是系统软件

  • 系统软件就是建立在硬件之上的软件,负责调度整个硬件
  • Windows,MacOS,Linux
  • 功能包括调度计算机服务、读取文件、进程管理...

(2)什么是操作系统

【1】系统软件
  • 系统自带的服务,网卡服务,文件管理器
【2】应用软件
  • 基于Windows系统之上安装的其他软件

【6】计算机系统的三层架构

  • 底层就是硬件层
    • 所有的操作都是基于硬件的
  • 中间层就是操作系统层
    • 所有的硬件调度服务都是基于操作系统的
  • 最上面的是应用层
    • 进行工作和开发的软件层

【7】平台

  • 平台就是操作系统+硬件
  • Linux平台
    • 用在服务器上
    • CPU+显卡+内存+硬盘
  • Windows平台
    • Windows系统+CPU+...
  • MacOS平台
    • macOS+Mac相关硬件

【四】为什么要学Python

【五】编程语言

【1】编程语言的分类

  • 编程语言的发展史,在开始的编程语言(人与计算机进行交流)

【2】机器语言

(1)什么是机器语言

  • 机器语言就是计算机可以理解的语言。操作计算机的系统硬件
  • 由于计算机基于电工作,电分为高低电频,0/1
  • 我们可以控制高低电频的变化组成一系列的指定去操作系统硬件
  • 机器语言因为可以直接操作计算机硬件,所以是最低级的语言。

(2)机器指令

  • 控制高低电频的变化组成一系列的指令就叫机器指令,能控制电脑硬件

(3)如何写机器指令

  • 记住计算机的全部指令及核心代码的含义
  • 在编写机器指令程序的时候需要自己处理每一条数据,以及数据随时可能会发生意外情况

(4)机器语言的示例

  • 机器语言及其繁琐且难以记忆

(5)及其语言的优缺点

  • 优点
    • 执行效率高
      • 可以直接操作计算机的底层硬件
  • 缺点
    • 开发效率低
      • 学习成本高,开发效率慢
    • 跨平台性很差
      • 更换系统硬件会导致机器指令失效
    • 理解源码、反码、补码
底层单位数据的换算
#00000001 表示1字节,有256种排列方式,从0到255。
#00000001 -----> 1bytes -----> 256种排列方式 -----> 从0开始计数就是0-255
#八个字节表示一个 bytes
单位换算公式
1024 bytes = 1 KB
1024 KB = 1 MB
1024 MB = 1 GB
1024 GB = 1 TB
1024 TB = 1 ZB

【3】汇编语言

  • 汇编语言可以直接操作底层硬件
  • 对比机器语言来说,汇编语言就是一种进步,一定程度上降低了开发成本

(1)什么是汇编语言

  • 汇编语言就是用一个英文字母或一串单词来替代

(2)汇编语言示例

hello world

; hello.asm 
section .data            		; 数据段声明
    msg db "Hello, world!", 0xA ; 要输出的字符串
    len equ $ - msg             ; 字串长度
section .text            		; 代码段声明
    global _start            	; 指定入口函数
_start:                			; 在屏幕上显示一个字符串
    mov edx, len            	; 参数三:字符串长度
    mov ecx, msg            	; 参数二:要显示的字符串
    mov ebx, 1            		; 参数一:文件描述符(stdout) 
    mov eax, 4            		; 系统调用号(sys_write) 
    int 0x80            		; 调用内核功能
                    			; 退出程序
    mov ebx, 0            		; 参数一:退出代码
    mov eax, 1            		; 系统调用号(sys_exit) 
    int 0x80            		; 调用内核功能

(3)汇编语言的优缺点

  • 优点

    • 执行效率高
      • 直接操作计算机底层硬件
    • 操作灵活
      • 简化了机器指令可以快速实现代码编程
    • 可执行文件很小
  • 缺点

  • 开发效率低

    • 需要记住很多指令集
  • 复杂度很高

  • 跨平台很差

    • 直接操作计算机底层硬件

【4】高级语言

(1)什么是高级语言

  • 高级语言就是从人类角度出发,用人类语言转化为计算机可以识别的语言
    • 可以通过人类的指令实现操作
  • 更贴近人类

(2)高级语言分类

  • 按照编译方式分为两类
    • 编译型语言
    • 解释型语言

(3)编译型语言

[1]什么是编译型语言

  • 编译型语言就是将源代码一次性翻译成目标代码
    • 下次执行代码只需要执行,翻译过后的文件即可

[2]优缺点

  • 优点:
    • 一次编译处处执行,效率高
  • 缺点:
    • 修改过后需要重新编译
    • 跨平台性很差

[3]编译型语言的代表

  • C、C++、Java

(2)解释型语言

[1]什么是解释型语言

  • 解释型语言就是在执行代码过程中,不是一次性变异而是用到哪里编译到哪里
  • 一点一石的进行编译后执行

[2]解释型语言优缺点

  • 优点
    • 不需要改动后在编译,开发效率高
    • 跨平台性强
  • 缺点
    • 执行效率慢

[3]编译语言代表

  • Go、Python

【5】语言对比

(1)执行效率

  • 机器语言
  • 汇编语言
  • 高级语言
    • 编译型
    • 解释型

(2)开发效率

  • 高级语言
    • 解释型
    • 编译型
  • 汇编语言
  • 机器语言

(3)跨平台性

  • 高级语言
    • 编译型
    • 解释型
  • 汇编语言
  • 机器语言

【六】Python语言介绍

【1】创始人

  • 吉多·范罗苏姆(Guido van Rossum)。

【2】名字的由来

  • Pyhton的名字,是来自Guido喜欢的电视剧《Monty Python's Flying Circus》,他希望这个语言叫做Python的语言。
  • 创造一种C和shell之间,语法能够像shell一样简洁,易学易用、可拓展性强,同时兼顾C的强大功能。

【3】全球语言排行榜

【4】Python语言的应用领域

  • 人工智能、数据分析、爬虫、金融量化、云计算、web开发、自动化运维/测试、游戏开发、网络服务、图像处理等众多领域。

【5】国内应用

Python在国内目前几乎所有的大中型互联网企业都在使用Python

  • Quora(中国知乎)、豆瓣、BiliBili、百度、腾讯....

【6】Python解释器的发展史

  • 1989年,Guido开始写Python语言的编译器。

  • 1991年,第一个Python编译器诞生。

    • 它是用C语言实现的,并能够调用C语言的库文件。
    • 从一出生,Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。
  • Python 2.7 - July 3, 2010

  • Python 3.6 - 2016-12-23 发布python3.6.0版

  • 本次将使用Python3.10

【7】Python的解释器种类

(1)Cpython解释器

  • 基于C语言开发的解释器版本
  • 底层源码都是C语言。

Cpython是我学习使用的解释器

(2)jpython

  • 基于Java写的Python解释器

(3)ipython

  • 可以进行交互的解释器版本
posted @   光头大炮  阅读(36)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示