首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
Android安全
发新帖
2
0
[求助]ARM 中mvb R0, #2如何转换为十六进制的指令码的?
发表于: 2013-6-17 22:08
7052
[求助]ARM 中mvb R0, #2如何转换为十六进制的指令码的?
mitou
2013-6-17 22:08
7052
看到一篇文章中将
MOVS R0, #2
POP {R3, PC}
汇编代码变成了char insertcode[] = "\x02\x20\x08\xBD";这句话,不知道是如何计算过来的?
文章地址:
429K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3S2A6i4K6u0W2j5X3q4A6k6s2g2Q4x3X3g2U0L8$3#2Q4x3V1k6Z5j5i4u0J5P5g2)9#2k6X3I4A6L8h3g2Q4x3V1k6A6N6r3g2E0i4K6u0r3x3o6p5H3z5e0p5%4x3$3c8S2z5r3x3K6z5e0l9&6k6o6j5K6x3$3q4X3k6X3p5#2
谢谢!
[培训]科锐逆向工程师培训第53期2025年7月8日开班!
收藏
・
2
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
1
)
mitou
雪 币:
208
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
2
回帖
7
粉丝
0
关注
私信
mitou
2
楼
哦,搞定了。
首先得明确知道这段汇编代码是Thumb状态的16位汇编指令,android下的存储格式是小端格式。
所以根据这段c代码"\x02\x20\x08\xBD”知道这段汇编代码实际的指令码是:
MOVS RO, #2 ---> 0x20 0x02
POP {R3, PC} ---> 0xBD 0x08
验证下:
查看资料MOV指令的编码格式
pop指令的编码格式
注:下面推测的,书上还没找到答案
MOVS 指令里面的S表示影响CPSR寄存器,不知道为什么这个S不需要写进指令码里面。
MOV指令编码格式中的Rd只有三位,刚好可以表示R0-R7八个寄存器。
POP指令编码格式中的register_list八位,每一位表示一个寄存器,例如有R3寄存器时,第三位则为1。
上传的附件:
mov指令编码.png
(86.97kb,97次下载)
pop指令编码格式.png
(63.65kb,93次下载)
2013-6-18 14:59
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
mitou
2
发帖
7
回帖
10
RANK
关注
私信
他的文章
[求助]ARM 中mvb R0, #2如何转换为十六进制的指令码的?
7053
[求助]看看雪客户端源码中ImageViewWithCache中疑问?
5010
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部