【第15章】ファイルと補助記憶装置

 このカテゴリーもいよいよ終点に近づいてきました。この章以後ではファイルを使うプログラムについて学びます。ファイルについて勉強するには、ファイル名、拡張子、補助記憶装置(媒体)などについても知る必要があります。本カテゴリーの目的は「プログラミング体験」と「プログラミング的思考を身につける」ですから、Windowsパソコン初心者の方でもわかるよう、この辺は必要最小限の範囲にとどめ、なるべく平易に説明します。またWord、Excelなどをすでに使っていて、ファイルについての基本知識がある方はこの章は読み飛ばしていただいてかまいません。
 またTiny Basic for Windowsではファイルを取り扱う方法は
    ①旧来の方法
    ②.NET Frameworkに対応した方法(新しい方法)
の2つがありますが、本カテゴリーではファイルとはどういうものかを知るために①の方法に基づいて説明します。

【ファイルとは】
 
図15-1は一般的にファイルとよばれているもので、○月分売上伝票とか○年○組生徒指導要録など、同じ種類(目的)の書類をまとめておくのに使われます。
 コンピュータのファイルも基本的にはこれと同じで
   ①同じ種類(目的)のデータをまとめておくもの
です。ただコンピュータのファイルには
   ②ある目的のための材料箱というもの
もあります。本カテゴリーでは①の意味でのファイルについて中心にお話します。



図15-1.事務用品のファイル

【ファイル・レコード、アイテム】

 ファイルとは同じ種類(目的)のデータをまとめておくものでした。たとえば担任クラスの生徒の名簿を考えてみます(図15-2)。



図15-2.名簿の例

 これがファイルです。ファイルの中の1件1件のデータ(この例なら1行)をレコードといい、1件のレコードを構成する各項目(この例なら出席番号、氏名、ヨミガナ)をアイテムといいます。
 プログラムを作るとき、最初に処理の手順(アルゴリズム)を考えたように、ファイルを使うには先にファイル設計をしておく必要があります。もし名簿が図15-3のようだったら、こんな名簿使いにくいことこの上ないですね。


図15-3.使いにくい名簿

 このように1レコード中のアイテムの並びをどうするのか先に決めておくことが大切です。ここでは図15-2のように出席番号、氏名、ヨミガナの順としておきます。

【主記憶装置と補助記憶装置】


図15-4.コンピュータを構成する各装置

 第4章で出てきたこの図をもう一度復習しましょう。今のノートパソコンでは一見してもわかりませんが、コンピュータの中身は図15-4のようになっています。今までやってきたプログラム、たとえば次のプログラムは、図15-4の主記憶装置より上の部分(中央処理装置=Central Processing Unit=CPU、入力装置、出力装置、主記憶装置)だけを使っています


INPUT "A=",A  
INPUT "B=",B  
C=A+B     
PRINT "A+B=";C 
END        

 ファイルを使うプログラムでは補助記憶装置(固定ディスク装置、CD/DVDドライブ、USBメモリ、SDカードなど)も使います。まず主記憶装置と補助記憶装置はどう違うのかを知っておきましょう。
 上のプログラムの場合、キーボードから入力された2つの数を、それぞれ変数A、Bに記憶します。このとき2つの変数は主記憶装置内に自動的に格納されます。これは主記憶装置はCPUが直接管理しているからです。これに対してデータを主記憶装置ではなく、補助記憶装置に記憶する場合、①使用するファイルを開く②データをファイルに書き込む③ファイルを閉じるというステップを踏まなくてはなりません。これは補助記憶装置はCPUが直接管理していないため、使うための準備から後始末まで、すべてプログラムでやらなくてはならないからです。

【補助記憶装置と補助記憶媒体】

 ここで、何の説明もなく補助記憶装置という言葉を使いましたが、具体的な例でみてみましょう。目で見て最もわかりやすいCD/DVDドライブを例にとります。


図15-5.補助記憶装置(CD/DVDドライブ)

 これはパソコン内蔵のCD/DVDドライブです。ここに音楽CDをセットすればパソコンをCDプレイヤーとして、映画やドラマなどのDVDをセットすればDVDプレイヤーとして使用することができます。そしてここに書き込み可能なCD-R、CD-RW、DVD-R、DVD-RW(以下、ディスクといいます)などをセットすれば、このCD/DVDドライブは補助記憶装置となります。上の写真をよく見ると、中心にセットしたCD、DVDを回転させる軸とディスクの内容を読み取ったり、ディスクにデータを書き込む光ヘッドがあるのが見えます。このような駆動装置、アクセス装置を総称して補助記憶装置といいます。


図15-6.補助記憶媒体(DVD-R)

 この装置にセットするディスクのひとつが図15-6のDVD-Rです。補助記憶装置にセットして使用するディスク、USBメモリなどを補助記憶媒体(最近ではメディア、ストレージというようです)といいます。ファイルはこの補助記憶媒体に書き込まれます(記録されます)。


図15-7.補助記憶媒体を補助記憶装置にセットしたところ

 このとおり補助記憶装置とは補助記憶媒体の内容を読み書きする装置のことなのですが、本カテゴリーでは煩雑さを避けるため補助記憶媒体をセットした状態(図15-7)を補助記憶装置と呼ぶことにします

[主記憶装置と補助記憶装置の特性と欠点]

①記憶容量

 一般的に主記憶装置と補助記憶装置では補助記憶装置の方が記憶容量が大きいです。筆者のパソコンの場合、主記憶装置の記憶容量は8GB(ギガバイト)ですが、使用している補助記憶装置はいちばん容量が小さいもので500GBほどです。今日ではコンビニで売ってるUSBメモリやSDカードでも32GB、64GBくらいが普通になっています。なので全校生徒(児童)の指導要録などの大量の(容量の大きい)データはファイルとして補助記憶装置に、計算結果や処理中のデータは保存の必要がない限り主記憶装置内だけで扱うようにします。

②速度

 主記憶装置と補助記憶装置では主記憶装置の方が記憶・記憶内容の読み出しの速度が速いです。今日のパソコン用補助記憶装置で一般的な事務処理プログラム程度ではあまり意識する必要はありませんが、画像・音声・動画を大量に扱う場合、補助記憶媒体への書き込み速度はシステム全体の運用効率にかなり影響が出ます。

③保存性

 最後にこの章で最も大事なことを知っておきましょう。それは補助記憶装置の記憶は媒体が物理的に破損するか記録内容を消去するプログラムを実行しない限り永久に残るということです。これに対して主記憶装置の記憶内容はパソコンの電源を切るかパソコンを再起動かけたところですべて消えます。なので永久に保存しておきたいデータは補助記憶装置に記憶させるようにします。

[ドライブとフォルダ(ディレクトリ)]



図15-8.補助記憶装置のいろいろ


 前節では補助記憶装置の説明としてCD/DVDドライブをとり上げましたが、補助記憶装置には図15-8のようにいろいろなものがあります。それぞれの装置の詳しい構造を知ることは本カテゴリーの目的から外れますのでここでは説明しませんが、外見からはわからなくともどの装置も駆動部、アクセス部(コントローラ)と記録媒体(不揮発性メモリ)で成り立っていることは共通しています。これらの補助記憶装置をすべてパソコンに接続した上で、WindowsシステムツールのPCを開くと図15-9のように表示されます。


図15-9.複数の補助記憶装置が接続された状態

 図15-9の下半分のデバイスとドライブの部分を見ると現在接続されている補助記憶装置がわかります。ここで各装置のところに表示されているTIH0422000AやHD-PCGU3-Aなどをボリュームラベル(ボリューム名)といい、各補助記憶装置に付けられている名前とお考えください。ボリュームラベルはご自分の好きな名前に付け替えることができます。ボリュームラベルの後ろの(C:)や(F:)をドライブ名といいます(ドライブ名はお使いのパソコンにより異なります)。ボリュームラベルは長くて煩雑なので、プログラム中で補助記憶装置を扱うときはドライブ名を用います。
 では、これらの補助記憶装置にデータがどのように記録されているのかを見てみましょう。ここではTiny Basic for WindowsをUSBメモリにインストール(【第0章】実習の準備参照)したものとして考えます。デバイスとドライブのTBasic.exeが入っているドライブをダブルクリックしてください(この例ではUSBメモリ)。すると図15-10のように表示されます。

図15-10.USBメモリをダブルクリックしたところ

 黄色いノートみたいなアイコンが並んでいますが、これをフォルダディレクトリ)といいます。1個のUSBメモリを複数の目的に使う場合、ファイルをそのままでどんどん書き込んでいくと、後で見た時に「この作業に必要なファイルはどれだっけ」と探すのが大変になります。そこで目的別にファイルを分類しておくために、フォルダを作って、その中にファイルを書き込むようにします。この例ではTBasicというフォルダにTiny Basic for Windowsが入っています。ではTBasicというフォルダをダブルクリックしてみましょう。今度は図15-11のように表示されます。

図15-11.TBasicフォルダを開いたところ

 Tiny Basic for Windows本体のTBasic.exeとTiny Basicが使用するいろいろなファイルが同じフォルダ内にあるのが確認できます。他にもいろいろなフォルダやファイルがありますが、これらはTiny Basic for Windowsをインストールしたときに自動的にコピーされたドキュメントやサンプルプログラムです。

[ファイルパス]

 ここでいうパスとはpass(通行証/合格)ではなくpath(経路/道)です。対象のファイルまで辿り着く経路ということですが、Tiny Basic for Windowsの本体(TBasic.exe)が入っている場所を例にすると

 Dドライブ(の媒体)の中のTBasicというフォルダの中のTBasic.exeというファイル

ということになります。これをTiny Basicでは

 "D:¥TBasic¥TBasic.exe"(¥はお使いのOS/ブラウザによっては\と表示されているかもしれません)

と書きます。ファイルパスの書き方は

 ドライブ名:¥フォルダ名¥フォルダ名・・・・¥ファイル名

です。ファイルバスのうちドライブ名からフォルダ名は省略可能ですが、省略した場合(デフオルトのファイルパス)は、Tiny Basicの場合、TBasic.exeが入っている場所と同じ場所を指定したものとみなされます。

【カレントディレクトリと絶対パスと相対パス】

 今、ファイル操作(処理)の対象になっているフォルダ(ディレクトリ)のことをカレントディレクトリ(カレントフォルダ)といいます。そしてドライブ名からフォルダ名~・・・~ドライブ名~ファイル名で表すファイルパスを絶対パス、カレントディレクトリから見て目的のディレクトリの場所を示す表し方を相対パスといいます。下の図で説明します。


図15-12.絶対パスと相対パス


 ここにA駅からB駅を通ってC駅・D駅を結ぶ鉄道があります。B駅でC駅方面とD駅方面は分岐します。今、A駅発C駅行きの電車が走っています。この電車がB駅に停まっているとき、B駅で降りる乗客を降ろしたりB駅から乗る乗客を乗せることはできますがC駅までの乗客を降ろすことは(事故・故障などがない限り)ありません。この場合、電車が停まっている駅がカレントディレクトリだと思ってください。そしてこの電車が走る経路(駅順)、A→B→Cが絶対パスです。
 終点のC駅に着いた後、この電車はD駅行きになるとします。この場合、この電車はA駅まで戻る必要はなく、B駅まで戻って進行方向が変わりD駅に向かいます。この経路はC→1駅戻る→Dということになります。この表し方が相対パスです。筆者の趣味丸出しなたとえでごめんなさい💦💦

【この章のまとめ】

ファイルとは、同じ種類(目的)のデータをまとめておくもの、ある目的のための材料箱のことである。

補助記憶装置は主記憶装置と比べて大容量のデータを永久的に保存することが可能である。ただしアクセス速度は主記憶装置に比べて遅い。

ファイルを構成する1件1件のデータをレコード、レコードを構成する各データをアイテムという。

1つの補助記憶装置を複数の目的で使用する場合、目的別にファイルをまとめておくものをフォルダ(ディレクトリ)という。

ファイル操作の対象となっているフォルダをカレントディレクトリ(カレントフォルダ)という。

絶対パスとは目的のファイルまでの経路をドライブ名、フォルダ名~・・・ファイル名で表し方である。

目的のファイルまでをカレントディレクトリからの経路での表し方を相対パスという。

コメント一覧
コメント投稿

名前

URL

メッセージ

- CafeLog -