PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] 请问指令排放方法跟endian有关吗?
楼主:
os653
2014-11-04 12:46:31
我知道如果对象是单纯的资料
0x12345678 在 Little Endian 的情况下会存成 78 56 34 12
在 Big Endian 的情况下会存成 12 34 56 78
那么,如果对象是指令会存成什么样子?跟 CPU 是几位元的有关系吗?
如果没误会的话,我好像看到 0x4CF000 的 opcode 被存成 4C 00 F0
请问这是有可能出现的正确存法还是我弄错了?
作者:
carylorrk
(carylorrk)
2014-11-04 12:51:00
指令也是资料,当然跟 endian 有关。
楼主:
os653
2014-11-04 12:55:00
其实主要是想搞清楚 0x4CF000 的储存方式,感觉哪里怪怪的
作者:
azureblaze
(AzureBlaze)
2014-11-04 13:52:00
x86的opcode是以byte为单位定义,没有这个问题他会写4C F0 00 照顺序放就是了
作者:
purpose
(秀才遇到肥宅兵)
2014-11-04 13:57:00
你是把指令里面的算子当成 opcode 吧才觉得有关吧比如要 push 某位址,这个内存位址就会照 endian
作者:
tjjh89017
(伊达政宗)
2014-11-04 14:34:00
应该要这样看 0x4C, 0xF000 两项来看
楼主:
os653
2014-11-04 14:42:00
那请问如果指令从4C变成4C4D,位址依旧是F000存起来会变成 4C 4D 00 F0 还是 4D 4C 00 F0 呀?
作者:
dirkc
(3781615)
2014-11-04 15:23:00
前者;但4c在x86是dec esp,没有data部份,猜测你的cpu不是x86原则如三、四楼所说
楼主:
os653
2014-11-04 15:57:00
感谢各位解说的这么清楚,我了解囉
继续阅读
[问题] gaussian noise问题
davis20204
[问题] 猜拳游戏与赌金
OhyaPTT
[问题] Clang 奇怪的问题,跟compare functor有关
saladim
Re: [问题] bit_operation除非2的幂次方
KILLE
Re: [问题] 如何取得系统总内存的位置
pizzafan
[问题] msmpi
rx800102
[问题] bit_operation除非2的幂次方
kdok123
Re: [讨论] 大一教授出了OP的作业
flydragon198
[问题] mac使用codeblock编辑C++时强制关闭
acardia
[讨论] 大一教授出了OP的作业
HaoCherHong
Links
booklink
Contact Us: admin [ a t ] ucptt.com