21/07/23 06:30:41.75 BjmNFMBr.net
>>612
例えばC#なんかだとDelegateって形で方式自体が変わっててあまり細かく触れない代わりにガッチガチにセーフティーに作ってるからそこまで行けばむしろ清々しい。
逆に細かに設定出来るアセンブラでは
Cで言うところのテーブルジャンプがまず基本。レジスタにテーブルトップアドレスを入れてオフセットを設定することで間接修飾して簡単に実現出来る。
それから他の言語では概念がないから説明が難しいけど関数の飛び先を指定するのではなく、スタックエリアの内容とスタックポインタを操作して関数の戻り先を操作することが出来る。
これにより幾つもの分断されたコードをそのときのステータスでロードマップを決めつつ処理を実施することが出来る。
先程マリオやゼルダかがObject指向で作られていると書いた人がいるけどあれは嘘。
そもそも1/60秒で1画面描写分の設定を行わなければいけないのにヒープエリアにスタティックエリアのコードをコピーしているような時間はないしファミコンはヒープエリア自体が無い。
けどテクモのスーパーボウルとかは先程言った方式で各選手の動きとかを作っていたりする。