出自hopper
搜了一大圈,没找到只言片语
求高手赐教
应该是算数右移
1 个赞
的确是移位操作,不理解的是那个SAR函数
相当于hopper帮你模拟了一个函数帮助理解,就当作算数位移看待就好了
好吧,只能去猜了
谢谢!
函数结构不是太复杂没啥外部引用的话可以试试直接用unicorn模拟
好的
sar是一条指令, 你倒是看看汇编啊
2 个赞
汇编一直在看
这段伪代码没想到还有汇编指令,还以为是某个c函数呢
查了一下sar是算数右移,那一行的结果相当于r4 / 2(but why?)
谢过大虾!
你可以那么想,十进制右移一位等于除10;二进制右移一位也对应等于除二。算数右移前面移出的补符号位,这个你可以先不用管的
1 个赞
理解起来还是有点奇怪
10进制里面:
110 / 10 = 011
二进制里面:
101 / 2 = 010 1
吗?
要实现10 / 2
似乎只要逻辑右移一位就行吧
多谢!
恩是的