我正在使用 pcspim 模拟器,我的处理器是 Intel x86(小端)
据我了解,声明 .word -5 应在内存中放置以下字节 1111 1011 1111 1111 1111 1111 1111 1111(小端序)。但是模拟器 pcspim 以大端顺序将这个词放在内存中,这意味着:1111 1111 1111 1111 1111 1111 1111 1011。谁能解释一下?提前致谢,
xyoavx
我正在使用 pcspim 模拟器,我的处理器是 Intel x86(小端)
据我了解,声明 .word -5 应在内存中放置以下字节 1111 1011 1111 1111 1111 1111 1111 1111(小端序)。但是模拟器 pcspim 以大端顺序将这个词放在内存中,这意味着:1111 1111 1111 1111 1111 1111 1111 1011。谁能解释一下?提前致谢,
xyoavx
spim 文档说:
SPIM 的字节顺序与运行模拟器的底层机器的字节顺序相同。
所以你是对的,你机器上的字节顺序应该是小端。您确定您正在查看字节顺序视图吗?如果您一次查看内存字,那么您正在查看的视图通常会调换字节。例如:
按字节:
fb ff ff ff ff ff ff ff
ef cd ab 89 67 45 23 01
按字:
fffffffffffffffb
0123456789abcdef
另一种可能性是您的 pcspim 构建实际上是在模拟一个大端处理器。