ARM体系结构

内存管理

(多进程) 

栈:局部变量 函数参数 函数返回地址
堆:程序员自己管理的内存区域,使用时需要动态申请, ---- 释放
bss : 初始化为 0 和未初始化的全局及静态变量
        bss段(未手动初始化的数据)并不给该段的数据分配空间,只是记录数据所需空间的大小;
data :初始化不为 0 全局及静态变量
        data段(已手动初始化的数据)则为数据分配空间,数据保存在目标文件中;
(全局变量初始化不为0会增加代码所占空间)
bss和data段整个区段被称为数据区

ARM处理器

 

 RAM 

 RAM: (random access memory)随机存储器
                --快  掉电数据丢失

SRAM DRAM  SDRAM DDR(n)
静态  动态(电容+晶体管  需要刷新)(时钟)同步  SDRAM 2及以上版本

  ROM

 ROM: (read only memory)  只读存储器

                --慢  掉电数据不丢失

  PROM                     EPROM           EEPROM
    可编程          可擦除可编程      电子可擦除可编程
(只能写一次) (用光擦除,擦除范围较难控制)   用电擦除     

  Flash

 Flash:闪存

                --快 掉电数据不丢失

线性访问 

                        有专门的地址总线和数据总线(可以像内存一样访问)   

                          norflash : 或非门 可线性访问

                         nandflash : 与非门 不可线性访问

CPU结构 

计算机两大结构 

   计算机结构
       冯诺依曼结构

                数据和指令一起存储

        (速度较哈佛结构慢些,同一时间只能存取一条指令或一条数据)

         哈佛结构

                数据和指令分开存储(下图属于哈佛结构)

        (速度更快,同一时间可以同时存取一条数据和一条指令)

CPU构成

寄存器: R0~R12
PC: 程序计数器, 默认值为 0 , 做自加运算, 实际指向正在运行的下下条指令
LR: 链接寄存器 保存函数的返回地址
SP: 栈指针寄存器, 指向栈顶
       增栈:从低地址向高地址增长
        减栈:从高地址向低地址增长
        满栈:存数据时,栈顶指针先加一再存数据,栈顶指针指向新入栈的数据
        空栈:存数据时,数据先存入栈顶指针指向的空间,再加一,此时栈顶指针指向空
使用满减栈:
        减栈:若数据入栈溢出时 不会溢出到内核区,而是堆区
        满栈:当最后一个数据出栈后,栈顶指针不会越界
CPSR: 运算结果为正、负、进借位、结果为 0 等标志, 中断的使能, 工作状态,工作模式
SPSR: CPSR 的备份
Cache: 缓存
MMU : 内存管理单元 ( 虚拟地址到物理地址的映射 )

   Soc 

                                                                    

CPU :中央处理单元
MCU :微控制器     51 单片机
MPU :微处理器      intel
DSP :数字信号处理器
FPGA :现场可编程门阵列 -- 硬件设计语言

 总线

数据总线:
地址总线:
控制总线:读写信号等
AHB :高速总线
APB :低速总线

                                         

指令集

RISC :精简指令集
CISC :复杂指令集

ARM版本

Cortex-A 低功耗 消费类
Cortex-R 实时性
Cortex-M 高性能,偏控制

ARM9
指令集架构 ( 版本 ): armV4

汇编指令 

程序状态寄存器 

N:符号位,结果为负数则N=1,正数为0

Z:结果为0,则Z=1;(通常用来表示比较的结果为“相等”)

C:发生进位,借位置1

V:发生溢出置1


   立即数

         一个数(或其按位取反后)循环右移偶数位后所有的1能放进低8位中

#0xffff ffff 0不是立即数

#0xffff ffff 00是立即数

#0x40001000不是立即数

所以不能用mov sp,#0x40001000

使用ldr sp,=0x40001000 

add.s

main.c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值