【学習メモ】低レイヤを知りたい人のためのCコンパイラ作成入門
教材
その他参考
環境:
macOS なので、Docker による仮想環境を利用
ARM64
第一章
プログラムカウンタ(PC)・インストラクションポインタ(IP)・・現在実行中の命令のアドレスのこと
CPUの「分岐命令」
「命令セットアーキテクチャ」「命令セット」・・特定の機械語の命令の総称
アセンブラにおいては、第一引数はRDIレジスタ、第二引数はRSIレジスタに入れるようになっている
x86-64の整数演算命令は通常2つのレジスタしか受け取らない
関数呼び出しはスタックを使って実装されている
文法の記述方法と再帰下降構文解析
BNF と EBNF
EBNF は BNF に簡潔に書くためのいくつかの記号を追加したもので、生成可能なもの自体は等しい
文脈自由文法
1 つの生成規則を1つの関数にマップという構文の解析方法を「再帰下降構文解析」という。
LL(1)パーサ