フローチャート,パンチカード,紙テープ

フローチャート(流れ図)

プログラムの処理手順をマクロに捉えて図式化したものである.プログラマは,プログラム言語で実際にプログラムを書く前にブロック用紙にフローチャートを書いてプログラム全体の構成と流れを把握し,確認した.特にアセンブラ言語のように命令単位が細かな言語でコーディングしている場合,何を記述しているのかをプログラマ本人でさえ把握しにくくなるので,プログラムを記述中にも常に流れ図を参照し,プログラムの全体の意味を把握しておくには便利な図であった.JIS X0121:1986「情報処理用流れ図・プログラム網図・システム資源記号」によれば,「プログラム流れ図(program flowchart)は,プログラム中における一連の演算を表す.」とある.
 しかしながら,X0121:1986で規定されているような,「カード」,「穿孔テープ」などは事実上使われなくなっている,流れ図に適した手続き指向言語だけでなくオブジェクト指向言語が普及している,プログラムが大規模化,複雑化しているなどのさまざまな理由により現在ではあまり使われなくなっている.
 フローチャート記述道具:ブロック用紙,シャープペンシル,テンプレート,字消し板,消しゴム,ブラシ


コーディングシート

プログラムを書き記すための罫線が入った一種の原稿用紙のようなシート.パンチカードにパンチするためのプログラムを記入したために通常1行には80桁の升目がある.プログラムの書式はアセンブラ,FORTRAN,COBOL,PL/Iなどの言語に依存するために,コーディングシートには言語の書式に適した罫線が入っている.
1960年代〜70年代のプログラム開発環境では,ほとんどの利用者は現在のようにコンピュータを手元に持ち,テキストエディタを用いてプログラムを書くということはなかった.そのために,プログラムは原稿用紙であるコーディングシートに書き,それを持って共同利用の計算機センターのカードさん孔(穿孔)機室に行き,プログラムをパンチカードのデックとして作り,それを計算機センターの窓口に提出して計算依頼をしたものである.あるいは,研究室に計算機があったとしても,テキストエディタでプログラムを入力できることは少なく,たいていはパンチカードか紙テープからプログラムを入力するものであった.したがって,プログラム作成とプログラム実行とはほぼ完全に分かれた作業であった.コーディングシートはこのような計算機利用環境から必然的に生まれたものである.


パンチカード

文字データを入力し,情報処理を行うための媒体として初めて実用化されたのがホレリスカードである.米国の国勢調査の結果を処理するために実用化された.ホレリスカードのサイズは7.375インチx3.25インチであり,以後コンピュータ用のパンチカードはこのサイズを踏襲し,その意味でコンピュータ用パンチカードはホレリスカードと呼ばれる.
 孔位置の数は年代によって異なっている.1890年の米国国勢調査で初めて用いられたホレリスカードは22列8行であった.1900年の国勢調査では,24列10行.1910年の国勢調査では,27列12行になる.1928年,IBMは,それまでの円形の孔を矩形に改め,80列12行にしたカードを作製した.これが後のコンピュータの入力媒体として用いられたいわゆるIBMカードであり,コンピュータの記憶媒体として主要な規格となった.
 大学などにおける大型計算機センターにはカード穿孔機が並び,人々はコーディングシートに書いたプログラムやデータをカードにパンチして計算センターの窓口提出し,処理をしてもらっていた.大きな欠点は扱いにくいことであった.カードは1ステートメントが1枚にパンチされていて,何百枚,何千枚で1つのプログラムやデータになったものであるが,そのカードデックを段ボールなどの箱に入れて運ぶ時,うっかり落としてしまい順序がばらばらになったカードを元の順に直さなければならないという事故がよく起きたものであったし,カードリーダでのジャミングも同様にしばしば起こり,厄介な媒体であった.
 1970年代のTSS(Time Sharing System)の発達とともに,プログラムを端末から直接コンピュータに入力し,ハードディスクに記憶する方法が普及し,パンチカードの利用は減少していった.


紙テープ

プログラムやデータを記録するための媒体である.パンチカードはプログラムの1ステートメントに1枚を用いるが,テープではステートメントが連続して記録される.進行方向に垂直に8個の孔をあけ,孔のあるなしをビットに対応させ,1列に1byteを記憶する.穿孔する時,8個の孔を5と3に分割する位置に,テープ送りのためのミシン目の孔(perforation)が開けられる.
 紙テープ穿孔機やテープリーダはパンチカード穿孔機やカードリーダのようにかさばらず,低価格で販売された.紙テープ穿孔機はテレタイプライタに取り付けられキーボードを叩くことによりASCIIコードとして文字が記録され,光学的テープリーダも小さな機器であった.このような理由で紙テープは特に小型の計算機の入力・記憶媒体として広く用いられた.
 短所として,ステートメントを途中に挿入するということがカードと異なり簡単にはできないことがあった.テレタイプに付属しているリーダとパンチャを用いて,挿入する箇所までオリジナルテープをコピーしておき,挿入する箇所で一旦停止させ,そこにキーボードから必要なステートメントを挿入し,その後に再度オリジナルのテープをコピーするという方法をとった.また,1byteの誤りのために長大なテープ全体をコピー・修正・コピーするという作業はあまりに非能率であるために,1byte単位で孔を埋めたり,開けたりしたものであった(ミスターパンチ).
 また,パンチカードと異なり1本のテープに連続してプログラムやデータが記録されるため,落して順序がばらばらになるという不便はなかったが,パンチされたテープ,読み取ったテープは通常,反対側に山になってしまうため,これを巻き取るリールが必要であった.巻き取る際,テープを切ってしまうことはよくあり,補修用のテープとそれを正確に貼るために切れたテープを固定するジグが用意されていた.