
2026/08/01 23:09
64ビットアセンブリの技術
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Randall Hyde の新作 792 ページに及ぶ書籍『マシンレベル OOP、例外処理と並行性』(2026 年 6 月出版予定)は、彼の名高い「64 ビットアセンブリの芸術」シリーズの決定版である最終巻です。医学機器や原子力システムなど重要な組み込みシステムにおいて数十年にわたる経験を積んだ専門家が執筆し、この書籍はハイレベルプログラミング概念と、Windows オペレーティングシステムが必要とする実際の指令レベルとの間のギャップを埋めるものです。ランタイムライブラリに依存する一般的なガイドとは異なり、Hyde はオブジェクト、例外処理、虚数テーブル、メソッドディスパッチといった複雑な機能を再構築する方法を、MASM(Microsoft アセンブリ言語)内で直接示します。大学レベルの講師および前著者『アセンブリ言語の芸術』『ARM アセンブリの芸術』、『Write Great Code シリーズ』の作者としての経歴に基づき、本書は継承、Windows 構造化例外処理(SEH)、高階関数のように振る舞う thunk とクロージャ、コルーチン、ジェネレーター、高レベルコードなしで実装されたファイバー、真の並行性同期プリミティブ、Unicode 文字列処理、ドメイン固有のマクロ言語など高度なトピックを扱っています。究極的には、このリソースは業界開発者がクロージャや Unicode 処理といった洗練された機能アセンブリ内で直接構築することを可能にし、標準的な説明で欠けている深い本物の理解を提供します。
本文
メカニズムレベルのオブジェクト指向、例外処理と並行性
発売日: 2026 年 6 月
ページ数: 792 ページ
本書の内容紹介
人工知能に「x86 における仮想テーブル(vtable)の動作原理」を問いただすと、理屈の上での説明は得られても、Windows が実際に vtable をどのように要求しているかや、命令レベルでのメソッドディスパッチの実態、慣用例からの逸脱による不具合については答えられません。本書『64 ビット組立言語の芸術』は、その隙間を埋めるための教材です。
各章では C++ や Python、Rust など高レベル言語(HLL)で利用してきた構文を取り上げ、ランタイムの層を剥ぎ取り、MASM を使用して Windows 上でゼロから再構築します。オブジェクト、例外、クロージャ、コルーチン、並行処理などについて、命令レベルまで分解し、なされたすべての判断を可視化・明確化します。
学ぶべきテーマ
- MASM によるオブジェクト指向プログラム: vtable、メソッドディスパッチ、継承など、すべてを手作業でゼロから構築。
- Windows の構造化例外処理(SEH): 命令レベルでのインストールおよび管理方法。
- スパンク、クロージャ、イテレータ: 1 階関数のような振る舞いを実現する技術。
- コルーチン、ジェネレーター、ファイバー: HLL のコードに頼ることなく実装する方法。
- 並行プログラム: アセンブリ言語から直接、本物の同期プリミティブを用いて構築。
- ユニコード文字列処理: 多くのコードで間違えられているレベルにおいて、正しい方法で行う。
- MASM 内でのドメイン固有のマクロ言語: 第一原理から構築する手法。
組立言語の知識はあるが、難所についてはまだ「信頼」だけで済ませている方にとっては、まさにこの本こそがあなたのための教材です。
著者紹介
ランドル・ハイド氏は、医療機器、原子力システム、組み込みハードウェア向けの組立言語を執筆する 데 数十年にわたる経験を持ちます。これらの分野において「正誤性はオプションではない」という環境で活動してきたためです。また、大学レベルでの組立言語プログラミングの指導にも従事しています。
主な著書は以下の通りです:
- 『アセンブリ言語の芸術』
- 『ARM アセンブリの芸術』
- 『Write Great Code』シリーズ(いずれもノースタッチ・プレッス社出版)
目次
はじめに
- 謝辞
- はじめに
各章の構成
- 高度なマクロ言語
- ユニコード文字列
- 超越関数
- 高度な手続き
- 並行プログラミング
- MASM を用いたオブジェクト指向プログラミング
- 例外処理
- スパンクとクロージャ
- 高度な引数の実装
- イテレータ
- コルーチン、ジェネレーター、ファイバー
おわりに
- 補遺 A: ASCII 文字セット
- 補遺 B: 用語解説
- 補遺 C: Visual Studio のインストールと利用方法
- 索引