Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 应汇总有效地址';包装';在PowerPC中?如果是,怎么做?_Assembly_Powerpc - Fatal编程技术网

Assembly 应汇总有效地址';包装';在PowerPC中?如果是,怎么做?

Assembly 应汇总有效地址';包装';在PowerPC中?如果是,怎么做?,assembly,powerpc,Assembly,Powerpc,例如,PowerPC第一册第3.3.2节将lbz指令定义为: 让有效地址(EA)为(RA | 0)+D之和。由EA寻址的存储器中的字节加载到RT56:63中。RT0:55设置为0 在以下两种情况下我应该怎么做 当(RA)+D>内存容量时,我应该打包还是做些什么 当(RA)+D>4294967295时,我应该打包还是做些什么 换句话说,有效地址只是(RA)+D之和,还是计算完成了mod memory\u capacity或mod 2^32-1 相关实用材料:在功率ISA 2.06手册第1.9.

例如,PowerPC第一册第3.3.2节将
lbz
指令定义为:

让有效地址(EA)为(RA | 0)+D之和。由EA寻址的存储器中的字节加载到RT56:63中。RT0:55设置为0

在以下两种情况下我应该怎么做

  • (RA)+D>内存容量
    时,我应该打包还是做些什么
  • (RA)+D>4294967295
    时,我应该打包还是做些什么
换句话说,有效地址只是
(RA)+D
之和,还是计算完成了
mod memory\u capacity
mod 2^32-1


相关实用材料:在功率ISA 2.06手册第1.9.3节有效地址计算中设置var EA的每一行

在32位模式下,64位结果的低位32位, 前接32 0位,构成64位有效 用于寻址存储的地址。[…]用于寻址存储时 出现有效地址算法 从最大值开始环绕 地址,232-1,到地址 0,但如果当前 指令在有效地址 232-4有效地址 下一个顺序指令的 未定义


如果我通过对分配给有效地址的所有值应用
mod 4294967296
来实现这一点,我是否正确地解释了这一点?X&0xFFFFFFFF更容易、更快。