计算机原理

【一】编程语言和编程

(1) 编程语言是什么

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

(2) 编程什么

计算机里的数据是二进制数据 01010101
# 编程就是为了让人类和计算机进行有效的交流

(3) 为什么要学习编程

让计算机按照我们的意愿完成特定的任务,实现高效率、自动化

【二】计算机组成原理

(1)什么是计算机

计算机是电脑,代替人类进行繁杂的数据处理和计算任务,减轻人力负担,实现自动化

(2)计算机的五大组成部分

(1)控制器
  • 相当于计算机的大脑,负责协调调度其他硬件和软件配合工作
(2)运算器
  • 相当于大脑处理运算的部分,实现计算的功能
    • 算数:加减乘除
    • 逻辑:判断条件成不成立
(3)存储器
  • 存储数据的部分
    • 长期存储
      • 硬盘
      • 数据存储就很持久,断电的话也不会消失,
      • 读取数据慢
    • 短期存储
      • 内存条
      • 短期存储数据,断电就会消失
(4)输入设备 input
  • 将信息输入到计算机,让计算机能够处理我们想要处理的数据
(5)输出设备 output
  • 将计算机处理过后的结果呈现给用户或者其他设备
(6)小结
  • 控制器 + 运算器 —> 人的大脑 运算和处理
  • 存储器 —> 人的大脑 存储记忆
  • 输入设备 —> 人的眼睛、耳朵
  • 输出设备 ----> 人的嘴,人的腿

【三】计算机三大核心硬件

(1)CPU

  • 由控制器 + 运算器组成
  • 处理计算中的数据,生成指令,控制计算机

(2)内存

  • 临时存储正在运行的程序和临时数据
  • 读取速度快,但是基于电工作
  • 断电数据就会消失

(3)硬盘

  • 长久存储我们的数据,包括我们的操作系统、应用程序和用户数据
  • 只要硬盘不损坏就永远能保存数据
  • 读取速度慢
1b = 8个比特位
1kb = 1024b
1mb = 1024kb
1GB = 1024mb
1TB = 1024GB

【四】操作系统

【1】为什么要出现操作系统

  • 操作系统出现的目的是为了简化硬件操作,提供统一的接口供应用程序使用
  • 我们在操作系统之上去开发我们的代码程序

image-20231123093356791

【2】操作系统小结

  • 对于不同公司的开发者来说,应用程序的业务逻辑各不相同,但硬件的控制程序都大致相同,为了避免所有程序员做重复劳动,以及不用再耗费精力去了解所有硬件的运行细节,有公司专门跳出来承担起控制程序的开发任务,这里所说的控制程序指的就是操作系统。
  • 操作系统的功能就是帮我们把复杂的硬件的控制封装成简单的接口,对于开发应用程序来说只需要调用操作系统提供给我们的接口即可

【3】常见的操作系统

(1)客户端(PC)

  • Windows(微软)
  • macOS(苹果)
  • Linux(服务器)

(2)移动端(APP)

  • 安卓
  • iOS
  • 鸿蒙

【4】系统软件与应用软件

(1)系统软件(操作系统)

  • 操作系统是一种系统软件,作为计算机硬件和应用软件之间的中介,负责协调、管理、控制计算机硬件与应用软件资源的控制程序。
  • 其主要功能包括硬件管理、文件系统、进程管理、内存管理、设备驱动程序、用户界面等。
  • 常见的操作系统有Windows、macOS、Linux等。

(2)应用软件(应用软件)

  • 应用软件是为了满足用户特定需求而开发的软件,通过操作系统运行。
  • 它包括各种各样的程序,涵盖了几乎所有计算机用户可能需要的功能。
  • 例如:
    • QQ: 一款即时通讯软件,用于文字、语音、视频通话以及文件传输等功能。
    • 微信: 一款综合性社交平台软件,除了即时通讯外,还包括朋友圈、小程序等功能。
    • Word: 一种文字处理软件,用于创建、编辑文档,处理文本内容。
  • 这些应用软件通过操作系统提供的接口与硬件交互,使用户能够方便地完成各种任务。
  • 应用软件的种类丰富多样,涵盖了各个领域,满足了用户的不同需求。

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

  • 我们开发应用程序本质是在控制硬件,但是我们直接打交道的是操作系统,应用程序都是通过操作系统来间接地操作硬件的,所以一套完整的计算机系统分为三层

(1)应用层

  • 在计算机系统的顶层是应用层,这是用户直接交互的层面。
  • 我们的主要关注点通常是在这个层次上。
  • 在这里,我们编写和设计各种应用程序,包括但不限于网页应用、桌面应用、移动应用等。
  • 编写代码的目标是实现用户需求,而这些应用程序通过操作系统提供的接口来与底层硬件进行通信。

(2)操作系统层

  • 操作系统层是连接应用层和硬件层的桥梁。
  • 它提供了一系列的系统调用和服务,使应用程序能够在硬件上运行。
  • 这一层包括操作系统的内核,负责管理系统资源、进程调度、文件系统等。
  • 不同操作系统有不同的特性,例如Linux、Windows等,以及它们在开发中的影响。

(3)硬件层

  • 硬件层是计算机系统的最底层,包括处理器、内存、存储设备、输入输出设备等。
  • 在这个层次上,我们关注计算机体系结构、指令集架构、存储器层次结构等概念。
  • 理解硬件层对于优化应用程序性能和解决一些底层问题至关重要。

(4)图解总结

img

【6】平台的概念

(1)什么是平台

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

(2)常见的平台

  • windows系统+某款硬件
  • linux系统+某款硬件
  • ubuntu+某款硬件等

(3)跨平台性的优势

  • 在开发应用程序时,考虑跨平台性是至关重要的。
  • 这意味着无论用户使用的是Windows、Linux还是其他操作系统,应用程序都能够在不同平台上运行。
  • 这为开发者提供了更广泛的用户群体,减少了开发和维护的成本,同时增加了应用程序的灵活性。

(4)编程语言的选择

  • 决定应用软件的跨平台性的确关键因素之一是选择合适的编程语言。
  • 不同的语言在这方面有着不同的表现。
  • Python作为一种解释型语言,具有卓越的跨平台性,这是因为Python解释器本身可以在各种操作系统上运行,而且许多Python库和框架也是跨平台的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值