学研大人の科学:4ビットマイコン(GMC-4)
大人の科学の4ビットマイコン。 これで2500円というのは安い。
本物の4ビットマイコンというのではなく、 組み込みCPUでのシミュレータなんだけど、 アドレス表示の2進LEDとデータ(メモリ)表示の7セグLEDで 十分4ビットマイコンになっている。
当然、命令コードは読みやすい……はずがない… だけど、ステップ実行だったり、音発生だったりと、実験のネタにする機能が十分備わっている。
メモリ・レジスタ
プログラム 00-4F データ 50-5F レジスタ A,B,Y,Z,A',B',Y',Z'
命令コード
基本命令 Opコード ニーモニック 内容 Flag 0 KA K→Ar キー入力有無 1 AO Ar→Op 1 2 CH Ar⇔Br , Yr⇔Zr 1 3 CY Ar⇔Yr 1 4 AM Ar→(Yr) 1 5 MA (Yr)→Ar 1 6 M+ Ar+(Yr)→Ar 桁上がり 7 M- Ar-(Yr)→Ar マイナス 8 TIA □ □→Ar 1 9 AIA □ Ar+□→Ar 桁上がり A TIY □ □→Yr 1 B AIY □ Yr+□→Yr 桁上がり C CIA □ Ar≠□→Flag 不一致 D CIY □ Yr≠□→Flag 不一致 E (CAL) (別表参照) (-) F JUMP □□ if(Flag)goto□□ 1 CAL命令 Opコード ニーモニック 内容(CAL命令はFlag=1の時だけ実行) Flag E0 CAL RSTO 0→数字LED 1 E1 CAL SETR 1→2進LED[Y] 1 E2 CAL RSTR 0→2進LED[Y] 1 E3 E4 CAL CMPL NOT(Ar)→Ar 1 E5 CAL CHNG A,B,Y,Z⇔A',B',Y',Z' 1 E6 CAL SIFT Ar%2→Flag,Ar/2→Ar Ar[0] E7 CAL ENDS エンド音 1 E8 CAL ERRS エラー音 1 E9 CAL SHTS ショート音 1 EA CAL LONS ロング音 1 EB CAL SUND Arの音階の音 1 EC CAL TIMR (Ar+1)×0.1sec待ち 1 ED CAL DSPR (E)→2進LED[0:3],(F)→2進LED[4:6] 1 EE CAL DEM- DEC((Y)-Ar)→(Y),Y– 1 EF CAL DEM+ DEC((Y)+Ar)→(Y),Y– 1
学研FX-マイコン
記事を読むと、元々は、学研の電子ブロックのFX-マイコン(R-165)として 販売されていたものがベースらしい。 A,B,Y,Zと補助レジスタA',B',Y',Z'という考え方は、まるでZ80。 ニーモニックは、学研の子供向けというのもあるのか、違和感を感じる。 どちらにしろ、この価格は素晴らしい!
H21年度高専プロコン、競技部門本選参加へ…
高専プロコンの予選結果が発表となりました。 自由部門×2、課題部門×1、競技部門×1にて、応募しましたが、 残念ながら、競技部門1チームが本選参加となりました。
- 競技部門:くるったー、4EI:奥村、小林、丸山(指導高久)
参加学生の方は、全力が出せるように準備頑張ってください。
本戦では、残念ながら勝ち残ることができませんでしたが、 参加者の学生さんは良い経験となったようです。
高専プロコン予選通過、競技部門のみ
高専プロコンの予選結果が発表となった。 残念ながら、今年度は競技部門だけとなった。 審査員の講評を見ると、
- … 自由と課題の中身が似通ってきています。 これは課題部門が幅広い解釈ができるため…
- … 世の中にある話題の中から適当なものを見つけてきたような作品が多く、 若者らしい斬新なアイデアが少なかったことが残念です。
と書かれている。実際、応募資料を作る時も、 自由/課題の選択はアイディアが出てからの後付け。 アイディアについても、指導教員の知っているネタ説明を元に、 考え出したりしていれば、ご指摘のとおり…としかならない。 逆の見方をすれば、資料さえあと少し頑張れば、予選通過をしてもおかしくなかったとも言える。
シリアル通信やら赤外線リモコン信号やら…
創造工学演習にて、実際にプログラムを動かし始めるチームがではじめ、 その動作確認をするための環境のお手伝い。
Bluetooth経由でLEGO操作のチームでは、ひとまずシリアル通信の実験をしてもらうために、 シリアル信号をオシロスコープでみせたり、 端末ソフトと他のパソコンとつないで実験するためのクロスケーブルを渡したり。
赤外線リモコン制御に関係するチームには、ひとまず実証対象として、 部屋にあったSONYのTVを動かしてもらうために、 手元資料の赤外線波形とリモコンコードの表を渡して解説。 理解を深めてもらうために、赤外線リモコンのデコーダICの結果を、 オシロスコープにつないで波形観察。
相変わらず、説明ネタの幅が広くて疲れる授業時間でした…
ファイルの説明の前にOSの歴史
前期中間以降は、ファイルの入出力の講義が中心になるけど、 最も共通の知識として「OS寄り」な部分を説明となるので、 OSの歴史として説明を行う。
古くはOSを起動するときのモニタであり、 次の8bitパソコンの時代では、 BASICがOSの役割を担っていたことを説明。 その後、16bit CPUの出現で Intel 8086 がIBM-PCの OSとしてMS-DOSを紹介。 その後、Apple社のMacintoshのGUIに触発されて、 Windowsが開発された点を説明。 しかしながら、この時代までは、「シングルタスク・シングルユーザ」のOSであった。
この後、Windows/95 あたりでインターネットの普及が起こるが、 このあたりから32bit CPUの普及がはじまる。 32bitCPUでは、メモリ保護機能が実装され、「マルチユーザ・マルチタスク」のOSが 普及していく。 IBMのOS/2に始まり、Windows NT,2000と開発されていく。
これと並行して、汎用機の世界では、マルチタスク・マルチユーザの取り扱いでは、 Multics というOSが作られるが、ミニコンで使うために規模を縮小した unix が開発される。 unix は、研究機関のBSD系,企業でのSystemV系と分かれて開発がすすむが、 その中で、教育用のMINIXに触発され、Linux が開発され、オープンソースの流れのなか、 サーバ分野で普及していく…
この話の中で、「ハッカー」とは「コンピュータの世界で崇拝される専門家」であり、 「コンピュータの犯罪者」は「クラッカー」だよ…といった説明も行う。