講師:
木 室 義 彦
(プロフィールは,↑ココをクリック)
移動ロボットとコンピュータの外見は,全然違いますが,その本質は,同じものです.
ロボットプログラミングとアセンブラプログラミングを一気に体験することで,
コンピュータシステムの本質に迫ります.
時間内に終わらない場合は,第2回,第3回の講義に参加して下さい.
このウェブページに書いた以外に,ラジコンカーを使った実験ネタなども
あります.
●教材
ロボットと周りの環境を整備すると,ロボットを安全に安心して動かせる. 研究の詳細は, 木室のウェブページで.
CPUシミュレータ を,別ウィンドウで起動
[プログラムメモリ] 0: A ← [0 ] レジスタ Aに 0番地のデータを入れる 1: B ← [1 ] レジスタ Bに 1番地のデータを入れる 2: + 2つのレジスタの値を足す (結果は,レジスタA) 3: A → [2 ] レジスタAの値を 2番地に保存 [データメモリ] 0: [5 ] 1: [3 ] 2: [0 ] 命令実行のサイクル: P0: プログラムカウンタ(実行番地)を進める P1: 命令を読み,解読する P2: 制御信号を出す P3: 命令を実行する
[プログラムメモリ] 自分で考えよう [データメモリ] 0: 0 1: 1
[プログラムメモリ] 0: 1: カウンター(足す1)のプログラム 2: 3: 4: JUMP >0 [0 ]質問: さて,このプログラムは,どのように動くでしょうか? ちゃんと止まるでしょうか?
[プログラムメモリ] カウンター(足す1)のプログラム 0: A ← [0 ] 1: B ← [1 ] 2: + 3: A → [0 ] 4: OUT [0 ] 5: JUMP>0 [0 ]
[プログラムメモリ] (自作する) [データメモリ] 0: [10 ] 繰り返しの回数. 1: [0 ] 総和を保存する場所 2: [1 ] 繰り返し回数から引く数