2006/9/23 土曜日

「CPUの創り方」のTD4のSqueak版シミュレータを作成しました。
書籍で触れられているシミュレータと比べたときのメリットとしては、
- Squeak上が動くマシン上ならどこでも動く。(Macで動かしたかった…)
- プログラムのソースコードを読める。
- 自分で改造が可能。
が考えられます。逆にデメリットとしては、
- Squeakをインストールしてなければインストールが面倒
- ソースコードが汚い。設計もずさん。
- きっと改造する気になれない。
- 多分バグがある。
が考えられます。
伊藤ゼミ学生向けのものなので、それ以外の方は上記のデメリットをご理解の上、心してお使いください。
なお、機能等一切の保証はありません。
(more…)
2006/9/21 木曜日

夏季合宿2006で行った機械語ワークショップの内容です。
配布資料
参加人数
5名参加。機械語プログラミング経験なし。Defart経験あり。
ワークショップ前半

- これ(↑)は何でしょう?
- 基本的な動作原理の説明。資料を見ながら。
- 機械語命令の説明
- サンプルプログラムの解説

ワークショップ後半
課題のプログラムを作る。
- 課題1:入力ポートが■□□■の時だけ出力ポートを■□□■とし、それ以外では常に□■■□としなさい。
- 課題2:slowクロックで、1分で□□□■、2分で□□■■、3分で□■■■とするプログラムを作りなさい。
結果
課題1のプログラムは1名完成。課題2については途中までを数名が完成。
記名式アンケート
- 機械語の入力のしかたの説明が欲しかった。理解するのが難しかった。
- 考えている時間は楽しかったので、時間をかけてやれば面白いと思う。ごはんに行く時間が惜しい。
- はじめはとっつきづらい印象があったが、実際にやってみると自分でプログラミングしているという実感があった。もうちょっと初歩の例題があれば、もっととっつきやすくなると思った。
- もっとサンプルがあったほうがいい。もう少し時間があったらよい。やっとわかってきたときに終わりになったのは残念。簡単なプログラミングから始めた方が良い。
- もう少し簡単でやりやすい問題からやりたい。できないのはくやしい。でも考えるのは楽しいので時間を多く欲しい。
自由討論
- どの内容も難しかった。
- 授業として繰り返しやるとしたら3回が限度じゃない?
- シミュレータがないとできない。
- 実機を最初に見るとイメージがわく。後はシミュレータがあれば充分。
- ゼミでやるのは許容できる、新入生研修だったら多分嫌になる。
- 五大装置の理解には結びついた。実感を持って理解できた。
反省・課題
- 説明の順番に工夫が必要。動作原理の説明がわかりにくかった。
- シミュレータの使い方に関する説明がもっと必要。
- 実機に役割を示したラベルを貼るべきだった。
- 難しいと思われたキャリーや条件付きジャンプは理解可能なことがわかた。
- モチベーションをどのように向上できるか?
2006/9/14 木曜日
MOV A, Imm
概要
値をAレジスタに格納します。
命令フォーマット
| bit位置 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| データ |
0 |
0 |
1 |
1 |
x |
x |
x |
x |
説明
xxxxで指定した4ビットの値がAレジスタに格納されます。Aレジスタに元々入っていた値は失われます。
MOV B, Imm
概要
値をBレジスタに格納します。
命令フォーマット
| bit位置 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| データ |
0 |
1 |
1 |
1 |
x |
x |
x |
x |
説明
xxxxで指定した4ビットの値がBレジスタに格納されます。Bレジスタに元々入っていた値は失われます。
MOV A, B
概要
Bレジスタの内容をAレジスタに格納します。
命令フォーマット
| bit位置 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| データ |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
MOV B, A
概要
Aレジスタの内容をBレジスタに格納します。
命令フォーマット
| bit位置 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| データ |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
MOV B,Aの命令が間違っていました。
最終更新時間:2006年09月14日 18時15分41秒