06

30

4ビットマイコンプログラミング演習 出題1

2010.06.30(21:35)

【目的】
4ビットマイコン、レジスタ、フラグ、条件分岐、アセンブリ言語に慣れる。
ビット操作や数値演算、入出力をおこなうプログラムを作る。

【条件】
できるだけ、短いプログラムサイズ、
できるだけ、少ないプログラムステップで、
実行するように書くこと。

回答例のように、表形式で1行1命令で書くこと。

【問題0】
押されたキーを数字LEDに表示する。

【回答例】
アドレスマシン語ソースコード 解説
00K->A押されたキーをAへ
011A->OPAを数字LEDへ
02F00JUMP 000番地へジャンプ


【問題1】
数字 LEDに、0から9まで1秒おきに表示し、繰り返す。

【問題2】
数字LEDに、9から0まで1秒おきに表示し、繰り返す。

【問題3】
数字LEDに、0からFまで1秒おきに表示し、繰り返す。

【問題4】
2進LEDを、左からビット6,5,4,3,2,1,0 として、
1秒おきに、ビット0から順番に、右から左へ1つずつ順番に点灯させ、
一番左にいったら右へもどって、繰り返す。

【問題5】
キー入力があった回数を、数字LEDに表示する。
最初に0を表示し、任意のキーが押されるのを待ち、押されるたびに1ずつカウントアップする。

【問題6】
2進LEDを、左からビット6,5,4,3,2,1,0 として、
押されたキーの番号のビットを点灯させる。
たとえば、3のキーが押されたら、ビット3 を点灯させ、ほかは消灯させる。
次のキーが押されるまでは、その表示を継続する。

【問題7】
2進LEDを、左からビット6,5,4,3,2,1,0 として、
押されたキーの値を2進数表示で、各ビットを点灯させる。
たとえば、6のキーが押されたら、ビット2と1 を点灯させ、ほかは消灯させる。
次のキーが押されるまでは、その表示を継続する。
プロフィール

島敏博

Shima Toshihiro 島敏博
信州アルプスハイランド在住。HaskellとElixirが好き。組み込みソフトウェアアーキテクト、C++プログラマ、山歩き、美術館巡り、和食食べ歩き、日本赤十字社救急法指導員、インデックス投資、クラシック音楽、SESSAME会員、状態マシン設計、モデル駆動開発、ソフトウェアプロダクトライン、Rubyist、実践ビジネス英語

■ ツイッター
http://twitter.com/saltheads
■ Facebook
http://www.facebook.com/saltheads
■ Qiita
http://qiita.com/saltheads

印刷する場合は、ブラウザの印刷メニューではなく、このページの上から3cmくらいの青いところにある、「印刷」を押してみてください。少しうまく印刷できます。まだ完全ではないのですが、これで勘弁してください。


カテゴリ
最新記事
月別アーカイブ
最新コメント
検索フォーム
リンク
sessame
RSSリンクの表示