能力值:
(RANK:350 )
|
-
-
26 楼
《黑客反汇编揭秘》里也有这么一说
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
受教了!
心中一切疑云都已散去!!
|
能力值:
( LV2,RANK:10 )
|
-
-
28 楼
readyu强~~~
|
能力值:
(RANK:330 )
|
-
-
29 楼
含精量这么高的贴,不得不顶.
by the way:VS2005我不知道,2008仍然有这种"优化",也许是你的参数没设置好吧
|
能力值:
(RANK:570 )
|
-
-
30 楼
那就不清楚了。。。不过你想想流水线。。。一条变N条指令,还占用3个寄存器。。。怎么也觉得是慢了的
|
能力值:
(RANK:260 )
|
-
-
31 楼
硬件除法器的效率,不用说比加减,就是比乘法,也至少慢几倍。
硬件乘法器目前的研究已经相当成熟,比如十分常见的化莱氏树并行加法快速乘法器,对于设计好的乘法器,比如很多DSP中的乘加单元,在流水中可以一个周期完成一条乘法(当然是乘法器流水线处于理想状态下),在通常情况下,一条乘法指令可以在4~8个周期内完成。
但除法器要完成一次除法运算,在当今极度优化的硬件上,也至少需要十几个周期。
用乘法替换除法的近似算法,在库和编译器里随处可见。如果配置编译器按最大速度优化,那么编译器很可能会执行这种优化。而如果按最小体积优化,可能就使用硬件的除法指令了。
想起个有意思的事,大家在分析时经常见到51eb851f 这个值吧,这是编译器优化常见的一个值,再配合几次移位可以实现对进制100的除法。
我记得有一次看到一篇破文,作者不明白这个用法,说“这个操作数比较有意思,将它变为十进制为1374389535,不知是不是软件作者的手机号”,着实让我笑了一笑,觉得这个人太可爱,想像力真是太丰富了,可惜手机号是十一位,还差一位啊。
|
能力值:
(RANK:410 )
|
-
-
32 楼
编译优化很神奇,据说对付vm也要用这个东西
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
楼上的,不会是反汇编之后,再编译一次吧。
数学库里面还有很多莫名其妙的常量。
|
能力值:
( LV7,RANK:100 )
|
-
-
34 楼
高深啊呀,读懂你
|
能力值:
( LV2,RANK:10 )
|
-
-
35 楼
只可惜,编译器的优化动作并不工作在这么靠后的位置上
|
能力值:
( LV3,RANK:20 )
|
-
-
36 楼
这个贴,不得不拜
|
能力值:
( LV2,RANK:10 )
|
-
-
37 楼
这个贴,不得不拜
|
能力值:
( LV5,RANK:60 )
|
-
-
38 楼
拜读过,边看书边泡坛子还真的不错。
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
学习了,感謝分享~~~~~
|
能力值:
( LV4,RANK:50 )
|
-
-
40 楼
牛!!!!
我说我咋老看见些很奇怪的值。。
原来有的是函数指针,有的是有如此特效呀。
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
立即数嘛。。
|
能力值:
( LV2,RANK:10 )
|
-
-
42 楼
在这迷湖了很久,受教了
|
能力值:
( LV2,RANK:10 )
|
-
-
43 楼
可能是因为没有好的除法器,但有很好的乘法器,速度很彪悍
|
能力值:
( LV2,RANK:16 )
|
-
-
44 楼
看雪果然大虾云集
而且乐于助人啊,气氛真好
以后继续关注
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
高人,不点拨打死也想不出来了http://bbs.pediy.com/images/smilies/confused.gif
|
能力值:
( LV3,RANK:20 )
|
-
-
46 楼
长见识了,
一直对机器的除法运算不明白
|
能力值:
( LV2,RANK:10 )
|
-
-
47 楼
占位,学习,我今天貌似还遇到了呢!现在知道咋回事了,原来是除法运算。
|
能力值:
( LV2,RANK:10 )
|
-
-
48 楼
这谁想出来的?我靠
|
能力值:
( LV2,RANK:10 )
|
-
-
49 楼
高 这个还真没看出来啊
|
能力值:
( LV13,RANK:970 )
|
-
-
50 楼
这个是编译器优化,除以10也有类似的东西
|
|
|