ARM基础

1.  将32位a的【7:4】改成0101 -> a = a&(~(0xF << 4)) | (0x5 << 4);

2.  32位:单次处理数据32位。

3.  对于CPU而言,一切皆内存;

4.  DMA总线:不经过CPU直接在内存和内存间交换数据。DMA控制器存在控制转移权的问题。

5.  指令集:识别的汇编指令的集合、

6.  CISC:指令长度和周期不固定。

7.  Jazelle:单子节(加速Java bytecode)。

8.  ARM默认小端:低地址,低字节。(一个数据内部)

9.  软中断是利用硬件中断的概念,用软件方式进行模拟,实现宏观上的异步执行效果。(linux 用户态和内核态切换)

10.  特定的模式下执行特定的代码,完成特定的功能。

11.  特定的模式拥有特定的权限,能访问的寄存器是特定的。

12.  程序员能使用的cpu资源只有寄存器。

13.  r15 = pc, r14 = LR(链接寄存器:子函数返回到下一条语句 pc = LR,非叶子函数会覆盖,要先压到栈里)。

14.  r13 = sp(栈指针;压栈保护现场)

15.  子程序调用前后,栈指针指向同一个位置。

16.  sp:stack pointer;   lr:link register  pc:program counter 。

 

转载于:https://www.cnblogs.com/oyjngz101/p/6062795.html

你可能感兴趣的:(ARM基础)