《64 位汇编的艺术》第二卷

查看原文 HN 讨论

文章摘要

这是 No Starch Press 出版的《The Art of 64-Bit Assembly, Volume 2: Machine-Level OOP, Exceptions, and Concurrency》(64 位汇编的艺术,第二卷:机器级面向对象、异常与并发)的图书页面。作者是 Randall Hyde,2026 年 6 月出版,792 页,ISBN 9781718504349,纸质书加电子书 79.99 美元。

出版方的宣传文案开门见山地把这本书定位为「对抗 AI 式理解」的产物:你可以让 AI 解释 x86 上的 vtable 是怎么工作的,它会给你一段听起来很对的东西;但它不会告诉你 Windows 实际期望的 vtable 长什么样、方法分派在指令级别为什么是那个行为、以及一旦偏离约定会坏在哪里。这一卷要填的,就是「听起来合理的解释」和「真正的理解」之间的鸿沟。

全书的方法论是统一的:每一章挑一个你在 C++、Python 或 Rust 里用惯了的语言构造,剥掉运行时,在 Windows 下用 MASM 从零重建它,把每一个决策都显式地摊开在指令层面。目录包括:高级宏(第 1 章,可免费下载试读)、Unicode 字符串、超越函数、高级过程、并发编程、用 MASM 做面向对象编程、异常处理、thunk 与闭包、高级参数实现、迭代器等。具体产出物包括:手工从零实现 MASM 里的 vtable、方法分派和继承;在指令级别安装和管理 Windows 结构化异常处理(SEH);实现行为类似高阶函数的 thunk、闭包和迭代器;不借助高级语言实现协程、生成器和 fiber;直接用汇编写出带真正同步原语的并发程序;正确处理 Unicode 字符串;以及在 MASM 内部从第一性原理构建领域专用宏语言。文案的收尾是:「如果你已经懂汇编,并且想不再对那些难点抱着信任的态度,这本书就是为你写的。」

作者 Randall Hyde 数十年来为医疗设备、核系统和嵌入式硬件编写汇编——这些领域里正确性不是可选项。他曾在大学教授汇编语言课程,著有《The Art of Assembly Language》《The Art of ARM Assembly》以及《Write Great Code》系列,全部由 No Starch 出版。

HN 评论精华

必须先说明一件事,因为它本身成了讨论的一部分:skippyfish 在帖子后段发了一条元评论,精准概括了这场讨论的走向——「这是一本近 800 页、关于编程艺术的书,一个本该让我们心动的话题上的巨大工作量。可讨论居然只有三个主题:五十多条『我不喜欢宣传文案的第一句话』、『我不喜欢作者用的工具』、还有『如果拿这本书训练 LLM 会怎样』。有人读过试读章节吗?喜欢吗?这儿有人有第一卷并且能谈谈感想吗?」下面的内容大体印证了他的判断。

主线一:LLM 时代还有人写汇编吗

主线二:为什么是 MASM

主线三:文案是不是 AI 写的,以及「训练进去就没用了吧」

关于书本身的少数实质评价