Not、Goto、If-goto【NandGame編】
![Thumbnail of post image 098](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
Notレベルのゴールは、マクロNOTを実装することです。
マクロNOTは、スタックの一番上のデータをビット反転(2進数の各桁でビット反転)します。
Notレベルを解く
POPしてからビッ
Gt、Lt【NandGame編】
![Thumbnail of post image 043](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
Gtレベルのゴールは、マクロGTを実装することです。
マクロGTは、スタックから上から2つの値をPOPして(取り出して)比較します。最初の値が2番目の値より大きければ値-1(=0xFFFF)をPUSHし、そうでな ...
Eq【NandGame編】
![Thumbnail of post image 047](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
Eqレベルのゴールは、マクロEQを実装することです。
マクロEQは、スタックから上から2つの値をPOPして(取り出して)比較します。等しい場合は-1(=0xFFFF)をPUSHし、そうでなければ0(=0x0000 ...
Xで身分証明書による認証を受ける方法
![Thumbnail of post image 184](https://akademeia.info/wp-content/uploads/2023/08/X_logo-150x150.png)
X内に信用スコアのようなものがあれば、そのスコアが向上
Code generation【NandGame編】
![Thumbnail of post image 178](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
コード生成は次の流れの最終処理に該当します。
トークン化⇒構文ツリー化⇒コード生成
コード生成をアルゴリズム(入出力を持つ処理)として見れば、式の構文ツリーをインプッ ...
『サイバーセキュリティの教科書』が発売されました
![Thumbnail of post image 119](https://akademeia.info/wp-content/uploads/2023/11/cover-150x150.jpg)
2023年11月27日に『サイバーセキュリティの教科書』が発売されました。
『サイバーセキュリティの教科書』関連のポストや記事等を集約するために、紹介ページを別途用 ...
ミジンコが気になったお得情報【2023年11月】
![Thumbnail of post image 060](https://akademeia.info/wp-content/uploads/2021/06/buta_money-150x150.jpg)
Grammar【NandGame編】
![Thumbnail of post image 004](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
トークン化の処理後、トークンを構文ツリー化します。
トークンとしては数値、括弧、演算子があります((NandGameではTokenizeレベルで数値、2つの演算子「+」と「-」、普通の括弧「(」「)」だけを処理 ...
Tokenize【NandGame編】
![Thumbnail of post image 156](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
高級言語はアセンブリー言語より人間にやさしく柔軟な構文を持ちます。コンピューターは高級言語のコードを貴秋後コード命令にコンパイルすることで、最終的にCPUが解釈できるようになります。
例えば、2+2 ...
Add、Sub、Neg、And、Or【NandGame編】
![Thumbnail of post image 074](https://akademeia.info/wp-content/uploads/2023/10/NANDGAME_LOGO-150x150.png)
スタックを使えば、特定のレジスターに依存しないマクロ演算(加算や減算など)を実現できます。
代わりに、演算はオペランドをスタックからPOPし、演算結果をスタックにPUSHし直します。
こ ...