JVMバイトコード命令の深い理解:後編

前回の記事ではJVMのバイトコード命令のうち、ロード・ストア命令、算術命令、型変換命令について解説しました。本記事ではバイトコード命令の後編として、メソッド呼び出しと戻り値、制御転送、例外処理、同期処理に関する命令について詳しく解説します。 IntelliJ IDEAのjclasslibプラグインを使用してコンパイル後のバイトコード命令を確認することができます。 メソ ...

7月10日 16:26 投稿

コンピュータシステムの状態機械モデル

コンピュータシステムはすべて状態機械として理解できます。単純なコンピュータシステム(オペレーティングシステムなしでプログラムがCPU上で直接実行されるシステム)でさえ、三つの抽象化レベル(プログラム、命令セット、CPU)はすべて状態機械として解釈できます。 プログラムは状態機械である C言語の構成要素: 変数:計算の対象 文:計算の操作フロー 入出力関 ...

6月20日 17:03 投稿

プログラミングにおけるマシンレベル表現 - 定数、変数、演算

📚 注意事項 本ブログの内容は学習目的にのみ使用してください 考え方を理解した後、独自で実装することをお勧めします ご意見・ご質問をお待ちしています タスク : 定数、変数、演算 32ビット定数のロード int f() { return 0x123; /* 291 */ } int g() { return -1; } int h() { return 0x1234; /* 4660 */ } int i() { return 0xbb8; /* 3000 */ } rv32gcc -O2 -c a ...

6月4日 22:58 投稿