问题描述
最近,我检查了指令集的ARM Cortex-M3处理器。
例如:
recently i checked the Instruction Set for an ARM Cortex-M3 processor.For example:
ADD <Rd>, <Rn>, <Rm>
怎么做那些abbriviations意味着什么?
我猜他们的意思是不同的地址,如directely解决,相对寻址左右。
但究竟是什么?
What do those abbriviations mean exactly?I guess they mean different kinds of addresses, like directely addressed, relatively addressed or so.But what exactly?
谢谢!
推荐答案
形式的操作数&LT; Rx和GT;
引用通用寄存器,即 R0-R15
(或接受别名,比如 SP
, PC
等)
Operands of the form <Rx>
refer to general-purpose registers, i.e. r0-r15
(or accepted aliases like sp
, pc
, etc.).
我不知道,如果它曾经叫了专门地方,但存在的D的一般模式意的目的地,T,意思是目标,N,意思是第一个操作数或基址寄存器,M意第二个操作数,偶尔一的意思累加器。因此,为什么你可能会看到像&LT命名;一个Rdn&GT;
(在破坏性的双操作数指令),或&LT;保留时间&gt;中&LT;将Rt2&GT;
(其中一个64位的值跨越一对GP寄存器持有)。这是跨越其他类型的寄存器的一致也是如此,例如 VADD.F32&LT; SD&GT中,&lt;锡&GT中,&lt;钐方式&gt;
I'm not sure if it's ever called out specifically anywhere but there is a general pattern of "d" meaning destination, "t" meaning target, "n" meaning the first operand or base register, "m" meaning the second operand, and occasionally "a" meaning an accumulator. Hence why you might spot designations like <Rdn>
(in the destructive two-operand instructions), or <Rt>, <Rt2>
(where a 64-bit value is held across a pair of GP registers). This is consistent across the other types of register too, e.g. VADD.F32 <Sd>, <Sn>, <Sm>
.
这篇关于是什么在集ARM的指令abbriviations(RN,RD ...)是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!