12.1 计算机硬件基础

news2024/11/25 22:34:33

目录

底层课程导学

课程回顾

1.编程基础

2.应用开发(使用操作系统提供的函数开发应用程序)

3.底层开发(开发操作系统本身,向下管理硬件、向上提供接口(API))

嵌入式系统分层

应用开发

底层开发

Linux层次结构

ARM体系结构与接口技术课程导课

ARM体系结构

学习目的

接口技术

学习目的

ARM课程与驱动课程的区别

学习方法

学习内容

思维方式

学习方法

计算机基础知识

计算机的进制

计算机的组成

输入设备的作用

输出设备的作用

存储器的作用

CPU的作用

运算器的作用(CPU工人)

控制器的作用(CPU老板)

总线

总线

DMA总线

DMA总线的作用

多级存储结构与地址空间

三级存储结构

辅助存储器

主存储器

Cache

程序的存储顺序

地址空间

CPU工作原理概述

CPU原理

控制器

运算器

指令的执行过程


底层课程导学

课程回顾

1.编程基础

C语言基础

C高级及Linux

数据结构

2.应用开发(使用操作系统提供的函数开发应用程序)

文件IO

进程线程

网络编程

数据库

3.底层开发(开发操作系统本身,向下管理硬件、向上提供接口(API))

ARM(处理器,cup架构)

系统移植(将Linux系统安装到特定的产品上,如基于ARM处理器的平台上)

驱动开发(不同的产品有不同的硬件,需要驱动适配系统)

嵌入式系统分层

应用开发

即使用系统提供的接口(API),做上层应用程序的开发

底层开发

即做操作系统本身的开发

Linux层次结构

Linux操作系统内核为上层提供五大类接口

内存管理

文件系统

进程管理

网络协议

设备管理:驱动开发

ARM体系结构与接口技术课程导课

ARM体系结构

ARM:处理器架构,CPU的一种架构

存储模型

工作模式

寄存器:CPU内部的存储器

异常机制

流水线

指令集:汇编语言

学习目的

了解程序是如何在操作系统内部运行,从而写出高效率的程序

接口技术

向上提供接口,向下管理硬件

学习如何通过CPU接口控制硬件

通过CPU的模块、接口来控制硬件

GPIO接口:控制LED

PWM接口:控制蜂鸣器

IIC接口:控制传感器

ADC接口:测电压

学习目的

了解硬件如何控制,为之后驱动开发做准备

ARM课程与驱动课程的区别

ARM课程是在单片机上裸机写程序

驱动课程是在单片机上安装Linux操作系统后写程序

学习方法

学习内容

CPU、接口、硬件

思维方式

程序执行、接口配置、硬件控制

学习方法

先宏观再微观、重理解轻记忆、善于总结归纳

计算机基础知识

ARM是CPU的一种架构

CPU是电脑的一部分

计算机的进制

数据在计算机中的数据的存储、运算、传输都是以高低电平的形式,所以数字电路中用高、低电平表示逻辑1和0

内存使用硬件的总线将数据传输给CPU,通过高低的电信号表示逻辑上的1和0

 

计算机存储、运算、传输都是以高低电平的方式,所以数字电路中用高、低电平来表示逻辑1和0

计算机的组成

 

输入设备的作用

将其他信号转换为CPU可以识别的电信号

输出设备的作用

将CPU的电信号转换为其他信号

存储器的作用

存储程序与数据

CPU的作用

可以执行程序,无法存储数据,存储数据是在存储器内,需要执行时从存储器中调用

运算器的作用(CPU工人)

运行数据运算(如+、-、*、/)与逻辑运算(如if、while)

控制器的作用(CPU老板)

控制程序的执行流程,CPU的指挥中心

总线

总线

总线是计算机中各个部件之间传送信息的公共信息干线,在物理上就是一束导线,按照器传递信息的类型可以分为数据总线、地址总线、控制总线

DMA总线

DMA即直接存储器访问,使用DMA总线可以不通过CPU直接在存储器之间进行数据传递

 

DMA总线的作用

因为其可以不通过CPU进行传输,如果存储器中存储了一张照片,想直接在屏幕显示如果没有DMA总线只能通过存储器将照片传输到CPU中,CPU在通过IO总线及其接口传输,而有DMA总线可以直接通过DMA总线将存储器中的照片传输到显示器上,减少了CPU的占用,提升CPU运算的性能

多级存储结构与地址空间

三级存储结构

 

辅助存储器

外存 如硬盘,优点:容量大、价格便宜、断电不丢失,缺点:读写速度慢、按块读写

主存储器

内存 优点:读写速度快、可按字节读写,缺点:容量小、价格贵、断电丢失

Cache

高速缓存 优点:速度更快,缺点:容量更小、价格更高

使用三级存储结构是为了兼顾速度、容量、价格

程序的存储顺序

CPU可以读写Cache、主存储器,但是不能直接读辅助存储器

程序安装时,将暂时不需要运行的程序和数据安装在辅助存储器,断电不丢失

打开程序时,将硬盘中的程序搬移到内存中,断电数据丢失,存放当前正在执行的程序和数据,CPU直接访问

执行程序时,程序中有一些代码需要经常被使用,将这些经常被使用的程序搬移到Cache中,存放当前执行程序中的活跃部分

地址空间

CPU可以从地址空间中读取数据,但是可以读取到的空间并不是无限大的,限制主要与地址总线的宽度有关

CPU可以读取的地址空间叫做地址空间

一般来说N位地址总线的处理器的地址空间是2的N次方

如果内存的空间大于CPU的寻址空间,CPU只能访问到寻址空间范围内的内存。多余的空间无法被CPU直接利用

CPU工作原理概述

CPU原理

 CPU工作方式是串行

同一时间只能进行一个运算

控制器

控制程序的执行过程

1.取址

指令计数器PC:存储想要执行的指令的地址

指令寄存器IR:存储内存中返回的指令的内容

2.译码

指令译码器:将取得的指令译码

运算器

3.执行

CPU的运算都是在电路里完成的

运算器内部是各种运算电路

程序中需要什么样的运算,运算器中就需要设计什么样的运算电路

执行结束后,指令计数器PC自加,继续执行下一条运算,重复过程

指令的执行过程

一条指令的执行分为三个阶段

1.取址: CPU将PC寄存器中的地址发送给内存,内存将其地址中对应的指令返回 到CPU中的指令寄存器(IR)

2.译码: 译码器对IR中的指令进行识别,将指令(机器码)解析成具体的运算

3.执行: 控制器控制运算器中对应的运算单元进行运算,运算结果写入寄存器 每执行一条指令后PC的值会自动增加指向下一条指令

每执行一条指令后PC的值会自动增加指向下一条指令

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

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

相关文章

PLC技能引领自动化控制系统的设计与开发

学习了PLC后,您可以从事各种与自动化控制系统相关的工作。以下是一些可能的职业方向: 自动化工程师:作为自动化工程师,您将负责设计、开发和维护自动化控制系统,其中包括PLC编程、传感器和执行器的集成以及系统调试和…

CAD怎么转JPG图片?三种方法教你快速转换

CAD文件只能在安装了CAD软件的电脑上打开,而JPG图片可以在几乎所有设备上打开,包括电脑、手机和平板电脑等,这样可以更方便地分享和传递设计文件。无需考虑对方是否有安装CAD软件。那么我们怎么把CAD文件转换成JPG图片呢?教大家三…

管理类联考——英语——趣味篇——不择手段——c开头单词

🏠个人主页:fo安方的博客✨ 💂个人简历:大家好,我是fo安方,考取过HCIE Cloud Computing、CCIE Security、CISP、RHCE、CCNP RS、PEST 3等证书。🐳 💕兴趣爱好:b站天天刷&…

CMIS_GOV_STD

自然资源“一张图”综合管理系统【标准版】

shell脚本-cp命令复制目录报错cp: omitting directory

cp 复制目录报错,如下: 【报错原因】: cp命令默认是不能复制目录的,需要加参数 【解决办法】: 使用cp -r命令进行复制,递归处理,将指定目录下的所有文件与子目录一并处理。 【拓展】cp语法 cp…

数据标注:数字病理学中的人工智能

在数字病理学中,组织样本的显微图像被传输到计算机,并使用先进的图像处理技术和计算机视觉对其进行分析。 医学图像和诊断的数字化为病理学中的人工智能开辟了途径。病理学家可以使用机器学习模型来进行增强分析并提高结果准确性。此外,病理学…

socat: 网络链接和一些简易的RPC

除了这些功能之外,端口转发,也是相当的方便实用, 小型产品的RPC 都可以通过,指定程序去执行

华为OD机试真题B卷 Python 实现【整理扑克牌】,附详细解题思路

目录 一、题目描述步骤1步骤2步骤3 二、输入描述三、输出描述四、解题思路五、Python算法源码六、效果展示1、输入2、输出3、说明 一、题目描述 给定一组数字,表示扑克牌的牌面数字,忽略扑克牌的花色,请按如下规则对这一组扑克牌进行整理&am…

使用kubeshpere创建k8s容器日志系统grafana-loki

k8s日志聚合平台grafana-loki,可以统一查看所有容器的日志运行。 效果: 使用kubeshpere创建loki应用十分的方便,减少了很多操作,易用的同时也实用,k8s不再是精通人员才能使用的编排系统。 1、在企业空间中&#xff0…

100种思维模型之能力圈思维模型-91

芒格说: “ 一个人在一生中可以真正得到的真见卓识仍然非常有限,所以正确的决策必须局限在自己的 ‘ 能力圈’ 以内。 ” 巴菲特说: “对你的 能力圈 来说,最重要的不是能力圈的范围大小,而是你如何能够 确定能…

虹科教程 | Linux网络命名空间与虹科PROFINET协议栈的GOAL中间件结合使用

前言 PROFINET是由PI推出的开放式工业以太网标准,它使用TCP/IP等IT标准,并由IEC 61158和IEC 61784 标准化,具有实时功能,并能够无缝集成到现场总线系统中。凭借其技术的开放性、灵活性和性能优势,PROFINET可应用于过程…

git上传文件到Gitee报错“error: failed to push some refs to ‘https://gitee.com/xxxx”

文章目录 前言一、创建项目仓库二、创建工作区三、配置 LFS四、上传镜像文件 前言 我要将一个 4.27 GB 的文件上传到 Gitee 上,但是出现了下面这样的报错 error: failed to push some refs to https://gitee.com/xxxx/centos.git 因此记录一下解决报错的方法。 一、…

eBPF内核技术在滴滴云原生的落地实践

将滴滴技术设为“星标⭐️” 第一时间收到文章更新 导读 eBPF是Linux内核革命性技术,能够安全高效地扩展内核能力,应用广泛,尤其是在云原生可观测性领域的应用已经成为行业热点。在滴滴云原生环境中,eBPF技术进行了业务实践和内源…

23西安电子科技大学电子工程学院821考研录取情况

01、电子工程学院各个方向 02、23电子工程学院一志愿考研录取情况总览、平均分 PS:电院23年院线相对于22年院线上涨10-15分,个别专业下降5分,这是因为22年西电电院报名人数较少,导致23年增加了一部分人数。 PS:1、电院…

前端 | windows安装nvm管理node.js

文章目录 01 nvm介绍02 安装03 设置镜像04 安装与版本管理05 基础使用 01 nvm介绍 nvm,即node version manager,是一个方便切换和管理node.js版本的工具。 安装nvm前的注意事项: 卸载掉现有的node.js所有安装目录避免出现空格和中文选用管理…

PaoPao泡泡清新文艺的微社区系统源码

泡泡是一个真正意义上高性能的微社区,虽然规模不大却拥有完备的功能。 该系统采用了GoZinc架构,前端使用Vue3进行构建,采用清新简洁的设计风格,布局类似Twitter的三栏设计。 后端服务使用Go编写,仅占用8MB的内存&…

Meta将生成人工智能功能应用于其产品能否提升吸引力?

随着技术的不断进步,人工智能在各个领域发挥着越来越重要的作用。最近,Meta公司宣布将在旗下产品中加入生成人工智能功能,以提升其吸引力。这一举措引起了广泛关注,人们开始思考,Meta将生成人工智能功能应用于其产品是…

可以提升效率的时间管理APP,上班族的好帮手

在时间少,但是待办事项多的快节奏社会中,时间管理成为了很多人都需要面临的重要问题。特别是对于繁忙的上班族来说,高效地利用时间是提升工作效率的关键。有不少上班族都在为如何高效管理时间而烦恼,于是一些时间管理工具应运而生…

【聊聊开发中十分重要的“必抓!”算法】

目录 一:前言 二:常见算法介绍 三: 典型算法详述 1.冒泡排序 2.递归排序 3.哈希算法 四:算法的应用场景 五 总结 一:前言 算法在计算机科学和软件开发中具有重要的地位,它们是解决问题和优化过程的…

0基础学习VR全景平台篇 第57篇:高级功能-多语言

功能位置示意 一、本功能将用在哪里? 多语言功能,可一键设置作品界面语言为中/英文,或跟随系统自动切换中/英文,各位可以用户可以轻松制作英文版VR全景作品,满足国外用户访问的需求。 此外蛙色VR平台,可通…