硬件架构与汇编指令

1.硬件架构

单片机是SOC(System On Chip),SOC就是在一个芯片上有一个完整的系统或者相对完整的系统

内存是不具有计算功能的,只要储存功能

1.1 RISC

ARM芯片属于精简指令集计算机(RISC:Reduced Instruction Set Computing),它所用的指令比较简单,有如下特点:

① 对内存只有读、写指令

② 对于数据的运算是在CPU内部实现

③ 使用RISC指令的CPU复杂度小一点,易于设计
CPU读取计算写入

对于上图所示的乘法运算a = a * b

在RISC中要使用4条汇编指令:

① 读内存a

② 读内存b

③ 计算a*b

④ 把结果写入内存

在CPU内部,用什么来保存a、b、a*b ?

1.2 CPU内部寄存器

无论是cortex-M3/M4

还是cortex-A7

CPU内部都有R0、R1、......、R15寄存器;

它们可以用来"暂存"数据。
寄存器地址

对于R13、R14、R15,还另有用途:

R13:别名SP(Stack Pointer),栈指针(保持栈的地址)

R14:别名LR(Link Register),用来保存返回地址

R15:别名PC(Program Counter),程序计数器,表示当前指令地址,写入新值即可跳转

2.汇编指令

读内存:Load


写内存:Stroe


加减


比较


跳转

相关推荐
qq_4017004110 小时前
FreeRTOS 堆内存管理源码剖析:释放一块内存,空闲块数量反而变少了?
单片机·freertos
List<String> error_P3 天前
使用FreeRTOS搭建工程项目(一)
freertos
@嵌入式扫地僧10 天前
RTOS 面试实战:任务状态切换原理
freertos·rtos·时间片轮转·任务状态切换·抢占式调度
WWJA王文举18 天前
Bootloader、App 和升级分区之间是什么关系?
stm32·freertos·嵌入式开发·在线升级
怀民民民18 天前
嵌入式软件学习路线与项目实践记录:STM32、FreeRTOS、Linux 与 OpenMV
stm32·freertos·嵌入式软件·嵌入式linux·openmv
长江后浪博客1 个月前
ESP32-SOLO-1 在 ESP-IDF v5.5 下启动不断重启问题分析与解决
单片机·嵌入式硬件·嵌入式·esp32·freertos·esp-idf
WWJA王文举1 个月前
FreeRTOS动态创建任务和静态创建任务详解:xTaskCreate与xTaskCreateStatic区别
操作系统·freertos·嵌入式开发
离凌寒1 个月前
一、关于rtthread nano使用上的细节总结
freertos
桃蹊、1 个月前
串口/网络透传实战:FreeRTOS 多任务架构与连接池设计
stm32·物联网·wifi·freertos
虎王物联1 个月前
ESP32 FreeRTOS多任务优先级翻转与互斥量保护实战
物联网·嵌入式·esp32·freertos