《算法心得》封面

算法心得

Hacker's Delight

Henry S. Warren Jr. · 初版 2002 年

105人推荐
142位读者提及
169次提及

为什么值得读

  • 详尽解析计算置位数量等位操作算法
  • 所传授的巧妙技巧可直接用于日常工作
  • 系统解答软件层面的位级重构难题

“这是我多年来收集整理的一套小巧编程绝招。其中绝大多数技巧仅适用于以二进制补码(two's-complement)形式表示整数的计算机。尽管在涉及寄存器长度时默认采用 32 位机器,但大部分绝技都能轻松迁移适配至其他寄存器大小的计算机。”“本书并不涉及复杂排序和编译器优化技术等大型技巧,而是专注于通常仅涉及单个计算机字或指令的小巧秘诀,例如统计一个字中 1 位的数量。此类技巧……”

Hacker News 上怎么说

  • 通常情况下用专门的指令肯定是最快的。但如果你需要在软件层面实现 popcount 或者很多其他位操作算法,Henry S. Warren, Jr 2003 年写的《Hacker's Delight》是一本很好的参考书。《Hacker's Delight》第 65 页起讨论了“计算 1 位的数量”(population counts)。有很多纯软件算法可以做到这点。其中一种方法是把每个 2-bit 字段设为……

    Obviously using a dedicated instruction is fastest in normal cases. But if you need to implement popcount or many other bit manipulation algorithms in software, a good book to look at is "Hacker's Delight" by Henry S. Warren, Jr, 2003. "Hacker's Delight' page 65+ discuss "Counting 1-bits" (population counts). There are a lot of software algorithms to do this. One approach is to set each 2-bit field to…

  • 对于喜欢这类问题的人,我强烈推荐《Hacker's Delight》。http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...

    For those who enjoy these kind of problems I highly recommend "Hacker's delight". http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...

  • 如果你有兴趣阅读更多这类内容并了解它们的原理,我强烈建议读读 Henry S. Warren 的《Hacker's Delight》[1]。我知道在我的日常工作中用到了不止几个里面的奇技淫巧。[1] http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...

    If you're interested in reading about more of these, and how they work I'd highly suggest reading the book Hacker's Delight by Henry S. Warren[1]. I know that I've used more than a few of the tricks in my day-to-day work. [1] http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...

  • 每当聊起重排 bits 和 bytes 的话题,我就忍不住要推荐 Henry S. Warren 的《Hacker's Delight》http://amzn.com/0201914654

    Whenever a discussion on rearranging bits and bytes comes up, I can't help but recommend Hacker's Delight by Henry S. Warren http://amzn.com/0201914654

  • 也推荐这本书:《Hacker's Delight》http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...

    Also recommend the book: Hacker's Delight http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...

  • ……介意)。我们学校的核心 CS 系列课程也是用 C 语言,这和别处用 Python、Java 等的地方明显不同。对于任何想深入学习 bit 操作的人来说,Henry Warren 的《Hacker's Delight》是一本神书(http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...)。

    …mind). The core CS sequence in our school is also in C, which differs notably from other places that use Python, Java, etc. For anyone who wants to learn more about bit manipulation, Henry Warren's "Hacker's Delight" is a terrific book (http://www.amazon.com/Hackers-Delight-Henry-S-Warren/dp/0201...).

正在加载完整评论……

键盘快捷键

/
聚焦搜索框
j / k
下一本 / 上一本
Enter
打开选中的书
Esc
关闭 / 返回
g h
回到首页
g b
值得读精选
g t
历史总榜
g r
上升最快
g l
我的书架
?
显示本帮助