mips - 大端和小端

标签 mips cpu-architecture endianness mips32

给出的是字节寻址计算机的内存快照。如果机器是大端字节序,而机器是小端字节序,则执行lw $16, 24($17)指令后将加载到寄存器$16中的内容。寄存器 $17 包含 200

enter image description here

现在根据我的说法,无论是小端还是大端,都会从内存中复制四个字节(224-227),然后如果机器是大端,那么它们将被复制到按原样注册。

如果机器是Little Endian则将反转然后复制到寄存器。

如果我的概念有误,请指导我。

最佳答案

你是对的。

从技术上讲,在大端模式下,最高有效字节是具有最低地址的字节,而最低有效字节是具有最高地址的字节。在little-endian模式下,最高有效字节是地址最高的字节,最低有效字节是地址最低的字节。

因此 $16 寄存器的内容将是

如果是大尾数 -> BADADBBD 如果是小尾数 -> BDDBDABA

关于mips - 大端和小端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8050107/

相关文章:

assembly - MIPS 计数 MARS 中 1's given a user input (B instruction doesn' t 跳转的数量)

c - MIPS 嵌套函数调用

caching - 为什么英特尔使用虚拟索引物理标记缓存而不是 VIVT 或 PIPT?

memory - 内存地址是否总是指一个字节,而不是一位?

c++ - 将字节数组转换为具有字节序问题的指针

c - 具有 htonl 和 ntohl 功能的 pdp endian

c - 如何在 C 中读取 5 个字节到有意义的 uint64_t?

assembly - MIPS 指令 J 格式

assembly - Mips:计算两个输入的总和

performance - double 运算 : 32-bit vs 64-bit machines