CASL II COMET II PUSHの挙動がすごく変態的。
実効アドレスをプッシュするという意味の分からない感じ。
GR1 ~ GR7を PUSH するのはそれでも
PUSH 0,GR1
とかでできるのだが…
GR0は…指標レジスタではないため実効アドレスに喰わす事は出来ない。
命令一つで退避できない PUSHってどうだろう。
CASL II COMET II ではふつうのマルチタスクの勉強をしようとすると、
どうしても2,3個は仕様を追加しないといけないと思う。
StackPointerを設定する方法と割り込み。
CASL IIIを作る予定があれば
LDSP r
みたいなスタックにロードできる命令の追加と、割り込み時の動作の明確化が欲しいかな。
まあ、たぶん一生情報処理系試験は受けないだろうけど。
0 件のコメント:
コメントを投稿