ライブラリと分割コンパイル
巨大なプログラムを作ってくると、プログラムのコンパイルに時間がかかる。こういった場合には、共有できる処理であればライブラリにまとめたり、分割コンパイルといった方法をとる。 ライブラリ C言語でプログラムを作っている時、p […]
移動平均の処理
前回の授業で説明したようなA/D変換した数値データを読み取った場合、どのようなことが発生するか考える。 例えば、以下に示すような測定値があったとする。 2018-06-05-wave.csv このデータの一部をグラフ化し […]
シェルスクリプトの演習
今回は、前回までのシェルの機能を使って演習を行う。 プログラムの編集について 演習用のサーバに接続して、シェルスクリプトなどのプログラムを作成する際のプログラムの編集方法にはいくつかの方式がある。 サーバに接続しているタ […]
スタックと待ち行列
前回の授業では、リストの先頭にデータを挿入する処理と、末尾に追加する処理について説明したが、この応用について説明する。 計算処理中に一時的なデータの保存として、スタック(stack)と待ち行列・キュー(queue)がよく […]
D/A・A/D変換回路と誤差
小型コンピュータを使った制御では、外部回路に指定した電圧を出力(D/A変換)したり、外部の電圧を入力(A/D変換)したりすることが多い。以下にその為の回路と動作について説明する。 D/A変換回路 ラダー抵抗回路によるD/ […]
オブジェクト指向とソフトウェア工学
オブジェクト指向プログラミングの最後の総括として、 ソフトウェア工学との説明を行う。 トップダウン設計とウォーターフォール型開発 ソフトウェア工学でプログラムの開発において、一般的なサイクルとしては、 専攻科などではどこ […]
シェルスクリプト
前回の授業では、OSでのリダイレクト・パイプの概念とプロセスの概念について説明を行ってきた。これによりプログラムの実行結果を他のプログラムに渡すことができる。これらの機能を使うと、いくつかのプログラムを次々と実行させるな […]
リストへの追加処理
最初のリスト生成の説明では、補助関数 cons を用いて、直接リストを生成していた。 しかし、実際にはデータを入力しながらの処理となるであろう。今回は、前回のリスト操作のプログラムの確認などと合わせ、リストへのデータの追 […]
UMLと振る舞い図
前回の講義で説明した構造図に続いて、処理の流れを説明するための振る舞い図の説明。 講義の後半は、UML作成のレポートの課題時間とする。 振る舞い図 参考資料をもとに振る舞い図の説明を行う。 ユースケース図 ユーザなど外部 […]