アダルト・ヴァイオリン May the force be with you..

2005年9月9日

自作CPUとコンパイラのエンハンス

Filed under: 組込みシステム — @ 6:48 AM

テキストのCPU用のコンパイラが大きなプログラムを容易にコンパイルできるように
ほんの少しだけ、命令セットの拡張を行った。
ただし、講習会で行う内容に影響が出ないように、テキストにある命令は
バイナリコンパチブルで、クロック数を含めて全く同一となるように実装した。

追加命令を扱えるようにアセンブラも改造したが、
ついでにラベルの自由度を上げることにした。

もともと教育用に作成しているため、シンボルテーブルを持たず
L000から始まる数値を含んだラベルだけを扱っていたが、
コンパイラの拡張に対応可能なようにラベルはシンボルテーブルを
用いて管理することにした。

これらの改造にともない、コンパイラも、前は関数は1つだけしか許さなかったのを
自由に関数を定義して使えるようにした。

もちろん、コンパイラの生成するコードは、コンテストの課題にしていたから
従来のソースコードを与えたときには完全に一致するコードを出さなくては
ならない。

新しい機能をサポートするコンパイラは別に作ったほうが楽かもね。

コメントはまだありません »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress