... или 00000100000100101101001010000000 412D280
Почему вы думаете, что add t1, t2, t3
может храниться так?
В руководствах по CPU (например, в руководствах MIPS) инструкции обычно описываются так:
+--------+-------+-------+-------+-------+--------+
| 000000 | Reg 2 | Reg 3 | Reg 1 | 00000 | 100000 | ADD
+--------+-------+-------+-------+-------+--------+
И в этом типе рисования старший бит находится на левой стороне, а младший бит на правой стороне.
Это означает, что 00000001010010110100100000100000 или 0x014B4820 является правильным.
Однако это не имеет ничего общего с большим и маленьким порядком байтов!
Большой и младший байты используются для определения того, как байты, 16-битные значения и 32-битные значения связаны в памяти:
Число 0x12345678 хранится как четыре байта 0x12, 0x34, 0x56, 0x78 или как четыре байта 0x78, 0x56, 0x34, 0x12?
В обоих случаях инструкция add t1, t2, t3
сохраняется так же, как и 32-битное число 0x014B4820.
Однако в системе с прямым порядком байтов это число сохраняется как четыре байта 0x20, 0x48, 0x4B, 0x01; в системе с прямым порядком байтов это число сохраняется как четыре байта 0x01, 0x4B, 0x48, 0x20.