PR:この記事にはアフィリエイトリンクが含まれます。
ARM64 アセンブリ本のおすすめを探すと、命令の解説は多く見つかります。ただ、Linux上で実行し、Cやデバッガと連携するところまで学べる本は限られます。AArch64 Linuxを実践したい人は、扱う範囲にも注目したいですね。
アセンブリはレジスタやメモリを直接扱う分、OSとの受け渡しや関数呼び出しの約束も欠かせません。そこまで一冊で追えると、読み終えた後に手を動かしやすくなります。
4冊は、Linuxのシステムコール、Raspberry Piでの開発、命令体系の基礎、GASを使う幅広い内容と、それぞれ学べる範囲が異なります。
早見表
| 本 | Linuxとの距離 | 主な内容 |
|---|---|---|
ARM64 Assembly Language and Architecture | 近い | システムコール、GDB、C連携、クロスコンパイル |
Programming with 64-Bit ARM Assembly Language | 実機寄り | Raspberry Pi、OSサービス、C・Python、GPIO、NEON |
ARM 64-Bit Assembly Language | 命令理解が中心 | GNU Assembly、演習、数値演算、NEON |
The Art of ARM Assembly, Volume 1: 64-Bit ARM Machine Organization and Programming | 広く深い | GAS、データ表現、NEON、マクロ、プロジェクト |
4冊とも64ビットARMが対象ですが、Linuxを動かす実践が中心の本もあれば、命令やプログラム構造を深く掘り下げる本もあります。目指す作業と内容が重なるほど、学んだことを活かしやすいでしょう。
Linuxでの実践を重視するなら、システムコールやOSサービスに加えて、C連携やデバッグも扱うかがポイントです。命令だけで終わらない本なら、普段の開発にも知識を持ち込みやすいですね。
価格は、Programming with 64-Bit ARM Assembly Languageが税別US$54.99、The Art of ARM AssemblyがUS$89.99の公式定価です。実売価格は時期や販売店によって変わるため、購入時に確認しましょう。
ARM64とLinux
ARM64は64ビットARMを指す呼び方で、AArch64もその実行環境を示す言葉として使われます。Linuxの文書や開発ツールでは、arm64、AArch64、aarch64-linux-gnuなど表記がさまざま。似た名前で迷うことがあります。
命令を覚えたら、次はLinuxに処理を頼む方法です。たとえば文字を表示するwriteや、プログラムを終えるexit。ライブラリ関数を呼ぶ方法と、システムコールを直接使う方法があり、ここが実践の入口になります。
Cの関数を呼ぶときの規約と、Linuxカーネルに処理を依頼するときの規約は別物です。引数や戻り値の受け渡しを知っておくと、GDBでレジスタを見たときも「なぜこの値なのか」と納得しやすくなります。
Linuxを動かす一冊
Alan Johnson著のARM64 Assembly Language and Architectureは、2025年発行。GNUツールとGASを使い、writeやexitのシステムコール例からLinux上のアセンブリを学べます。実行して試すところまで進みたい人に頼もしい内容です。
関数呼び出しではARM Procedure Call Standardを取り上げ、callerとcalleeの役割も解説します。Cからアセンブリ関数を呼ぶ例や、Cのインラインアセンブリも収録。単独の命令練習から、既存プログラムとの連携へと視野を広げられます。
GDBでのブレークポイント設定やレジスタ確認、逆アセンブルを例とともに学べます。objdumpやmake、Linux環境を対象にしたクロスコンパイルも扱うため、AArch64 Linuxで実行を確かめたい人に最も合う一冊です。
実機へ広げる一冊
Stephen Smith著のProgramming with 64-Bit ARM Assembly Languageは2020年発行で、428ページ(前付けxxvページ)です。64ビットLinuxを動かすRaspberry Piも対象。ボード上でのプログラム開発を題材にしています。
Linux Operating System Servicesの章ではアセンブリからOSサービスを利用できます。CやPythonとの連携も扱います。さらにGPIO、NEON、コード最適化まで取り上げ、ボード上で動くプログラムを学びたい人におすすめです。
公式定価は税別US$54.99が目安で、実売価格は時期や販売店によって変動します。Raspberry PiのGPIOや言語連携まで学べるのが魅力。Linuxの基本操作とCの読み書きに慣れていれば、応用の章も追いやすいでしょう。
命令を体系化する
Larry D. PyeattとWilliam UghettaによるARM 64-Bit Assembly Languageは、2019年発行。GNU Assemblyの構文を扱い、ロードとストア、分岐、構造化プログラミング、抽象データ型へと進みます。命令を使ったプログラムの組み立て方を、順序立てて学べる本です。
テスト・デバッグ済みのアセンブリとCのソース例に加え、固定小数点や浮動小数点の演算、最適化、NEONも扱います。数値処理の例を通じて、命令が実際の処理にどう結び付くか確かめたい人にぴったりです。
OSなしでの実行を扱う章もあります。そのため、Linuxのシステムコールを中心に学ぶ本とは少し方向が異なります。OSに頼らない低レベルの処理や、命令とアルゴリズムの関係を理解したい人におすすめです。
厚い参照書
Randall Hyde著のThe Art of ARM Assembly, Volume 1: 64-Bit ARM Machine Organization and Programmingは、2025年発行、1,064ページ。GASを使い、データ表現やメモリアクセス、関数、算術、制御構造、文字列処理まで幅広く扱います。
NEONに加え、GASマクロやmakefileを使う複雑なプロジェクト、単独のアセンブリプログラムも収録しています。特定の命令を調べるときにも、複数ファイルからなる構成を追うときにも役立つ一冊です。
公式定価はUS$89.99が目安で、実売価格は時期や販売店で変動します。短期間で読み切るより、必要な章を行き来しながら使う本です。幅広い内容を参照したい経験者におすすめですね。

The Art of ARM Assembly, Volume 1: 64-Bit ARM Machine Organization and Programming
No Starch Press
Amazonで見る学びの接続点
Linuxでの開発は、ソースをアセンブルし、リンクして実行ファイルを作るところから始まります。C関数との連携やシステムコールを試し、GDBでレジスタを確かめると、命令の知識が実行結果につながります。
AArch64 Linuxのシステムコールでは、番号をx8に置き、引数をx0から渡してsvc命令を実行します。通常の関数呼び出しとは引数に使うレジスタの範囲が異なり、この規約の違いは実践で迷いやすい点です。
なお、アセンブリを書けば必ずCより速くなるわけではありません。C版と実行結果を比べ、逆アセンブルでコンパイラの出力を読むのも大切です。最適化やNEONを扱う本なら、その違いを確かめる材料が見つかります。
結論
AArch64 Linuxでシステムコール、GDB、C連携まで試したい人には、ARM64 Assembly Language and Architectureがおすすめです。Linux向けの演習とクロスコンパイルを扱い、実践の入口として目的に直結します。
Raspberry PiでGPIOやPython連携に触れたいならProgramming with 64-Bit ARM Assembly Language。命令や数値演算の基礎を段階的に固めるならARM 64-Bit Assembly Languageが候補です。学びたい内容から選びやすい2冊ですね。
GASの広い内容を長く参照したい人には、The Art of ARM Assembly, Volume 1: 64-Bit ARM Machine Organization and Programmingが頼りになります。Linux実践を最初に学ぶならAlan Johnsonの本を軸にし、必要に応じてほかの本で範囲を広げるのが堅実です。
Amazon の PC をスコア化してみた
Amazonにある8〜14インチの小型WindowsタブレットやノートPCを、スペック別にスコア化して比較・ランキング。




