您的位置首页生活百科

为什么要使用thumb模式,与ARM相比较,Thumb代码的两大优势是什么?

为什么要使用thumb模式,与ARM相比较,Thumb代码的两大优势是什么?

Thumb模式是采集16位的编码方式,这在有些场合下很有应用,相比32位模式,Thumb虽然仅有16位,在代码精简的同时,性能上并没有减少多少。

Thumb指令集不是完整的指令集,它是ARM指令集的子集。但是Thumb指令具有更高的代码密度,即占用存储空间小,仅为ARM代码规格的65%,但其性能却下降的很少。所以,Thumb指令集使ARM处理器能应用到有限的存储带宽,并且,代码密度要求很高的嵌入式系统中去。

扩展资料:

regist:低寄存器的全部或其子集。 括号是指令格式的一部分,它们不代表指令列表可选。列表中至少有1个寄存器。thumb堆栈是满递减堆栈,堆栈向下增长,且sp指向堆栈的最后入口。寄存器以数字顺序存储在堆栈中。最低数字的寄存器存储在最低地址处。

pop {regist,pc}这条指令引起处理器转移到从堆栈弹出给pc的地址,这通常是从子程序返回,其中r在子程序开头压进堆栈。这些指令不影响条件码标志。

参考资料来源:

Thumb模式是采集16位的编码方式,这在有些场合下很有应用,相比32位模式,Thumb虽然仅有16位,在代码精简的同时,性能上并没有减少多少。

使ARM使用更加灵活,完善了软件中断指令的功能和把一些未使用的指令空间捕捉未未定义指令

arm模式和thumb模式是指指令的长度不同。前者是32位的,后者是16位的,更高效一些,不过指令的使用功能也有限。