第7回テーマ

(第7回テーマ)

文字コードについて

  • 文字コード表の掲載されてるサイト(たとえばe-words) を眺めてみよう。
    • この文字コードはASCII という呼称で広く普及していたもの。
    • 今はこれを(一部変更があるものの)追認する形でANSIやISOといった規格に採用されて世界で使われている。
    • コンピュータの普及以前にテレタイプで使われ初めた歴史がある。
    • 大型汎用機(メインフレームとも呼ぶ)やオフィスコンピュータ(オフコン)ではASCIIでないコード体系も使われてきている。
  • ASCIIは基本的には7bitコード(十進で言えば 0~127の範囲)。
aのコード

具体例:

  • たとえば、文字 a に相当するコードは十進で表すと97(10)、十六進だと61(16)
    • 2進数で表現すると図のような並びになる。
      aのコード abc
    • 7bit符号なので1バイトのうち最上位のビットは使われていない。 7bit
  • 空白を表すコードは20(16) URLエンコーディング
    • この符号は、たとえばブラウザのアドレスバーにアクセス先のURLが表示されている所に、コードの形で(右図)埋め込まれているのを時々見かけることがある(お気づきだろうか)。

おおまかな配置と 制御文字:

  • アルファベットや数字は順に並んでいる。
    • 同じ文字の大文字と小文字は2行離れて並んでいる関係(2bit目だけが互いに違っているという関係)
    • 数字と特殊文字(キーボードで数字をシフトして打つ文字)の関係も1bit違い。
  • (十進で)0~31は制御文字と呼ばれ、文字としての印字はされないもの。
    • 制御文字はコンピュータ登場以前の通信で使われていた名残でもある。
    • ただし一部はコンピュータ時代になっても重要な役割を果たしている。
    • 制御文字のうち、CR LFは重要(後述)なので覚えておこう。
  • キーボードで制御文字を入力する時にCtrlキーとアルファベットを同時押し(Ctrl-Hなど)するのが当時の流儀だった。
    • 同じ位置にある、つまり1bit違いの制御文字が送られる。
    • 今もその名残は各所に残っていて、たとえばコマンドプロンプトで Ctrl-H、Ctrl-I がそれぞれ BS(BackSpace)、Tab のキーと同じ動作をすることは、やってみると確認できるだろう。

CR LF の名前の意味について

CR+LF
  • CR、LF は、このタイプライター(およびそれを発展させたテレタイプ)の動作を模擬させるべく作られた制御文字。 タイプライター
    • 紙を巻きつけるローラが carriage の機構の中に含まれていて、
  • タイピストは、行末近くで carriage を右端に押し戻す操作(リターン)を行う(と、印字される場所は紙面の左端=行頭に来る)。
  • と同時にレバー操作によりローラが一行分回転する(Line Feed操作)。
  • このような動作が、キーボードの配列 querty 等とともに、 現代の技術の中に遺産として残っていることになる。
  • テキストファイルで各行の行末には、(エディタでは何か設定をしないと表示されないので気が付かないが)「改行」を表す特殊な記号として、この CR LF の並び(つまり2バイト分が入っている。
    • (改行を表す記号の使い方はOSによって違っていて、Windowsだとこの2文字の並び。)
CLCL入手元
アプリケーション CLCLについて

「クリップボード」について考える機会を作りたいので、 CLCL というアプリケーションを使ってみましょう。

  • 下記(or右図)のコマンドでもインストールできるし、

  • もちろん開発元やアーカイブサイトからダウンロードしてもいい。

  • ダウンロードするものは、zip版でもインストーラ版(.exe)でもいい。

    cinst clcl.portable -y    # 管理者権限のコマンドプロンプトで
  • 使い方については次の機会に説明します。

主要拡張子

拡張子について

上記のCLCLのダウンロードサイトには、.zip.exe の拡張子のついたファイルが 置いてある(この機会にその意味を確認しておく)。

  • .zip は複数のファイルを1つのファイルにまとめ(さらにそれを圧縮しサイズを極力コンパクトにし)たもの。
    • アーカイブファイルとも呼ぶ。

    • 圧縮の方式は他にも多数あるが昨今のWindowsパソコンやネットの配布では最もよく使われるのがこの .zip

    • ‘.zip’ を「開く」と、Windowsではその中身を(仮の姿として)エクスプローラで表示する。個々にファイルに対して一部の機能(表示など)は可能だが、中に含まれるプログラムを使うなど、きちんと使えるようにするためには「解凍」操作が必要。

execute
  • .exe は実行形式(の1つ)。プログラム本体と考えていい。「開く」操作では、 そのプログラムが起動され実行状態になる。 execute2
  • 「 exe 」は execute, executive の先頭をとった名前。「実行する」に加えて「処刑する」といった意味もあるやや物騒な単語だが、(英語の)コンピュータオタク達は昔から物騒な単語を好んで使う傾向があった(右図)。
  • .exe に加えて、cmd, bat, com といった種類のファイルが、単独で(独立して)プログラムとして実行されるもの。
独立したファイルと従属したファイル
  • 逆に言えば、この実行形式(に属するファイル)以外のファイルは、いずれかのアプリケーションを起動して、そのアプリケーションで当該ファイルを開く、という(従属的な)使い方になるということ。

  • 日常の動作として、ただファイルを「開く」操作(ダブルクリック等)を行うと、 「関連付け」によって定められたアプリケーションが起動して当該ファイルを開くことになる。

  • その関連付け以外のアプリケーションで開く際には、アプリケーションと、データとを、何かの形で「出会わせる」必要があるだろう。

  • コンピュータ操作の基本としてこの方法を知っておくことにしよう。

  • (たとえばエクスプローラから)ファイルを「ドラッグ」して、すでに開いているアプリケーションの窓上に「ドロップ」する、というのもその操作の一つ。
  • ドロップする場所はアプリケーションのアイコン上でも(殆どの場合)可。
  • それ以外にも以下の方法で「出会わせ」ることができる。
    1. アプリケーションの側からデータを探す(「開く」メニューなど)。
    2. データの側からアプリケーションを探す。具体的にはエクスプローラ画面で、 コンテキストメニュー(右クリック)から「プログラムから開く」など。

本科目の方針について

  • 情報処理関連の授業は(中高でも大学でも)ともすれば1つの環境(ソフトウェア、など)に依存しがちになる(教材開発側の都合でもあり、受講者の便宜のためでもある)。
    • そこで主役になるソフトウェアとして、オフィス(オフィススィート)や、IDE(統合開発環境; プログラミング関連の授業などの場合)が知られている。
科目の方針
  • こうしたソフトウェアは使う人には便利(イタレリツクセリ)なのだが、 そこで使われている技術やデータに関して意識せずに使われてしまう危険性もある。
  • 本科目ではあえてその便利な道具を排除して、小さい道具(とOSの基本的な機能) の組み合わせでコンピュータを使う方向をめざす。道具を組み合わせて使う技術も 修得を目指しましょう。
  • その中で、テキストエディタとコマンドプロンプトは重要な役割を果たすので大事に使って下さい。