Assembly 什么';什么是补偿?

Assembly 什么';什么是补偿?,assembly,mips,offset,Assembly,Mips,Offset,我一直在MIPS指令表中看到偏移字,如: +--------------------------------------------------------------+ |贝基| +--------------------------------------------------------------+ |说明:| | | |如果两个寄存器相等,则执行分支| +----

我一直在MIPS指令表中看到偏移字,如:

+--------------------------------------------------------------+
|贝基|
+--------------------------------------------------------------+
|说明:|
|                                                              |
|如果两个寄存器相等,则执行分支|
+--------------------------------------------------------------+
|操作:|
|                                                              |

|如果$s==$t advance\u pc(offsetoffset,就拓扑而言)是有序集合中的移动向量。当且仅当存在一个起始元素时,才可定义offset,与之相比,您定义了移动。假设您具有

(x1,…,xn)

如果需要从该点聚焦移动,则偏移向量可以定义为

(o1,…,on)

结果是:

(x1+o1,…,xn+on)

如果您有一个有序列表,那么数字偏移量o将告诉您应该处理的索引

在计算机科学中,数组或其他数据结构中的偏移量 对象是一个整数,表示与对象的距离(位移) 从对象的开始到给定的元素或点,大概是 在同一物体内。只有当所有物体 对象的元素大小相同(通常以字节为单位) 或文字)

引用自。但是,该引号有点不准确,因为距离不要求具有大小相等的对象,因此相关性是度量空间的存在。此外,该引号告诉您必须在代数结构中具有最小的元素,这不完全是相关性。更一般地说,您需要具有定义良好的s起点


在您的特定情况下,偏移量是一个以字节为单位的数值,表示内存中某个位置的移动向量。请注意,32位是四个字节,这就是为什么偏移量为4的原因。

还有一个数学解释:分支相对于程序计数器。偏移量表示距离“当前”有多远PC值(添加到PC以到达目的地的偏移量)。在汇编中,偏移量通常由汇编程序计算,因此您只需将目的地放在那里。

。基本上,它是一个增量。
+--------------------------------------------------------------+
|                           BEQ                                |
+--------------------------------------------------------------+
| Description:                                                 |
|                                                              |
| Branches if the two registers are equal                      |
+--------------------------------------------------------------+
| Operation:                                                   |
|                                                              |
| if $s == $t advance_pc (offset << 2)); else advance_pc (4);  |
+--------------------------------------------------------------+
| Syntax:                                                      |
|                                                              |
| beq $s, $t, offset                                           |
+--------------------------------------------------------------+
| Encoding:                                                    |
|                                                              |
| 0001 00ss ssst tttt iiii iiii iiii iiii                      |
+--------------------------------------------------------------+