QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1513|回复: 0
打印 上一主题 下一主题

计算机算法大全...

[复制链接]
字体大小: 正常 放大

12

主题

9

听众

38

积分

升级  34.74%

  • TA的每日心情
    慵懒
    2015-5-5 09:35
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    自我介绍
    sdc
    跳转到指定楼层
    1#
    发表于 2015-4-15 09:47 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    注:此文绝非标题党,望耐心看完。
    $ n4 V5 Z1 V% ]" a+ I引子:思量好久,觉得有必要说说这本书《算法心得:高效算法的奥秘》(英文书名Hacker's Delight, 2nd Edition)。
    8 l6 r% P& H/ ]. {1 A% H本书讲解的题材,可以说市面上仅此一本(如果不算第一版的话),可以说是唯一一本讲解计算机算法的图书——而其他的算法书,则基本上全部是讲解数学算法的图书。虽然说数学算法也主要是为计算机科学服务的,但是数学算法基本上不关心计算机体系结构的细节:CPU的字长是多少?字节序是大端还是小端?带符号数和无符号数如何区分?浮点数格式采用什么标准?可以这样说:运行着数学算法的计算机,其实是图灵机——一种抽象的、在真实世界中并不存在的机器。
    1 ]8 v* e1 w8 |8 ?然而真正在实现一台计算机的过程中,计算机体系结构的细节则是极端重要的了:它们提供了数学算法中被忽略掉,但却可以用于优化的结构信息。如果说,在数学算法中,四则运算已经属于“原子”操作,那末在计算机算法中就有必要打碎这些“原子”,进入“亚原子粒子”的世界。加减法和乘除法,那肯定是要分开来讨论的,因为后者绝对要复杂得多,特别是除法。本书极其重视区分逻辑上的(数学的)数,和物理上的(真正计算机中的)数,甚至将前者用普通字体表示,后者用粗体表示。本书花了极大的篇幅,来细致地讨论数的物理表示,以及每一种基本的计算操作——计数、定位、四则运算、初等函数,等等——真正在比特这个层级上,将这些基本操作的全部细节条分缕析地展现出来,尽可能地利用任何可能的体系结构特征,来尽可能充分地利用高速存储、简化哪怕一条计算机指令,并且如数家珍地列举出每一条优化建议背后的原理。这些内容,展示了极其高超的匠艺,读来却没有丝毫的匠气。真正是亲手设计过计算机体系结构、在底层浸淫多年的经验总结,整理出来的心得和资料。8 V, A+ C- I2 E
    如果对计算机体系结构有兴趣,以及需要从早期阶段设计计算系统(比如嵌入式系统)的工程师,或是参与语言的低级库设计的程序员,这本书就是无价之宝。
    0 c6 N+ Z/ D: Q. e( |想知道你每天使用的C语言的数学运算编译成的机器指令是怎么生成的吗?想知道库函数为什么执行起来那么高效吗?这本书里就是这些问题的答案,它荟萃着的是计算机工程的骄傲。正好比尽管所有普通人都习惯于生活在原子的世界,但亚原子粒子世界才是前者存在的根本理由。
    2 c  o+ @4 p" O3 H把这本书放在书架上吧,可能它并不是你天天都要翻阅的图书,但如果你有朝一日真需要本书中的内容,别的地方可是找不到的。. X7 R  }7 U- G6 O
    9 e# }/ a5 b( i1 C& d
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-7-23 12:39 , Processed in 0.624704 second(s), 53 queries .

    回顶部