1一些特定的指令周期数可变。例如多寄存器装载、存储的load/store指令执行走起就是不确定的,会根据被传送的寄存器个数而定。如果是访问连续的存储器地址,就可以改善性能,因为连续的内存访问比随机访问要快。同时,代码密度也得到了提高,因为在函数的起始和结尾,多个寄存器的传输是很常用的操作。
2内嵌桶形移位器产生了更复杂的指令——内嵌桶形移位寄存器是一个硬件部件,在一个输入寄存器被一个指令使用以前,内嵌桶形移位寄存器可以处理给寄存器中数据。他扩展了许多指令的功能,以此改善内核的性能,提高代码密度。
3Thumb 16位指令集——该指令集使ARM即能执行16位指令,又可以执行32位指令,从而增强了ARM内核的功能,16位指令与32位定长指令比较代码密度提高约30%
4条件执行——只有当某个特定条件满足时指令才会被执行。这个特性可以减少分支指令的数目从而改善性能提高代码密度
5增强指令——一些功能强大的数字信号处理器(DSP)指令被加入到标准的ARM指令之中,以支持快速的16*16 乘法操作及饱和运算。ARM的这些增强指令,使得ARM处理器不需要加上DSP即可实现。