4785| 35
|
[易语言纯源码] CPU切换:x86 & x64 |
点评
我忘记后面执行的是x64模式了 返回地址8个字节,以为4个字节。。。。其实道理都一样,总共8字节,倒叙后前面4字节是0x23就是x86,是0x33就是x64.
栈顶没有预留,备注忽略,搞错了。。。 用了x86指令取栈导致的 忘记x64是8字节了 把切换到x86() 的逻辑搞混了 我忘记后面执行的是x64模式了 返回地址8个字节,以为4个字节。。。。其实道理都一样,
推荐个x64调试器,类似OD可用于编辑x64汇编,我是这样做的,找了好久找不到x64的编辑器https://bbs.pediy.com/thread-217252.htm
切换到x86() 是直接改 多出来的4字节的,就是不知道为何x64模式调用retf就能把4字节消掉 x32模式调用retf却不能消掉。。。
retf指令和x64指令我也不太懂,不清楚为啥还会多出4字节,获取栈指针得出的,在后面x64模式 执行 切换到x86() 时 retf指令却能把本来多出的4字节消除,不清楚为何,OD调试不了 改天研究研究修复这个多出来的4字节
评分 | ||||||||
| ||
sitemap|
易语言源码|
易语言教程|
易语言论坛|
易语言模块|
手机版|
广告投放|
精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司
( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173