2011年2月6日日曜日

Assemblerの作成

ゆくゆくはgccを移植したいと考えているが、
(出来るかも知れないな、、
出来るといいな、、
ま、チョット覚悟はしておけ、、、
今のところその程度のノリで考えている。)
いきなりgccでは難易度が高すぎるのでとりあえずは簡易AssemblerをC言語で作成した。
簡易版とは言っても、可読性の良いprogramを書きたいのでLABELや
定数の別名定義等は使えるようにした。
また、このAssembleはsimulation用のprogram作成にも使うので、
出力はBinary objectではなく数値文字列を出力するようにした。


例えば上図の左端のようなsourceをAssembleするとその右のようなListと
右端のようなobject fileを出力する。
Assembler programの行数はcommentや空行や構造体型宣言や配列定義等
ひっくるめて802行になった。programのcode正味では500行程度だろう。


0 件のコメント:

コメントを投稿

自作CPUで遊ぶ 22

今使用しているモータードライバはDM556Dというものだが、このドライバはMicro Stepが 800 [pulse/rev] 〜 40000 [pulse/rev]の範囲で設定できる。 Mi...