はじめに 本稿では、Linuxカーネルの実装1をサンプルとして、簡単なインラインアセンブラ2の読み方を説明します。 前提知識 C言語の基本文法 Intel CPUアーキテクチャの基礎知識 ゴール Linuxカーネルのインラインアセンブラを雰囲気で読めるようになることです。 アセンブラとは C言語は高級言語で、アセンブラは低級言語と呼ばれますが、アセンブラもプログラミング言語の一種です。プログラムはコンピュータ上で動かすことができますが、コンピュータ(CPU)が解釈できる命令は機械語3だけです。 機械語を直接記述するのは大変なので、CPUの命令と一対一に対応した言語が作られました。それがアセンブラです。厳密にはその言語のことを「アセンブリ言語」と呼び、アセンブリ言語を機械語に変換するソフトウェアのことを「アセンブラ」と呼びます。 一般的に、C言語のプログラムはコンパイラにより、アセンブリ言語