我在地球学Python基础第一篇:计算机组成原理基本知识和编程语言基础知识

news2024/11/8 11:39:28

业精于勤荒于嬉,行成于思毁于随。
今天开始系统记录学习Python

第一篇

  • 计算机组成原理
  • 一、什么是计算机
  • 二、计算机是由什么组成的?
    • 2.1 硬件系统
    • 2.2 软件系统
  • 三、计算机如何处理程序?
  • 四、编程语言

计算机组成原理

学习目标:
1、能够说出计算机由哪两个部分组成
2、能够说出操作系统的作用

一、什么是计算机

计算机(computer)俗称电脑,是现代一种用于高速计算 的电子机器,可以进行数值计算,也可以进行逻辑判断,并且具有存储记忆功能,能够按照程序的运行,自动、高速的处理数据

计算机是20世纪最先进的科学技术发明之一

二、计算机是由什么组成的?

一个完整的计算机系统,是由硬件系统 软件系统 两大部分组成的。

在这里插入图片描述

2.1 硬件系统

硬件系统主要分为主机外设两部分,是指构成计算机的物理实体,它们主要由各种各样的电子器件和机电装置组成。
在这里插入图片描述
ENIAC(世界上第一台计算机) 到当前最先进的计算机,硬件系统采用的都是冯·诺依曼体系结构
在这里插入图片描述

  • 运算器:
    负责数据的算数运算和逻辑运算,即数据的加工处理
  • 控制器:
    整个计算机的中枢神经,分析程序规定的控制信息,并根据程序要求进行 控制,协调计算机各部分组件工作及内存与外设的访问等。

运算器和控制器统称中央处理器(CPU)

  • 存储器
    实现记忆功能的部件,用来存储程序、数据和各种信号、命令等信息,在需要时提供这些信息。
  • 输入设备
    实现将程序、原始数据、文字、字符、控制命令或现场采集的数据输入到计算机
  • 输出设备。
    实现将计算机处理后生成的中间结果或最终结果(各种数据符号及文字或各种控制信号等信息)输出出来。

2.2 软件系统

软件系统主要分为系统软件和应用软件,是指计算机正常运行所需要的各种各样的计算机程序
在这里插入图片描述
系统软件的任务是既要保护计算机硬件的正常工作,又要使计算机硬件的性能得到充分的发挥,并且为计算机用户提供一个比较直观、方便和友好的使用界面。

  • 操作系统
    操作系统是控制管理计算机系统的硬软件,分配调度资源的系统软件。我们操作计算机实际上就是通过操作系统来进行的,它是所有软件的基础和核心
  • 驱动程序
    其作用是将硬件本身的功能告诉操作系统,驱动程序可以与操作系统内核进行交互,完成硬件设备电子信号与操作系统及软件的高级编程语言之间的互相翻译。驱动程序被比作
    “ 硬件的灵魂”、“硬件的主宰”、“硬件和系统之间的桥梁”
  • 语言处理程序
    也称为编译程序,作用是把程序员编写的代码翻译成计算机可以执行的机器语言。机器语言也称为机器码,是可以通过CPU进行分析和执行的指令集
  • 应用软件
    应用软件是用户可以使用的各种程序设计语言 ,以及用各种程序设计语言编制的应用程序 的集合,分为应用软件包和用户程序。

三、计算机如何处理程序?

按照冯·诺伊曼存储程序的原理,计算机的工作流程大致如下:

  1. 用户打开程序,程序开始执行;
  2. 操作系统将程序内容和相关数据送入计算机的内存;
  3. CPU根据程序内容从内存中读取指令;
  4. CPU分析、处理指令,并为读取下一条指令做准备;
  5. 读取下一条指令并分析、处理。如此重复操作,直至执行完程序中的全部指令,最后将计算的结果放入指令指定的存储器地址中
    在这里插入图片描述
    计算机想要运行程序,就需要将软件加载到内存中,CPU只能和内存交互

四、编程语言

计算机只认识0和1
编程语言:即计算机和人类沟通交流的语言
常见的编程语言:Python、C语言、C++

计算机编程语言主要包括汇编语言、机器语言以及高级语言,具体内容如下:

  • 汇编语言
    该语言主要是以缩写英文作为标符进行编写的,运用汇编语言进行编写的一般都是较为简练的小程序,其在执行方面较为便利,但汇编语言在程序方面较为冗长,所以具有较高的出错率。
  • 机器语言
    这种语言主要是利用二进制编码进行指令的发送,能够被计算机快速地识别,其灵活性相对较高,且执行速度较为可观,机器语言与汇编语言之间的相似性较高,但由于具有局限性,所以在使用上存在一定的约束性。
  • 高级语言
    所谓的高级语言,其实是由多种编程语言结合之后的总称,其可以对多条指令进行整合,将其变为单条指令完成输送,其在操作细节指令以及中间过程等方面都得到了适当的简化,所以,整个程序更为简便,具有较强的操作性,而这种编码方式的简化,使得计算机编程对于相关工作人员的专业水平要求不断放宽。

编程语言经历的时代可以分为:低级语言、高级语言和面向对象时代。

  • 低级语言时代
    低级语言时代(1946-1953)主要包括被称为“天书”的机器语言以及汇编语言。 计算机工作基于二进制,从根本上说,计算机只能识别和接受由0和1组成的指令。这些指令的集合就是该计算机的机器语言。机器语言包括的缺点有:难学、难写、难记、难检查、难修改,难以推广使用。因此初期只有极少数的计算机专业人员会编写计算机程序。
    汇编语言由于机器语言的难以理解,莫奇莱等人开始想到用助记符来代替0,1代码,于是汇编语言出现了。

  • 高级语言时代
    高级语言时代(1954-至今)——随着世界上第一个高级语言fortran的出现,新的编程语言开始不断涌现出来。数十年来,全世界涌现了2500种以上高级语言,一些流行至今,一些则逐渐消失。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1813645.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【docker实战】如何上传镜像到自己的私有仓库

上一篇文章讲了【docker实战】如何登陆到自己的私有仓库? – 经云的清净小站 (skycreator.top)。那么后面的工作就是如何上传镜像到自己的私有仓库了。 下面的操作是使用docker login命令成功之后的操作,没有login请先login。 我打算将本地的ubuntu:18…

攻防演练之-网络安全产品大巡礼二

书接上文,《网络安全攻防演练风云》专栏之攻防演练之-网络安全产品大巡礼一,这里。 “咱们中场休息一会,我去接杯水哈”,看着认真听讲的众人,王工很是满意,经常夹在甲乙两方受气的他,这次终于表…

在Spring Boot中使用Sa-Token实现路径拦截和特定接口放行

在Spring Boot中使用Sa-Token实现路径拦截和特定接口放行 很喜欢的一段话:别想太多,好好生活,也许日子过着过着就会有答案,努力走着走着就会有温柔的着落。 春在路上,花在枝上,所有的美好都在路上&#xff…

Coap协议在物联网中的实战

1. 前言 提到CoAP不能不提MQTT协议,MQTT协议可以保持长链接,具有一定的实时性,云端向客户端发送消息,设备端可以在最短的时间内接收并作出响应,所以MQTT更适合于实时控制场景,需要保持长连接,不…

WDF驱动开发-I/O请求的处理(三)

创建框架请求对象 框架请求对象表示 I/O 管理器已发送到驱动程序的 I/O 请求。 基于框架的驱动程序通过调用 框架请求对象方法来处理每个 I/O 请求。 每个 I/O 请求都包含一个 WDM I/O 请求数据包 (IRP 结构) ,但基于框架的驱动程序通常不需要访问 IRP 结构。 大…

【AI大模型】Transformers大模型库(八):大模型微调之LoraConfig

目录 一、引言 二、LoraConfig配置参数 2.1 概述 2.2 LoraConfig参数说明 2.3 代码示例 三、总结 一、引言 这里的Transformers指的是huggingface开发的大模型库,为huggingface上数以万计的预训练大模型提供预测、训练等服务。 🤗 Transformers …

3.2 窗口滚动条

本节讲述窗口滚动条的简单使用方法。如果窗口客户区的内容太多,为了方便浏览窗口客户区的所有内容,就需要在创建窗口时添加窗口垂直或水平滚动条样式。窗口过程处理WM_CREATE消息时初始化滚动条的位置和滚动范围。窗口过程处理WM_VSCROLL或WM_HSCROLL消息…

讲透计算机网络知识(实战篇)01——计算机网络和协议

一、计算机网络和协议 1、网络和互联网络 1.1 网络、互联网、Internet 用交换机、集线器连接在一起的计算机构成一个网络。 用路由器连接多个网络,形成互联网。 全球最大的互联网:Internet。 1.2 网络举例 家庭互联网 图中的无线拨号路由器既是路由…

281 基于matlab的路径规划GUI交互

基于matlab的路径规划GUI交互。包括蚁量系统、蚁周系统、蚁密系统、蚁群系统、免疫混合算法。11种路径规划数据,最多225个规划点。蚁群和免疫算法的参数可进行设置,使得效果最佳。动态显示可视化规划结果。程序已调通,可直接运行。

防止Selenium被检测 Google Chrome 125

背景 最近在使用selenium自动播放学习课程,相信大家也有一些类似的使用场景。 能自动化的事情,绝不自己干。 为防止被检测是机器人做题,刷视频,需要做一些小调整。 先来看作为服务方维护者,是如何检测是Selenium打…

8.transformers量化

Transformers 核心设计Auto Classes Transformers Auto Classes 设计:统一接口、自动检索 AutoClasses 旨在通过全局统一的接口 from_pretrained() ,实现基于名称(路径)自动检索预训练权重(模 型)、配置文件、词汇表等所有与模型相关的抽象。 灵活扩展的配置AutoConfig…

uniapp地图自定义文字和图标

这是我的结构&#xff1a; <map classmap id"map" :latitude"latitude" :longitude"longitude" markertap"handleMarkerClick" :show-location"true" :markers"covers" /> 记住别忘了在data中定义变量…

pip 配置缓存路径

在windows操作平台&#xff0c;默认情况&#xff0c;pip下使用的系统目录 C:\Users\用名名称\AppData\Local\pip C盘是系统盘&#xff0c;如果常常使用pip安装会占用大量的空间很快就满&#xff0c;这时候就有必要变更一下缓存保存路径了。 pip 配置缓存路径&#xff1a; Win…

【NoSQL数据库】Redis Cluster集群(含redis集群扩容脚本)

Redis Cluster集群 Redis ClusterRedis 分布式扩展之 Redis Cluster 方案功能数据如何进行存储 redis 集群架构集群伸缩向集群中添加一个新的master节点&#xff0c;并向其中存储 num10 .脚本对redis集群扩容缩容&#xff0c;脚本参数为redis集群&#xff0c;固定从6001移动200…

创建第一个Springboot项目HelloWorld

目录 一、准备工作 一、创建springboot项目 三、使用git上传到代码仓库gitee 四、git使用过程问题总结 一、准备工作 安装jdk&#xff1a;8u201&#xff08;可以使用高一点的版本&#xff09; jdk所有版本下载&#xff1a;Java Archive | Oracle 安装maven&#xff1a;不用…

Kafka生产者消息发送流程原理及源码分析

Kafka是一个分布式流处理平台,它能够以极高的吞吐量处理数据。在Kafka中,生产者负责将消息发送到Kafka集群,而消费者则负责从Kafka集群中读取消息。本文将探讨Kafka生产者消息发送流程的细节,包括消息的序列化、分区分配、记录提交等关键步骤。 先看一个生产者发送消息的代…

【五】Linux软件仓库Yum源--SSH远程控制--SCP远程传输

RPM&#xff08;红帽软件包管理器&#xff09; RPM建立统一的数据库文件&#xff0c;记录软件信息并分析依赖关系。目前RPM的优势已经被公众所认可&#xff0c;使用范围也已不局限在红帽系统中了。常见RPM命令如下&#xff1a; 安装软件 rpm -ivh file…

数据结构(DS)学习笔记(二):数据类型与抽象数据类型

参考教材&#xff1a;数据结构C语言版&#xff08;严蔚敏&#xff0c;杨伟民编著&#xff09; 工具&#xff1a;XMind、幕布、公式编译器 正在备考&#xff0c;结合自身空闲时间&#xff0c;不定时更新&#xff0c;会在里面加入一些真题帮助理解数据结构 目录 1.1数据…

【DevOps】 什么是容器 - 一种全新的软件部署方式

目录 引言 一、什么是容器 二、容器的工作原理 三、容器的主要特性 四、容器技术带来的变革 五、容器技术的主要应用场景 六、容器技术的主要挑战 七、容器技术的发展趋势 引言 在过去的几十年里,软件行业经历了飞速的发展。从最初的大型机时代,到后来的个人电脑时代,…

neo4j 3.5.5版本创建新的数据库

neo4j 3.5.5版本创建新的数据库 1.找到neo4j的conf文件 点进去 2.点击neo4j.conf 选择记事本打开 3.把graph.db换成自己想要创建的数据库名称 4.打开neo4j服务 出现新的数据库