Книга The Art of 64-Bit Assembly закрывает разрыв между правдоподобным объяснением и настоящим пониманием. Речь идет о низкоуровневом устройстве, которое обычно остается за кадром. Если спросить AI, как работают vtables (таблицы виртуальных методов) в x86, он выдаст ответ, который звучит разумно, но не покажет, что Windows действительно ожидает от структуры vtable, почему method dispatch (диспетчеризация методов) ведет себя именно так на уровне инструкций и что ломается, если отступить от принятых соглашений. Каждая глава берет конструкцию, которую вы использовали в C++, Python или Rust, снимает с нее среду выполнения (runtime) и заново собирает с нуля в MASM, работающем под Windows. Объекты, исключения, замыкания, корутины, конкурентность — все это разбирается на уровне инструкций, каждое решение сделано видимым и явным. Книга не оставляет места догадкам — каждый механизм показан в деталях.
Вот что вы сможете сделать, пройдя все главы. Вы научитесь создавать объектно-ориентированные программы на MASM: vtables (таблицы виртуальных методов), method dispatch (диспетчеризацию методов) и наследование — все вручную, с нуля. Вы разберетесь с Windows SEH — структурной обработкой исключений — как устанавливать ее и управлять ею на уровне инструкций. Вы создадите thunks, closures и iterators, которые работают как функции высшего порядка. Вы реализуете корутины, генераторы и файберы без единой строчки на HLL. Вы напишете конкурентные программы с настоящими примитивами синхронизации прямо на ассемблере. Вы освоите правильную работу с Unicode на том уровне, где большинство кода ошибается. И, наконец, вы построите предметно-ориентированные макроязыки внутри MASM с нуля, из первых принципов.
Если вы уже знаете ассемблер и хотите перестать принимать сложные части на веру — эта книга для вас.