操作系统与单片机

原文地址:操作系统与单片机 - Pleasure的博客

下面是正文内容:

前言

这是一篇笔记,具体的上手实践后面会有

对应计算机体系结构这门专业课程,主要讲罗列一些生涩的概念

都是些废话别看了

正文

步骤:数字电路,计算机组成原理,计算机结构,实现逻辑电路,设计指令集,实现汇编器,集成测试

元器件:继电器,真空管,晶体管

操作系统

ALU是算术逻辑单元(Arithmetic Logic Unit)的缩写,是计算机中的一个重要部件。它是中央处理器(CPU)的组成部分之一,负责执行算术运算(如加法、减法、乘法、除法)和逻辑运算(如与、或、非、异或)。

ALU接收来自CPU的指令,并根据这些指令执行相应的操作。它可以对二进制数进行各种运算,因为计算机中所有的数据都以二进制形式表示。ALU的设计通常包括一系列逻辑门电路和寄存器,用于执行各种运算和操作。

ALU的性能和功能对计算机的整体性能和功能至关重要,因为它负责执行大多数的算术和逻辑运算。因此,ALU的设计对于计算机的性能和效率至关重要。

图灵完备是指一种系统具备了图灵机的功能,即可以模拟任何图灵机能够完成的计算任务。图灵机是由英国数学家艾伦·图灵提出的一种理论模型,用于描述一种抽象的计算机。一个系统如果是图灵完备的,就意味着它能够进行条件判断、循环、递归等操作,可以处理各种算法和计算问题,因此被认为是能够执行任何计算的通用计算机。图灵完备性是计算机科学中一个重要的概念,用于衡量一种计算系统的功能和能力。

相关概念:系统资源 任务 进程 顺序执行 多任务并行 任务优先级 任务切换 时间片

高级操作系统特性:任务切换 多任务并行 任务优先级

时间片轮转 上下文切换 上下文保存 中断系统(突发事件) 资源调度 资源争抢

实时操作系统与非实时操作系统,硬实时与软实时

单片机

单片机是一种集成了中央处理器、存储器和各种输入/输出(I/O)功能的微型计算机系统。它们通常被用于控制和嵌入式系统中。单片机可以根据其体系结构、指令集、处理器类型等特征进行分类。以下是单片机的一些常见分类:

  1. 根据体系结构 分类:
    • 哈佛体系结构(Harvard Architecture): 在哈佛体系结构中,程序存储器和数据存储器分开,因此指令和数据采用不同的总线传输。这种体系结构适用于许多嵌入式系统,如传感器网络和嵌入式控制器。
    • 冯·诺伊曼体系结构(Von Neumann Architecture): 在冯·诺伊曼体系结构中,程序存储器和数据存储器共享同一总线。这种体系结构通常用于一般用途的计算机系统。
  2. 根据指令集分类:
    • 精简指令集计算机(RISC): 这种类型的单片机具有精简的指令集,指令通常是固定长度的,执行速度较快。
    • 复杂指令集计算机(CISC): 这种类型的单片机具有更多复杂的指令集,指令长度可以不同,具有更多的操作码,但执行速度可能较慢。
  3. 根据处理器类型分类:
    • 8位单片机: 典型的代表有Microchip的PIC系列和Atmel的AVR系列。
    • 16位单片机: 典型的代表有Microchip的PIC24系列和Atmel的AVR XMEGA系列。
    • 32位单片机: 典型的代表有ARM Cortex-M系列、Microchip的PIC32系列等。

Arduino系列的开发板,是一个基于单片机的开发平台。通常,Arduino开发板上搭载的是一个微控制器芯片,这个芯片包含了一个单片机以及其他必要的外围电路,比如稳压器、时钟电路、通信接口等。

树莓派不是严格意义上的单片机,而是一款单板计算机(Single Board Computer,SBC)。与传统的单片机相比,单板计算机包含更多的硬件组件,例如处理器、内存、输入输出接口、网络连接等,使其更类似于完整的计算机系统。

一些常见的单片机架构:(具体就不做介绍了)

AVR架构 ARM架构 PIC架构 8051架构 MIPS架构 ESP架构等等。

8051单片机内存结构------寄存器组 位寻址区 字节寻址区 特殊功能寄存器(SFR)

0x0000 到 0xFFFF,这是程序存储器的地址范围,用于存储程序代码。这些数据是存储在FLASH中的。

Flash存储器用于存储程序代码,而RAM用于存储临时数据、变量、堆栈等。程序代码从Flash存储器中加载到RAM中,然后由CPU执行。

数字电路与二进制

计算机为什么使用二进制

二进制是一种位值记数法 ,每个位置上的数字的含义由其所在的位置和基数共同决定。

使用两个数字0和1来表示数值。在计算机中,数字是用二进制来表示的,因为电路只能表示电信号的有无,即0或1。因此,所有的计算机数据和指令都是用二进制编码的。用电压5V表示1,电压0V表示0

●计算机的元器件晶体管只有2种状态,通电(1)&断电(0),用二进制可直接根据元器件的状态来设计计算机。

● 而且,数学中的"布尔代数"分支,可以用True和False(可用1代表True,0代表False)进行逐辑还算代替实数进行计算。

●信号容易被干扰,计算机使用接近5V的电压为1,接近0V的电压是0,这样可以有效避免干扰,轻微的电压I波动不会对数据的结果造成影响。

8位的操作系统(只有几KB内存的小单片机),32位的操作系统最大的寻址空间(支持最大内存只有4G),64位的操作系统(目前主流,大内存)

文字储存:ASCII编码,GBK编码,Unicode编码

图片储存:RGB编码(每个彩灯控制一个像素点,256个彩灯就是16*16的分辨率)

推荐网站:https://www.toolhelper.cn/Encoding

布尔运算是逻辑运算的一部分

布尔运算:

  • 布尔运算是指对布尔值(即真值和假值,通常表示为true和false)进行的运算。
  • 布尔运算符通常包括与(AND)、或(OR)、非(NOT)等。
  • 布尔运算的结果也是布尔值,即true或false。

逻辑运算:

  • 逻辑运算是一种推理方法,用于处理命题之间的关系。
  • 逻辑运算符通常包括合取(逻辑与)、析取(逻辑或)、蕴含、等价、否定等。
  • 逻辑运算可以用于判断命题的真假,并推导出新的命题。

尾声

还有待更新,下面就进入数字电路

相关推荐
国科安芯9 小时前
航天器多路并联大功率电源系统设计与ASP4644均流特性分析
单片机·嵌入式硬件·fpga开发·安全性测试
茯苓gao11 小时前
嵌入式开发笔记:CANopen相关移位运算与通信协议术语详解
网络·嵌入式硬件·学习·信息与通信
梁朝辉14 小时前
STM32H750VBT6中ADCINP与INN什么区别
stm32·单片机·嵌入式硬件
省四收割者15 小时前
一文详解信号完整性(1)
python·嵌入式硬件·数学建模·信息与通信·信号处理·智能硬件
崇山峻岭之间16 小时前
单片机无感FOC驱动之ADC
单片机·嵌入式硬件
Ligocious16 小时前
1.点亮一颗小小的LED
单片机·嵌入式硬件
KaifuZeng20 小时前
通信与接口协议面试八、CAN通信
单片机·嵌入式硬件·面试·通信与接口协议
智源单片机设计21 小时前
基于单片机的直流电机双闭环调速系统设计
单片机·嵌入式硬件
KaifuZeng1 天前
通信与接口协议面试一、基本概念
嵌入式硬件·通信与接口协议
wuyk5551 天前
24. C 语言模块化:不是拆几个.c 文件那么简单
c语言·开发语言·stm32·单片机