総トップページにジャンプ

 あなたのパソコンを使いこなすために!

 インターネット入門


 このページの内容

       はじめに
       まず、通信の歴史を見てみよう!
       情報は、どのようにして取扱うの?
       データ通信システムって、いったい何?
       データ伝送とは、何をどうしているの?
       コンピューターから身近なパソコンへ!
       周辺・端末装置も実にたくさんあるよ!
       インタフェースって、いったい何かしら?
       ご存知ですか、ソフトウエアの体系?
       アプリケーション、いろいろあるよ!
       おわりに

          アリス

 はじめに

 いつも思うのですが、高度に発達をしたインターネットを日々利用しながら、その仕組みなどの全貌が、まだ私にはよくわかっていません。いきおい、勘違いや遠回りをすることが多いようです。また、全体を知らないために見当違いのことをしていることもあるでしょう。
 もしかしたら、「群盲造索」などという言葉で言われるようなことをしているかもしれません。
 そこで、全体を認識するために参考にするテキストが必要になったのです。なぜならば、インターネットについて知識があるのとないのでは、これからの作業に大きく影響をしてくると考えたからです。
 そんな次第で、自分自身がいつでも参考にできるように、ここに「インターネット入門」を置いてみました。

 この「インターネット入門」は「全国学校図書館協議会選定図書」をコピーして、私の責任で大幅に再編集をしたものです。したがって、やさしい内容で理解しやすいことでしょう。なぜならば、マンガや表があって図解方式になっている箇所が多いからです。

(1) あなたが、パソコンを操作してメールを利用したり、ホームページを閲覧するために必要な基本的なことがらを、簡単なメモとしてまとめておきましょう。インターネットの基本について知りたいと思い、いろいろと調べたのですが、なかなか適当なものがなかったからです。
 私は、まだWindowsを始めて1年2ヶ月です。(2004年5月現在) そして、その前はパソコンと十年以上のブランクがありました。仕事でパソコンを使っていたのは、まだMS-DOSの時代でした。
 そんなわけでインターネットについて、ここで自分なりにまとめて、理解をしておく必要があると考えたのです。

 なぜならば、ふつう「知っていなければならないことを知らない」ことと「知る必要のないことを次々と知ろうとする」ことには、大きなムダであるからです。つまり、そのようにすると効率が非常に悪く、人生の時間を無駄遣いしてしまうのです。
 若いときは、遠回りも経験になるでしょう。しかし私のように還暦をとっくに過ぎた高齢者の場合には、必要のないことを繰り返してしていると、本来の目的に間に合わなくなってしまいます。そして、何も理解できないうちに、いつしか人生が終わってしまうでしょう。

(2) さらに、注意をしなければならないことがあります。
 それは、今日では「パソコンが単に一つの物ではない」ことです。だから、パソコンだけを学んでも効果的な利用は望めません。単に、パソコン本体のみを理解しても不十分なのです。つまり、通信のツールとしてのパソコンの位置づけについて、じゅうぶんに納得をしておく必要があるのです。
 したがって、ここでは
単に単体だけを学習することのないような内容にしました。

 なぜならば、メールホームページにしても、通信技術によって他のパソコンや大型コンピュータに繋がっている大きなシステムだからです。したがって、その辺を理解していないと、なかなか活用ができません。つまり、自分のパソコンが「大きなシステムの一部」になっていることを知っていれば、その一部を知るだけでは不十分なことがおわかりになるでしょう。
 そこで、「情報処理と通信技術」というような大きな形でインターネットをとらえ、理解する必要がでてきます。それは、今までに「データ通信」などとも言われた分野なのです。ここでは、そんな意味での有意義な基礎知識と、活用ができる技術力を養うことを目的としました。

(3) そんな次第で、本にすると200ページ以上の大きさになってしまいました。
 そこで、読みやすくするために行間を空けたり、段落の区切りに半行のスペース行をもうけたりしました。また、分かち書きを利用したり、さらに蛇足のような息抜きの部分なども入れてみました。
 カットを入れたり、小見出しを頻繁に付けたのも、読みやすくするためと、あなたが飽きてしまわないようにするためです。(本当は、自分自身のためなんです。)

 この分野の発達は、現在も非常に早いテンポで進んでいます。
 したがって、大きな流れを知っておくことが、とくに大切でしょう。そして、フレキシブルな考え方ができるようになることも必要ではないでしょうか。単に言葉の説明だけではなく、「いま自分がどこにいるか?」がわかるようにもしたつもりです。つまり、技術革新の中で自分自身を見失わないためです。
 そんな意味で、ひととおり情報と通信のすべての範囲を、物語り風の記述の中に盛り込んでみました。
 よろしくお願いします。

     呼び出した場所に戻る


 まず、通信の歴史を見てみよう!



人類の歴史


 あなたは、わたくしたち人類の祖先が、いつごろからこの地球で活動をし始めたと思いますか?
 直立猿人・北京原人などといわれる原始人類が、はじめて現れた旧石器時代は気が遠くなるほど昔で、今から50万年も以前のことといわれています。
 その後、わたくしたちの祖先と考えられる現生人類が現れたのは、それでも、およそ3万年前のことです。

 ここで今、この現生人類の歴史である3万年を、仮に1年の期間に縮小して考えてみましょう。
 そうすると、正月元旦にわたくしたちの遠い祖先が、はじめてこの世に現れたことになります。新石器時代を経て長い時間が去り、エジプト、インド、メソポタミアそして中国に文明が開花し、やがてピラミッドが作られたのは11月のはじめにあたります。さらに長い時が流れ、釈迦孔子が活躍したのが11月のおわり、キリストの生まれたのが12月7日です。
 時はゆるやかに流れ、コロンブスが12月25日にアメリカ大陸を発見し、モールスは12月30日に電信機を発明します。

 世界最初の真空管回路を用いたコンピュータといわれるENIACが完成したのは、暮れの31日、お昼少し前のことです。このENIACに続いて、フォン・ノイマンが提唱したプログラム内蔵方式のコンピュータEDVACが完成したときは、すでにお昼を過ぎていました。
 とうとう大晦日も暮れ、その年もぼつぼつ終わろうとしたころに、データ通信の最初のシステムSAGEが動き始め、さらに時間は過ぎて、除夜の鐘(元日の0時から撞く)が鳴り始めようとするころに、インターネットが実用化をしたことになります。

 このように、人類の歴史というスケールで考えますと、データ通信やインターネットが行われ始めてから、まだあまり時間が過ぎていないことが分かります。そして、そのように考えると日々利用をしているインターネットが、数秒前に何とかできあがったことになり、1年の間つちかってきた遺伝子がそれに慣れるかどうかという心配が生じます。なぜならば、そのために事件や犯罪が起こる可能性が、非常に大きいからです。
 そして悪いことに、それに慣らされていなかったり、それに適応した教育を受けていない若年層までが、その事件や犯罪の犠牲者や当事者になってしまい、社会的な問題が多発する恐れがあるのです。

 因(ちなみ)に人生を80年とすると、上のスケールでは約1日となります。
 あなたは、この24時間の一生を、人類の歴史の中で長いと考えますか、それとも短いと感じますか?

 この章では、通信の歴史を学習します。はじめ電気通信以前を、つぎに電気通信とコンピュータの関係を、さらにその後のデータ通信の発達をおおまかに見て行きましょう。
 大きな視点で過去から現在までを眺め、今わたくしたちが置かれている位置をはっきりと認識します。そして、今後データ通信がどのような発達をするか、その動向を知っておくことが必要でしょう。データ通信は、現在一つの大きな転換期・過渡期ともいえる時代にあるからです。その中に自分がいると、全体の流れが見えにくくなりますが、過ぎ去って振り返れば、その変化がよく分かります。

 現在行われている方式、回路そして素子などは、今後も想像できないほどに大きく変わってゆくことでしょう。
 このことは真空管、トランジスタ、ICの実物を見れば分かります。


真空管・トランジスタ・IC


電気通信以前

 言葉や文字が発達していなかった時代には、どのような情報伝達が行われていたのでしょうか?
 紀元前3000年ごろ、ナイル川のほとりで生活した古代エジプト人は、壁面に幾本かの筋目をつけ意志を伝達しました。その筋目には符号のような規則性があり、文字のはじまりと思われます。巨大なピラミットが造られたのは、これよりもずっと後のことです。商品管理に用いられるバーコードのことを考えると、情報機器が古い時代の表現に似た認識方式を、すでに用いていることに気付きます。
 一方、メソポタミア人は粘土に箆(へら)のようなものを押し付け、符号を残しました。その形が楔(くさび)のようでしたので楔形文字といわれ、これも古代文字の一種です。
 中国では紀元前1000年ころ、周の『易経』という書物に、縄を使って結び目を作り、その一つ一つに意味を持たせ意志を伝達したことが記されています。

 筋目や結び目による表現が記録に近いものであるのに対し、情報そのものを中継して通信する方法も用いられました。
 紀元前1200年ころ、ギリシャとトロヤの戦争で、ギリシャ軍は火をリレーして戦勝を報じたと記録にあります。マラソンが一人で完走するのに対し、これは数人の走者が情報のバトンタッチをする方式です。
 走者を用いず、これを装置として常設したものに、秦始皇帝が築いた万里の長城があります。長城には、ある間隔ごとにのろし台があり、昼はのろし(煙り)を、夜は火を用い情報を中継しました。
 日本でも、養老律令(718年)に「烽(ほう)を40里ごとに設置する」とあり、やはりのろし台が造られたことが分かります。現在のマイクロ波の中継点は、こののろし台の後に設置されているところが多いそうです。


    中継による通信


 天文22年(1555年)ごろ、武田信玄は甲府の居城と信州長沼城との間の山々に櫓(やぐら)を設け、赤・黒・白の火をリレーして軍況を報告させました。煙の色によって、あらかじめ情報の意味を決めておくわけですが、ちょうど今日の信号機が、その点灯色によって、それぞれ異なる意味を約束しているのと同じ理屈です。

 情報の表現は、事象による信号から文字に移ってゆきます。
 文字もはじめは事象を表現する象形文字から始まったわけですが、後にそれらを組合せた会意文字が考案され、表現できる情報量が飛躍的に増大します。
 中国では黄帝の時代に、すでに文字が発明されていたといわれます。紀元前2700年ころのことですが、黄帝は文字を用い、度量衡や貨幣などの基準も定めたということです。
 その後も、漢字は文化とともに次第に発達しますが、日本に伝来したのは、ずっとおそく227年(応仁天皇の時代)のことです。


文字の発明


 はじめ岩や粘土に描かれた文字も、やがてに書かれるようになります。
 古代のエジプト・ギリシャではパピルスといい、葦の繊維から紙状のものを作り使用していました。これが、英語のpaperという言葉の語源です。
 東洋では、後漢(西暦100年ころ)の宦官であった蔡倫が、樹皮から紙を作ることを発明しました。
 後に、中国の紙は墨とともに高句麗の僧曇徴によって、日本に伝わりました。610年(推古天皇の時代)のことです。

 1450年、グーテンベルグ(ドイツ)によって活版印刷機が発明されました。活字を組んで版を作り、機械動力によりプレスするものです。
 この印刷機によって大量の出版が可能になりますが、このころから、社会の情報量は次第に増加してゆきます。
 日本では、情報運搬を業とした三度飛脚が郵便制度のはじまりです。これは、1663年(徳川時代)に私人の経営で開始されましたが、翌年三都定飛脚と定められました。
 その後、1871年(明治4年)政府の郵便制度が開始します。この郵便で手紙・葉書のほか、新聞・雑誌・その他印刷物や農作物の種、現金などが送られるようになり、全国的に情報交換がしやすくなりました。


○電気通信とコンピュータ

 今日、わたくしたちの生活に電気は、なくてはならないものです。
 電気の歴史は非常に古く、ギリシャ時代タレスが琥珀(こはく)をこすり、静電気の発生を発見したのが、はじめといわれます。エレクトロニクスという言葉の語源「エレクトロン」は琥珀という意味をもっています。
 その後、電気は主に光源や動力に用いられましたが、通信に利用されるのは鉄道の連絡用が最初です。

 電気通信は、銅線を用いた伝送路から出発しますが、空気中を電波が進むという事実から無線通信が始まります。さらに、銅線や空気などの伝送路媒体を用いず、新しい方式の光ファイバによる通信が実用化します。
 従来から、空気圧や油圧で制御信号を伝送することはありますが、光による通信は、やはり斬新な感じがしませんか?
 幸田露伴は、『番茶会談』(明治44年)に大きな電気エネルギーを無線で送ることの可能性を書いていますが、科学の進歩は従来考えられなかったことを次々と実現していきます。

 電信・電話・ラジオ

 1835年、モールス(アメリカ)によって電信機が発明されました。
 モールス符号と呼ばれる一種のディジタル信号で文字を表現し、その翻訳は人間が行いました。
 送信側では、メッセージを構成する文字を一つずつ符号に翻訳し、電気的変換を行って送信します。受信側では送信側と逆の操作を行います。つまり、受信した信号を機械的変換によって元の符号に戻し、翻訳をして再び文字にしました。
 その後、1897年マルコーニ(イタリア)によって無線通信機が発明されます。無線は、電線を架設する必要がないので、それまでの送受間距離を一気に広げました。

 川上正光氏の訳された『言志四録』の中に、こんな話がありました。
 初めて無線通信の実験を見た人が、不思議がって言いました。
 「線が無いのに、なぜ伝わるのだろう」
そこにいた物知りが即座に答えました。
 「そりゃ、きみ。そもそもわれわれの声だって、なにもなくても通ずるのだ。無線で通じたって不思議ではないよ」
 いったいこの物知りは、何を言おうとしたのでしょうか?

 1876年、ベル(アメリカ)によって電話機が発明されました。
 電話は、はじめ音声を電流に変換し、アナログ伝送しました。しかし、技術革新の結果、今日ではディジタル伝送が実現をしています。
 わたくしたちは電話をかけるとき、まず相手をダイアルします。この相手との回線接続は、交換機によって行われます。交換機は、電話交換手が行った手動交換から、ステップバイステップ交換、クロスバ交換、そして電子交換方式へと発展してきました。現在の電子交換機は、コンピュータがあらかじめ与えられたプログラムによって、自動的に回線接続を行うものです。

 電話回線は回線交換の特徴を生かし、データ伝送に利用されます。
 この電話網を利用した通信は、相手を誰でも気軽に選べるという特徴があります。もっとも、相手に電話が付設してあり、モデム(変復調器)があることが必要ですが、……。
 いっぽう、日本のラジオ放送は、1925年(大正14年)に開始されました。ラジオ放送は多数の受信者に対する通信ともいえますが、まだ現時点では放送局から受信機への単方向、つまり一方的な通信であり、情報サービスの一種と考えられます。

 テレビ・画像通信

 テレビも、ラジオと同じく一方向通信の情報サービスです。
 画像の双方向通信として、テレビ電話や携帯電話があります。
 テレビ電話や携帯電話は、図形や文字を座標上の画素に分解し、さらに電気信号に変え伝送します。そして相手側は、これを逆変換して画像に戻すわけです。これは、送受間で人間の意志を交換するというより、図面の伝送が両方向にできるという通信です。
 画像・音声の双方向通信として、テレビ電話などは今後急速に発展・普及をすることでしょう。

 コンピュータの出現

 コンピュータの出現が、電気通信をどのように発展させたかについて考えてみましょう。
 電気通信とコンピュータとがいかにして結びつき、その結果、データ通信がどのようにして生まれたか、そして、それがきわめて自然のなりゆきであったことを理解しておきます。

 はじめ、コンピュータは複雑な計算をする道具として設計されました。
 パスカルの計算機は父親の税金計算を、ホラリスのパンチカードシステムは統計調査の集計業務を、そして最初の電子式計算機は弾道軌跡の計算をするために、それぞれ考えられ、実現をしたといわれています。
 途中、パンチカードをベースとしたコンピュータに、ブル社(フランス)のガンマシリーズがありました。
 過渡的に、いろいろな方式の機種が現われては消え、完全なプログラム内蔵方式のものが実用化したときに、コンピュータは決定的なものになります。

[1] プログラム内蔵方式

 フォン・ノイマンにより提唱されたプログラム内蔵(stored program)方式のコンピュータは、それまでの方式のものよりも数段と優れていました。


プログラム内蔵方式


 それは、あらかじめ処理手順(プログラム)をコンピュータの記憶装置(メモリ)に格納しておき、実行時にその手順を一つずつ取り出し、該当する動作(マシンコード)をおこなう方式です。
 このようにすると、処理手順の変更に対しても柔軟性があり、あらゆる目的に対して好都合でした。
 また、命令がマシンサイクルの速さで実行されるため、コンピュータのプログラム処理効率は飛躍的に向上したのです。

 一連のプログラムを、コンピュータのメモリにしまうという考えは、誰でも早く気付きそうなものですが、実際はノイマンの提案とハードウェアの進歩によって、はじめて実現しました。ちょうど「コロンブスの卵」と似ていて、よほどコンピュータの理論と動作を熟知していないと、思いつけなかったことかもしれません。
 その後、ハードウェアの驚異的な発達に伴って、非ノイマン方式のコンピュータの研究が行われています。しかしまだ、ノイマン方式の壁を超えるものは実用化をしていないようです。
 それは、孫悟空が満身の力をこめ雲で飛んでも、お釈迦さまの手の中から抜け出られなかったことを思い出させます。ノイマンの考えたプログラム内蔵方式は、それほど優れていたのです。


WHAT型からHOW型へ


 プログラム内蔵方式のコンピュータは、作業前にメモリの中にその業務プログラムを読み込んでおきます。この呼ばれるプログラムは、作業ごとに異なるわけですから、内蔵するプログラムが入れ換えられるところに、大きな特徴があるわけです。
 現在商品化されているプログラム内蔵方式のコンピュータは、すべてWHAT型です。この型は、手順をすべてプログラムによって与えませんと動作をしません。しかし、目的だけを与えれば、その手順をコンピュータ自身が求めてゆくというHOW型のコンピュータが、やがて実現すると言われます。
 もっとも、メモリの大きさが今よりさらに飛躍的に大きくなり、処理速度も非常に速くならないと実現は不可能でしょうが‥‥‥

[2] データ通信のはじまり

 社会が発達すると、情報量が増加します。そして、その処理に従来の手作業では、到底追い付かなくなります。
 たとえば、みどりの窓口になる以前の、指定席の購入を考えてみれば分かります。その頃は、回転式のラックに台帳があって、発売の都度係員が取り出し、参照をしたわけです。台帳がない窓口では、電話で照会をしなければなりませんでした。
 銀行の窓口も、そうです。オンラインシステム以前は、普通預金であっても取引支店でないと現金が引き出せませんでした。いま考えてみると、ずいぶん不便なシステムであったことがわかります。

 今日では、情報処理と通信技術との進歩により、これらの問題はすべて解決されています。
 事務処理量の増大は、その結果、通信量の増加を伴いますが、コンピュータによるデータ処理は、このような問題を総合的に解決しました。
 最初、コンピュータは経営の情報処理システムや、工場の生産プロセスコントロールなどに単独で利用されました。一方、コンピュータは電話通信の分野で、電子交換機としての機能を果たしていました。
 やがて、通信回線を用いたシステムがコンピュータを中心に、統合的に構成されるようになります。すなわち、情報処理システムに通信機能が付加したり、逆に通信システムに複雑な情報処理機能が求められたりしたのです。

 このような、電気通信とコンピュータの結合は、
 (1) 離れた場所間で
 (2) 必要な情報を
 (3) 必要な時に
入手できるシステムの構築を可能としました。


データ通信の誕生

 すなわち、電気通信技術とコンピュータ技術が結婚し、やがてできたすばらしい子供が「データ通信」と考えてもよいでしょう。
 電気通信は古い伝統のある名門の家柄の青年、そしてコンピュータは新しい時代に成功した事業家の美しいお嬢さんといったところですか。
 あなたは、どのようにお考えですか?

 このデータ通信技術は、従来のオフライン処理を、一挙にオンライン処理へ移行したといえます。
 オフライン(off-line)とは、コンピュータがデータ通信回線に直接接続していないものをいいます。
 一方、オンライン(on-line)は、データを入出力する機器が、コンピュータに通信回線を通じて接続されているものをいいます。


オンライン処理

 1958年完成したアメリカのSAGE(Semi-Automatic Ground Environment)システムは本格的なオンラインシステムで、データ通信の始まりです。このシステムは軍事用の防空システムで、管制センタにあるコンピュータと、本土をくまなくカバーするレーダ網を、通信回線で結んだものです。
 常に国籍不明機の進入を監視していて、事件が発生するとセンタへ情報が送られ、分析されます。そして、必要に応じて迎撃をしたり、兵員や兵器の出動をします。


○データ通信の発達

 SAGEシステムに引き続き、民間のデータ通信システムが次々と実用化しました。航空会社の座席予約システム、マサチューセッツ工科大学のタイムシェアリング・システム、その他商用のタイムシェアリングなどデータ通信を利用したサービスを開始しました。
 その後、データ通信は急速な発展を続けます。


データ通信の発達


 情報量の増加と、その処理を短時間におこなう必要性が、データ通信を急速に発展させました。そして、これらのことは同時にハードウェアの発展を促し、再びその結果が通信の進歩を実現します。インターネットの実現について、数十年前に予測をした人は、あまり多くないでしょう。
 技術革新の結果、従来の方式とまったく異なる新しい方式が研究・開発され、次々と実用化してきました。
 さらに今後、この傾向はテンポを速めていくようです。

 そのようにして、技術だけはどんどんと急速に進歩をしていく中で、非常に心配なことがあります。それは、人間の心が、はたして技術についていけるかということです。通信やコンピュータといっても、たかが道具(ツール)です。しかし、その道具に振り回されてしまったり、逆に道具が便利すぎるために危険や犯罪が生じたら、どうでしょうか?
 結局は、あまり意味のないことをしていることになってしまうでしょう。

 現実問題として、犯罪が若年化をしているのは、情報化社会の急激な発達による悪影響だという学者もいます。パソコンゲームなどの執拗な攻撃は、幼い子どもの健全な精神の発達を阻害する恐れがあるという識者も多いようです。
 そして、最近になって精神のアンバランスな若者や引きこもってしまう小中学生が増えているという事実も、将来の社会にとって非常に都合の悪いこととなるでしょう。
 あなたは、今後データ通信がどのような進歩をしていくかに、興味をお持ちでしょうか?

 光 通 信

 光通信技術は、光ファイバの開発と半導体レーザ関係技術によって実現した通信方式です。
 光ファイバは毛髪ほどの太さの、極めて透明度の高いガラス繊維です。屈折率の高いコアの回りを屈折率の低いクラッドが覆っています。
 半導体レーザによって、送信側で入射された光は、コアの中をクラッドとの境界面で、全反射を繰り返しながら進み、受信側に届くとフォトダイオードで検出されます。半導体レーザは、電流の強弱を光の強弱に変換する素子です。直線性を改善するため、発光ダイオードが用いられる場合もあります。
 また、フォトダイオードは光を電流に変換します。

 このように、光通信は光で信号を伝送し、電気の場合と比べ伝送効率を上げますが、電気と光の変換が必要になります。送信端で電気信号を一旦光信号に変換したり、光ファイバケーブルの伝送路を進んだ後、受信端で再び光信号を電気信号に戻す必要があります。電気信号を、光の信号にすることを光変調といいます。
 光通信は従来の通信と比較して、多くの長所があります。それは、
 (1) 光は周波数が非常に大きいので、大量の情報量が伝送できる
 (2) 光ファイバは極めて低損失なので、中継点を長くできる
 (3) 電磁気の影響を受けないので雑音に強い
 (4) 銅線に比べ、非常に軽量である
 (5) 原料が豊富にある
などです。

 衛星通信

 1965年に、世界最初の商用通信衛星、インテルサット1号が打ち上げられました。アーリバード(early bird:早起き鳥)という名前で、主に電話の音声とテレビ画像を伝送しました。
 インテルサット(INTELSAT:International Telecommunication Satellite Organization)は、国際間で通信衛星の開発、打ち上げ、運営管理にあたっている組織の名称です。
 日本では、1977年(昭和52年)打ち上げに成功した「さくら」が最初の通信衛星です。

 衛星通信はこの通信衛星を用いて、地上の送受点と衛星間で電波を中継する無線通信です。中継点を宇宙にもってゆことにより、非常にスケールの大きい範囲の通信が可能になりました。通信衛星は人工衛星ともいい、移動衛星と静止衛星があります。
 移動衛星は、長楕円軌道上を回転するものです。
 しかし、ふつうの通信衛星は静止衛星のほうで、赤道上35800kmのところに静止しています。実際は、地球の自転と同一周期で回転しているのですが、地上からは静止しているように見えるということなのです。
 衛星通信の問題点は、降雨による信号の減衰があることと、地球と通信衛星間を電波が往復するのに約0.25秒の伝送遅れが生じることです。


衛星通信


 通信衛星がふつうの通信と比べて優れている特徴は、
 (1) 長距離・広域の通信に適している
 (2) 通信間の距離や地形に関係なく、伝送品質がよい
 (3) 地上の災害と無関係に、大容量の通信が可能である
 (4) 信頼性が高い
などがあげられます。

 ディジタル通信網と高度情報通信システム

[1] ディジタルデータ網

 従来の電話網は、音声を電気的なアナログ量、つまり電流の強弱に変換して伝送することを目的として開発されたものです。したがって、可聴周波数のアナログ信号の伝送には非常に都合がよくても、ディジタル信号を伝送するときには、いろいろと問題があります。
 それは、周波数帯域により、どうしても高速通信に限界があることです。
 また、特定通信回線や高速ディジタル回線などの専用回線を利用した通信は相手が定まっていて、不特定多数の任意の相手と通信することができない不便があります。
 そこで、ダイアル機能で相手を選択できるディジタル専用の伝送路として、回線交換網やパケット交換網が開発され、実用化しました。そしてそれらのネットワークは、従来の伝送路と比較して、データ伝送の高速化・高品質化を実現しました。

[2] データ通信網アーキテクチュア

 機種に依存しない汎用的な網構成として、DCNA(Data Communication Network Architecture)が、NTTと大手メーカの間で開発されました。DCNAの目的として、
 (1) 資源共用による経済性の実現
 (2) 資源分散による信頼性と、コスト性能比の向上
 (3) プロトコルの標準化によるシステム運用の簡易化
があげられます。
 アーキテクチュアとは構造のことですが、この場合は「設計の基本思想」をいいます。
 通信回線側にアーキテクチュアを定め、そこに接続するコンピュータや周辺・端末装置が、その基準に合わせる、という考え方です。そのようにすれば、機種に依存しない通信構成、すなわち機種間の相互乗り入れが、できるようになるからです。

[3] 高度情報通信システム

 高度情報通信システム(INS:information  network system)は、1980年に国際電信電話諮問委員会(CCITT:The Inter national Telegraph and Telephone Consultative Committee)が構想を発表したISDN(integrated service digital network)に基づき、さらに大きなスケールで進めらました。それは、
 (1) 電話網
 (2) 電信網
 (3) 回線交換網
 (4) パケット交換網
 (5) ファクシミリ網
などのネットワークの設備投資を効率化するために、電話網のディジタル化実施とともに、各回線の共用化をはかる計画でした。


INSを支える技術


 この計画を可能にするのは、
 (1) ディジタル交換機技術
 (2) 光通信技術と光ファイバケーブル
 (3) 超LSI技術
 (4) 衛星通信技術
 (5) INS用コンピュータ
などのINSを支える高度技術が発達したからです。

[4] インターネット網の確立

 パソコンが高性能化したことと、通信網の技術方式が確立したことで、地球規模のコンピュータネットワークが普及しました。それまでは、大学の構内や企業の内部で地域的に行われていたネットワークが、世界的に巨大化したのです。この大きなネットワークをインターネットと言います。
 インターネットでは、
(1) ホームページを見ること
(2) 電子メールをやりとりすること
などが、とても簡単にできます。

 ホームページとはWebページとも言い、インターネットに接続をしたパソコンどうしで互いに見ることができる情報のことです。交換できる情報としては、文字のほかに画像や動画、そして音楽などもあります。
 公式の政府や官公庁のホームページ、企業が情報を提供するホームページなどの他にも、個人やサークルが運営する趣味のページなどがあります。
 電子メールは、インターネットを利用してメッセージや情報を送受信するシステムです。世界中、どこへでもインターネットが繋がっているところであれば、一瞬にして送受信が可能です。非常に早い通信が可能になったことで、ビジネスも大いに活性化することでしょう。

[5] URLとメールアドレス

 ホームページを見るときに、そのアドレスとしてURLを用います。
URL(uniform resource locator:ユーアールエル)は、ホームページを見るときに指定するアドレスで、インターネット上の所在地を示す方法の一つです。ふつう「プロトコル名://ドメイン名/フォルダ名/ファイル名」で示します。
ここで、ドメイン名とはサーバーの名称であり、フォルダ名はディレクトリ名ということもあります。
例えば、「http://www1.ttv.ne.jp/~riko/」のようになります。
このURLをInternet Explorerでは「アドレス」、Netscape Navigatorでは「場所」といいます。
次のメールアドレスとは、異なるので注意が必要です。

 また、電子メールはメールアドレスによって相手を区別しています。ちょうど、郵便の住所のようにです。
メールアドレスは、電子メールを受け取るときの宛名に当たるものです。ふつうは「aaaa@bbbb」のような形をしていて、「@」の前の部分にユーザーの名前、「@」の後ろの部分にユーザの利用しているプロバイダの名前が置かれています。
例えば、「riko@ttv.ne.jp」のようになっています。

     呼び出した場所に戻る


 情報は、どのようにして取扱うの?



タスマニア人の数


 あなたは、タスマニア島がどこにあるかご存知ですか?
 タスマニア島は、オーストラリア南東部にある都市メルボルンから、さらに南方約300kmの海上にあります。面積はおよそ7万平方キロメートルあり、かつてはタスマニア人がそこに住んでいました。
 それでは現在、タスマニア人たちは、どうなったのでしょうか?

 タスマニア人たちは、物を数えるときに、
   1、2、沢山
といったそうです。1と2があって3がもう、沢山ですから、4以上を直接に表す数はありませんでした。
 したがって、たとえば4を表現するときは、
   沢山と1
といい、6は、
   沢山、沢山
と数えたわけです。

 タスマニア人たちは、生活が単調で、日常あまり多くのものを数える必要がなかったのです。彼らの経済生活は、狩猟や採集に依存していましたが、家は単に、風を凌ぐ程度の簡単なものでした。また、衣服などという概念もなく、日常は、まったくの裸で、せいぜい雨の日にカンガルーの毛皮を体にまきつけたくらいでした。
 やがて1800年代に、この島にも白人の移民が始まります。
 白人たちは、彼らの方針として、その島に住んでいる邪魔なタスマニア人の撲滅を計り、つぎつぎと殺しました。数千人いた原住民はどんどん減ってゆき、最後に近くのフリンダース島に逃げた数百人のタスマニア人も、やがて1876年には一人残らず死に絶えてしまったのです。

 したがって現在では、「1、2、沢山」と数えたタスマニア人はもう一人もいません。
 あなたは、200年前のこのことを、現在のパンダや朱鷺(とき)などの保護と比較してどのようにお考えでしょうか?

 この章で、情報の取扱いに関しての基礎や常識をマスターしておきましょう。
 まず、基本的な2進法と論理演算について理解をします。つぎに、情報の表現と数式の処理というテーマで、実際のコンピュータの基本的な動きを知っておきます。そして最後に、文字コードなどの情報交換の約束を確認します。


○2進法と論理演算

 ここでは、コンピュータで用いる2進数の体系と、論理演算について学ぶのですが、2進数と論理演算はコンピュータの基本ですから、どうしても常識として理解しておいてください。

 2 進 法

 2進法とは、いったいどのようなことでしょうか?
 わたくしたちは日常、10進法を用いて生活しています。しかし、時間や角度などは完全な10進法ではありません。それは、桁上がりの単位を考えてみれば分かりませんか?

2進法・10進法・60進法


 古代メソポタミアで用いられた60進法が今日、時間や角度に残っています。
 60を桁上がりの基本とするのは、少し大きすぎるようですが60という数が、
     1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60
で割り切れますから、1年を 360日として天文学が盛んだったメソポタミアでは、都合がよかったのでしょう。
 メソポタミア人は、1から59までの数を表現するのに便利なように、楔形文字を作ったといわれます。
 進法の値は、大きくなればなるほど、計算も複雑になります。したがって、いろいろな数の体系のうち、いちばん簡単なものは2進法です。
 それでは、いったいなぜコンピュータがいちばん単純な数の体系を用いるのでしょうか。それは、コンピュータが基本的には非常に簡単な回路で、単純な作業を行っているからです。この辺のところを、よく認識しておいていただきたいと思います。

[1] 2元状態と2進数

 2つの異なった状態を表現することを2元状態といいます。たとえば、
 (1) ものが「ある」、または「ない」
 (2) ランプが「点灯している」、または「消えている」
 (3) 磁性面が「磁化されている」、または「磁化されていない」
などがそうです。

2元状態


 そしてこの2つの状態を、数字の「1」または「0」に当てはめて表現することを2進表示といいます。2進表示であらわす数を2進数(binary number)といい、2進数の体系を2進法(binary notation)といいます。
 逆にいいますと、2進法で表される数を2進数といい、2進数の1桁が2進表示、つまり2元状態になっているわけですね。
 2元状態の表現は、単なる約束であって「ある」を「1」、「ない」を「0」と、はじめに決めただけのことです。
 しかし、一旦決めたら、それと異なる意味合いで自分勝手に使うことはできません。

 コンピュータや周辺装置の電源スイッチに「|」や「○」の記号が表示してあるものがあります。「|」は電流が流れる側を、「○」は電流が流れない側を表す約束なのです。しかし、この約束を守らずに、自分勝手に考え、逆に操作する人がいます。
 当然のことですが、その人が考えているのと反対の現象が発生して、非常に危険です。
 わたくしたちは、日常10進数の体系で生活をしていますので、単純な2進表示も慣れるまでは、かえって分かりにくいかもしれません。
 2進表示は、総てを「イエス」か「ノー」で答えるのですから、非常に明確です。しかし、これはコンピュータ内部の処理のことであって、日常のことになると、単純にイエスかノーでは割り切れないことも沢山あるでしょう。

 10進2進対応


 つぎに、2進数の桁上がりについて考えてみましょう。
 1から10までを、2進数で数えてください。
     1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010
 そうです。これで分かることは、桁上がりが多いということです。
 これは、1桁の数にもたせる意味が、2つしかないのですから当然です。
 10進と2進を対応させると、0と1が全く同じ表現になっていることが分かります。しかし、3は2進ではもう桁上がりが生じて10となっています。
 10進では位どり(小数点)が1桁あがると10倍ずつ増え、1桁下がると10分の1になります。たとえば、100円は10円の10倍、1000円は10000円の10分の1という具合です。

 それでは、2進の場合はどうでしょう。
 2進の場合は、1桁上がると2倍、1桁下がると2分の1になります。
 たとえば2進表示で、
     1000は100の2倍
     10000は100000の2分の1
     100は1の2倍の2倍、すなわち4倍
ということになります。

 2進表示の桁の重みは、小数点からの位置による羃(べき)乗となります。
 すなわち、
     1 は2の0乗、すなわち10進の1
     10 は2の1乗、すなわち10進の2
     100 は2の2乗、すなわち10進の4
     1000 は2の3乗、すなわち10進の8
     10000 は2の4乗、すなわち10進の16
です。

 一般に、ある数の0乗が1となるということも、1つの約束です。
 5の2乗といいますと、
     5×5
と5を2回かける意味です。5の3乗は5を3回、5の4乗は5を4回かける意味です。したがって、5の0乗は5を0回かけることになります。
 そして、その結果が1になるというのは、ちょっと分かりにくいかも知れません。

 あまり難しく考えずに、下の式を見てください。
     bm/bn=bm-n
 この式でm=nになったときが、ある数の0乗になったときです。
 このとき、右辺は今問題としているbの0乗です。一方、左辺を見ると条件m=nより、分母と分子が同じ値をもつことが分かります。したがって、当然その商は1となります。結局、この式が不合理にならないように、「ある数の0乗を1と定めた」と思ってください。

 ビット・ニブル・バイトといいますと、にぎやかにトリオを組んだ男の子の名前みたいですね。しかし、これはいずれも情報量の単位なのです。
 ビット(bit)はbinary digitを縮めて作った言葉で、2進法で用いられる2つの数字、すなわち0か1のいずれかをいいます。すなわち2進1桁をビットといいます。


ビット・ニブル・バイト


 このビットが、4つ集まってニブル(nibble)という単位を、8つ集まってバイト(byte)という単位を構成します。
 ふつう、英数字や記号は1バイトの中のビットの組み合わせで構成され表現されます。しかし、漢字は数が多いので2バイト、すなわち16ビットでコード化されます。この16ビットに対しても呼び名があったほうが便利ですが、いまのところまだないようですね。
 また、最近ではニブルという単位も、あまり使われなくなってしまいました。

 バイトが1024集まって1キロバイト(kB)となります。
 すなわち、
     1Kバイト=1024バイト
なのです。
 これは、2進数の体系で2の10乗、すなわち1024をキロと定めたため、10進の1000をキロとした場合と食い違いが生じているわけです。この違いは、数が大きくなればなるほど大きくなり、42キロバイト以上では、キロバイト表示とバイト表示の最初の部分が異なってきます。たとえば、64Kバイトは 65536バイトです。

 さらに、メガバイト(MB)やギガバイト(GB)という単位が用いられます。
     1Mバイト=1024Kバイト
つまり、1048576バイトになります。そして、
     1Gバイト=1024Mバイト
これは、1048576Kバイトであり、計算をすると1073741824バイトになります。
 ちょっと計算に自信がないので、あなたも、確かめてください。

[2] 16進表現と16進数

 2進数は明快で、コンピュータにとって処理しやすいというメリット(利点)がありますが、一方、デメリット(欠点)もあります。そのデメリットとは一体何でしょうか?

16進表示


 そうです。
 2進数は桁上がりが早いために、いきおい、桁数が大きくなってしまうことです。たとえば、10進数の65535を2進数で表示すると、
     1111111111111111
となり、16桁が必要となります。
 「1111111111111111」では表示に不便ですし、第一間違えやすくて困ります。そこで、これを4桁ずつ区切って、4文字を1桁として表示する方法が用いられます。上の例では、「FFFF」と4桁の表示になります。これをヘキサデシマル表示または16進表示といいます。単にヘキサという人もいます。

 ヘキサデシマル表示は10進表示の0から9までは、そのまま16進表示の0から9に対応させます。そして、10進表示の10から15までを「A」から「F」の文字に対応させて表現します。
 数桁の16進表示の場合でも、いちばん下の桁がA,C,Eのときは偶数、B,D,Fのときは奇数だということが、あまり意識しないでも分かる程度に慣れていただきたいと思います。

[3] 2進化10進法

 2進表示で、小数点以下の数を表現しようとすると、ふつう誤差を生じます。また、割り算をおこなうと、たいてい計算結果に誤差を生じ問題になります。たとえば、結果が当然10000とならなければならないところ9999.9999となったり、逆に10000.0001となる場合があります。
 これでは、とくに金額を扱う場合には困ったことです。
 このような場合は、プログラマの責任によってプログラムの中で計算結果を補正しなければなりません。しかし、不都合となるすべての場合を考慮して、その手続きをプログラムに組み込んでおくことは、なかなか大変でしょう。

 2進化10進法


 そこで考えられるのが、10進数の1桁を1つのまとまった単位として処理する方式です。つまり、10進数1桁を4ビットに対応させ、0から9までの数を表現します。
 そしてこの1桁の中に、符号を含ませたりすることもできます。
 このような数の表現法を2進化10進法(BCD:binary coded decimal)といいます。COBOL言語のように、金額を正確に取扱う場合に用います。

 論理演算

 ルイス・キャロルの『鏡の国のアリス』のなかに、白い騎士が自作の詩を、アリスに聞かせる行(くだり)があります。


アリスと白い騎士


 白い騎士がいいます。
 「それを聞けば、目に涙を浮かべるか、それとも‥‥‥」
アリスはその先が知りたくて、もどかしがって尋ねます。
 「それとも、なに?」
騎士は続けていいます。
 「涙を浮かべない」

 これは、論理としては非常に単純です。たとえば、「AがBに等しいか、またはAがBに等しくない」というのと同じで、時間をずらした言葉の遊戯としては面白くても、アントニム(反義語)やトゥトロジー(同義反復)の関係とも異なりナンセンス(無意味)です。ルイス・キャロルはペンネームで、本名はチャールズ・ダッジソンという記号論理学が専門の数学者です。

 論理演算(logical operation)とか記号論理学などというと、非常に難しく考える人がいますが、演算結果の桁上がりもなく、演算の約束が簡単明瞭なのできっと面白いと思います。
 あなたは、いかがでしょうか?

[1] 正論理と負論理

 コンピュータはディジタル回路で構成されますが、このディジタル回路を設計することを論理設計といいます。すなわち、それは2進の多変数関数を回路で実現することなのです。

正論理と負論理


 ディジタル回路では、電圧の高い状態と低い状態を設定し、それぞれを2つの値に対応させ、高いほうをH、低いほうをLとして表現します。
 さらに、これを信号の「ある」と「ない」に対応させ、
     Hを信号がある(1の状態)
     Lを信号がない(0の状態)
とするのを、正論理といいます。

 この逆に対応させて、
     Hを信号がない(0の状態)
     Lを信号がある(1の状態)
とするのを、負論理といいます。
 当然のことながら、正論理と負論理ではまったく逆の状態になっています。

[2] 論理積・論理和

 論理積(AND)は、2つの入力の両方がともに1のときだけ出力が1になり、他の場合は0になる関係です。
 論理和(ORまたはInclusive OR)は、2つの入力の何れか一方が1であれば、出力が1になる関係です。
 これを別な見方をすれば、2つの入力がともに0のときだけ出力が0ということになります。
 これらの関係を表にしたものを真理値表といいます。論理積を「なおかつ」、論理和を「あるいは」と考えると、論理関係が理解しやすくなるでしょう。

論理積・論理和

 論理積は検索をするときなどで、条件を絞っていくときに使うことがあります。
 たとえば、ホームページで「健康」と「老化予防」と「安心立命」の3つのテーマに付いて述べられているものを探すときは、実際にはAND記号を省いて、検索欄にスペースで区切り
   健康 老化予防 安心立命
のように指定します。
 Internet Explorerのアドレスに直接インプットしてもかまいません。
 すると、その条件を満足するホームページを探し出してくれます。


[3] 排他的論理和・否定

 排他的とは、いやなひびきをもっている言葉ですね。排他的論理和(Exclusive OR)は、2つの入力のそれぞれのビットが、相手と反対のときだけ出力が1となる関係です。
 否定(NOT)は、入力と反対の状態を示すビットを出力します。論理和・論理積・排他的論理和の入力は、それぞれ2つでしたのが、否定はそのビットの反対の状態を与えますので入力は1つです。
 出力はいずれの場合も1つです。詳しい関係は真理値表を見てください。
 ロジックにおいて、排他的論理和と否定は、まったく天邪鬼(あまのじゃく)といえますね。

 あなたが、「否定の否定」を行うときは、とくに注意する必要があります。それは、前にある否定が、続く式のどこまでにかかるかを、はっきりとしなければならないということです。式と文章では、前後関係が逆になりますが、たとえてみましょう。
 広大な邸宅に住んでいる人が、庭の池にいる数百匹の錦鯉に餌をやりながら葉巻をくゆらせ、「わしの家に、ないものはない」といいます。一方、借金取りがやって来たので、アパートのガタガタする戸を、用心深く細めに開き、やせ細った人が中から小声で、「自分の家に、ないものはない」と弁解します。
 同じ言葉でも「なんでもある」という意味と、「なにもない」という両方の意味になるからです。

排他的論理和・否定


 否定を用いると、論理積と論理和の間にはつぎの関係があります。
     NOT(A AND B) = NOT(A) OR NOT(B)
     NOT(A OR B) = NOT(A) AND NOT(B)
 上の式は、論理積の否定はそれぞれの否定の論理和であることを、また下の式は、論理和の否定はそれぞれの否定の論理積であることを表します。
 これらの関係をド・モルガン(De Morgan)の法則といいます。

 記号論理学はブール代数ともいいますが、はじめ論理学の命題を解くためにブールによって考えられました。そして、コンピュータとは関係なく、独立して発達しました。しかし、現在ではコンピュータの基本設計や、インタフェースなどの基本回路作成に用いられます。
 また、コンピュータ言語の中で、論理を組み立てたり条件を記述したりするときにも用います。

 たとえばBASIC言語で、
   IF 15 < AGE AND AGE < 25 THEN PRINT "You are young"
と書きますと「AGEという変数の値が15よりも大きく、かつ25よりも小さい」場合、すなわち「AGEが15と25の間の値」であったら、「You are young」とプリントすることを意味します。すなわち、「15<AGE」と「AGE<25」の両方の条件を満足しなければならないこと、つまり2つの式の内容の論理積を意味します。
 論理演算として、この他に包合(Implication)や同値(Equivalence)などを用いることがあります。


○情報の表現と数式の処理

 つぎに情報の表現、浮動小数点表示と有効桁、さらにポーランド記法などを見てゆきましょう。

 情報の表現

[1] アナログ量とディジタル量

 あなたの腕時計を見てください。最近の腕時計は実にいろいろな種類があります。大きく分けて、文字盤に指針があるものと、液晶による数字表示のものに分類できます。


アナログ時計とディジタル時計


 針のあるものは、その円周上の角度によって時間と分を知るのでアナログ式ということができます。文字表示のものは、言葉通りディジタル式です。ディジタル式は数字の読みがそのまま時刻を表示します。
 あなたの時計はどちらですか?

 それでは、ディジタル式とアナログ式は、どちらがよいのでしょうか?
 それは、目的や用途によって異なりますから、一概にはいえません。
 ディジタル式は、現在の時刻を知るのには非常に好ましい方式です。しかし、待ち合わせのときなど、あと何分あるかを知ろうとすると、引算をする手間がかかり、やや不便を感ずるときがあります。いっぽう、アナログ式ですと針の角度が時間や分に対応しますので、一目で残り時間がはっきりと分かります。
 このような理由で、最近ではディジタル式時計でも、わざわざ長針と短針を表示させたものがあります。

 アナログ量は連続した量をいい、ディジタル量は離散した量をいいます。
 ふつう、コンピュータはディジタル量を扱いますので、データがアナログ量で与えられる場合は、コンピュータに入力するまえに、ディジタル量に変換します。
 たとえば、あなたの身長を記録する場合を考えてみましょう。
 むろん、身長は連続して変化していますが、測定するときはある期間単位になります。したがって、データはディジタル量で与えられます。

 もっと短い期間でアナログ量を計る場合、たとえば、ボイラーの温度を1分ごとに記録するような場合を考えてみましょう。この場合、まさか人間が付ききりで温度の記録をするわけにはゆきません。
 そこで、アナログディジタル変換器(A/D変換器)を用い、自動的にアナログ量をディジタル量に変換して、コンピュータに入力します。
 アナログ量をディジタル量に変換しないで、アナログ量のまま処理するコンピュータをアナログコンピュータといいます。
 また、ハイブリッドコンピュータもアナログ量を、ディジタル量とともに扱います。
 アナログコンピュータは、電圧や電流など物理量の変化を、そのまま動作に用いるので高速です。
 一方、ディジタルコンピュータは単純な数の体系を扱うことによって、処理の高速性を実現しました。

[2] 情報とデータ

 最近、情報という言葉が非常に多く用いられます。また、データという言葉も、同じくらい多く使われます。
 情報はもともと日本語ですが、今日ではデータもすっかり日本語として定着しました。


情報とデータ


 かつて「データ」という言葉をJISで、日本語に置き換える検討が行われました。
 そのとき、データという言葉の用語案として「資料」、「算料」が考えられたそうです。ついでに言いますと、プログラムは「算符」だったそうです。
 何でも、日本語に置き換えてしまうことに、暗いイメージを抱かれる年輩の方もおられますが、あなたは、プログラムやデータというのと、廃案になった算符・算料というのと、どちらがよいとお考えですか?

 あなたは、ある女性のデータ「123456789」が何を意味すると思いますか?
 おそらく、お分かりにならないでしょう。
 実はこのデータは3桁、2桁、2桁、2桁と区切り、4つのアイテム(項目)から構成されているのです。そして、それぞれ身長、体重、ヒップ、バストをcmまたはkg単位で表現したものです。
 すなわち、身長 123cm、体重45kg、ヒップ67cm、バスト89cmなのです。
 いったい、この女性のプロポーションはいかが?


彼女の場合


 もうひとつ、考えてください。
 ある男性が、恋人からメモを受け取りました。そこには、カタカナで
     「アスアサルスバンニキテネ」
とあります。いったい、これはどういう意味なのでしょうか。
 「明日の朝、彼が恋人のところに出かけて行って、留守番をしてあげればよい」のでしょうか。それとも、「彼女が明日の朝、留守をするので晩に来て欲しい」というのでしょうか?

 一般に、データは単に、事実や概念を表現したものですから、そのまま見ていても、意味がはっきりしないことがあります。すなわち、どこで区切るのか、単位は何かなどの基準がないと意味が正確には分かりません。
 情報は、意味がある記号の集まりをいいます。JISで「データを表現するために用いた約束に基づいて、人間がデータに割り当てた意味」と厳密に定義されています。

 浮動小数点表示と計算誤差

 あなたは、コンピュータの内部で数がどのように処理されているか、ご存じですか?
 わたくしたちは、数や数式をある程度、直感的に認識できますが、コンピュータの場合は、そうはゆきません。したがって、記憶や処理になんらか特別な工夫が必要です。
 このため、数や数式を特別なビットや文字の並びに変換する必要が生じます。
 しかし、この変換もコンピュータによって自動的に処理されます。すなわち、この処理手順をあらかじめ、コンピュータにプログラムとして与えておくわけですが、ここでは、その考え方について理解をしましょう。

 扱う数を、限られたビット数で処理しようとするのですから、当然、限界があります。
 大きい数から小さい数までを、一定の桁数をもつ2つの部分に分け、それぞれ並べて表示します。これを、浮動小数点表示といいます。
 コンピュータの処理に対して効果的な数の表現といっても、目的に応じさまざまです。COBOL言語で用いる2進化10進法もそうですが、ここではFORTRAN言語やBASIC言語で、ふつうに行われる方法を理解します。

[1] 浮動小数点表示

 わたくしたちが日常用いている数は、小数点の位置と位どりが定まっていて、固定小数点(fixed point)表示といいます。
 固定小数点表示に対し、数に一定な(base)を定め、仮数部(mantissa)と指数部(exponent)で値を表現する方法を浮動小数点(floating point)表示といいます。ある数Sは底をb、仮数部をM、指数部をe とすると、
     S = M・be
で表現できます。
 ここで、底bはふつう2を用い一定ですので、1つの数に対して仮数部Mと指数部eを並べて表示します。
 仮数はもともと、対数の小数部分をいう言葉ですが、流用して習慣的に用いられます。正式には、固定小数点部といいます。また底は、基数(radix)ということもあります。

 浮動小数点表示は、
 (1) 一定の精度が保持できる
 (2) 広い範囲の数が扱える
という特徴があります。
 浮動小数点表示では、計算誤差を少なくするために、仮数部の有効桁を常に増やす工夫がなされます。つまり、指数部を調整して、仮数部の小数点以下の位どりだけを意味する0の数を減らし、有効桁を少しでも大きくします。これを正規化(normalize)といいます。

[2] 計算誤差

 2進数で計算を行うと、誤差を生じる場合があります。
 0以上の整数では、10進数も2進数も両方とも、共通の1という数をもっていますので対応が完全にできます。
 しかし、0より小さい数、すなわち小数点以下の10進数に対しては、一般に2進表示がうまくゆきません。
 たとえば、0以上の数、10進の3は2と1の合成ですから、2進では10と1の合成で11となります。
 これに対し、たとえば小数点以下の数10進の0.3を2進で表現しようとしましても、困ったことにそれに対応する数がありません。すなわち、2進の0ではむろん小さすぎますし、2進の0.1では10進の0.5となってしまい、大きすぎるからです。


計算誤差


 2進数は、小数点が1つ下がるごとに、2分の1になってゆきました。その数を10進で表すと、
     0.5, 0.25, 0.125, 0.0625, 0.03125, ‥‥‥
となります。また、これらの合成数、たとえば、
     0.75 = 0.5 + 0.25
     0.625 = 0.5 + 0.125
     0.875 = 0.5 + 0.25 + 0.125
などは、2進体系でも厳密に表現できます。

 しかし、10進の0.1や0.01そして0.001などを2進で表現しようとしましても、ちょうどその数を表す2進の数がありませんので、2進にする場合は、何れも小数点以下の近似値で表現されるわけです。たとえば、
     0.1 = 0.0625 + 0.03125 + ‥‥‥‥‥
 これを、2進で表記すると、
     0.1に相当する2進数 = 0.0001 + 0.00001 + ‥‥‥
となり、限りなく10進の0.1に近づくわけですが0.1そのものには、ならないことに注意してください。

2進と10進の対応例


 このように、ふつう2進小数はいくつかの数の合成として近似されます。
 したがって、2進体系を用いた言語で表記されたプログラムは、2進体系にマッチしない数に、誤差が生じることになります。また、同じ理由で2進数は、10進でいう10や100や1000‥‥‥というような10進体系の小数で割ると、どうしても計算誤差が生じます。
 このように考えますと、わたくしたちが身近に使用している計算専用のコンピュータは、厳密な意味で10分の1ができないコンピュータということになってしまいます。
 あなたは、そのことをご存じでしたか。?
 したがって、計算誤差を嫌う金額の計算などは、先に述べた2進化10進法によるプログラムで計算を行なうほうが無難です。

 ポーランド記法

 わたくしたちが、日常用いる数式の表現と異なった表記法があります。ポーランドの数学者ルカシビッツが考えた、ポーランド記法がその一例です。そしてポーランド記法は、変数と演算子の位置関係で、正ポーランド記法と逆ポーランド記法に分けられますが、ふつう逆ポーランド記法が用いられます。
 このポーランド記法はCOBOL言語、FORTRAN言語、BASIC言語などの数式処理に用いられます。
 コンパイラ、インタプリタいずれの言語処理プログラムもこの逆ポーランド記法による数式の展開と処理を行っています。ポーランド記法では、スタックという中間結果をいれる場所を用い、少しずつ数式を処理して最後に結果を求めるのです。


○情報交換の約束

 通信をおこなう場合、当然ですが、送り側と受け側の間で互いにしっかりとした取り決めが必要です。取り決めがなかったり、不明確であると、送受間で勝手に解釈して意味を取り違えることがあるからです。

 情報の符号化・標準化

[1] 情報の符号化

 符号は、一般に人間の思想や考えを表現する形象をいいます。情報処理用の符号は、プログラムやデータを作成するとき用いる文字を指します。
 また、符号化とは文字を0と1の組み合わせで表現することです。
 実際には、文字に割り振られた2進数を指すことになり、文字は数が非常に多いので、そのコードの組合せも多くなって一つの体系を作ります。

 わたくしたちは、この符号化した文字を、言葉の構成要素として情報伝達の手段に用いているのです。
 情報を符号化する場合、まず最初にどのぐらいのビット数を必要とするかを求めます。たとえば、
     8ビットで256とおり
     16ビットで65536とおり
の情報が表現できます。
 英数字だけの表現でしたら、小文字・特殊記号も含めても8ビットあれば十分でしょう。

[2] 情報の標準化

 多数の人々が通信をするためには、どうしても、文字コードを標準化しておく必要があります。
 現在は、標準化されたコードが何種類かありますが、ハードウェアの都合があったりメーカ間の思惑や事情などから、少しずつ異なったコード体系になっているようでます。その結果、機種依存文字などという問題も発生することがあるからです。

アスキーコード表(部分)


 しかし、これらもやがては統一されることでしょう。
 コードは、現在1バイトコードと2バイトコードがあります。そして、1バイトコードには、JISコード(ISOコード)とEBCDICコードの系列があります。また、2バイトコードは、ふつう漢字コードとして用いられます。
 ここでは、JISコード系のASCIIコードを示します。
 ASCIIコード(American Standard Code for Information Interchange)は、アスキーコードといわれ、7ビットコードでパリティビット1ビットを付加して用いました。しかし、パーソナルコンピュータでは8ビット全部を組み合わせ、256通りの記号や機能に割り付けています。
 上のコード表で16進の00から1F(10進の0から31)までは、制御コード(コントロールコード)といい特別な用途に当てています。

 漢字は非常に数が多く、通常用いるものでも、
     JIS第1水準漢字  約3000文字
     JIS第2水準漢字  約3400文字
で、合計して6000文字以上あります。したがって、この表現が問題になってきます。漢字は総てコード化され、表現は16ビットすなわち2バイトを用います。
 漢字の表現のしかたにも、数種類の方法があります。大きくみて、
 (1) 2バイトでそのまま漢字を定義し、表現する
 (2) 1まとまりの漢字の前後に識別コードをつける
方法があります。

 シフトJISコードは(1)であり、JISコードは(2)の方式です。同じコードでもこの体系が異ると、別なことを意味します。シフトJISコードの場合、ふつう漢字2バイトのうちの1バイト目に当てられた符号は単独で別の意味に用いることができません。
 JISコードの識別コードは、前の方を漢字インコード(KI)、後ろの方を漢字アウトコード(KO)といいます。
 たとえば、「漢字」という文字を、シフトJISコードとJISコードで表現すると、
     シフトJISコード  8ABF 8E9A
     JISコード     1B4B 3441 3B7A 1B48
となります。シフトJISコードでは、「漢」が8ABF、「字」が8E9Aです。
 一方、JISコードでは、「漢」が3441、「字」が3B7Aです。
 さらにJISコードでは、漢字インコードとして1B4B、漢字アウトコードとして1B48が両端にあります。
 ふつう、パソコンのOS(オペレーティング・システム)では、シフトJISコードが用いられています。

 ここで、おまけを付けておきます。
 よく経験することですが、折角情報の約束をしても、文字の正しい読み方をしない人がいます。
 たとえば「”」を「ちょんちょん」、「:」を「てんてん」と勝手に言ったりします。
 「(」を「カッコ」というのはいいのですが、逆向きの「)」を「コッカ」などと言ったりもします。
 また「!」を「あっ」といったりする人がいて驚きます。
 あなたは、いかがでしょうか?
 プロは、文字の正しい読み方を知っている必要があります。

文字の読み方

 情報の加工

 情報を原形のままで送ると、伝送効率が悪かったり、内容によっては第三者に知られると具合の悪いことがあります。

[1] 情報の圧縮化

 ふつう、送信データの中には無駄な情報が含まれていたり、省略できる部分があったりします。同じパターンが繰り返されるときや、文字の空白が続くときは、工夫をして短くします。とくに、図形を伝送するときは、無地の部分について省略すると効果があるからです。
 これら不要な部分を、送信前に取り除くことを情報の圧縮化といいます。

[2] 情報の暗号化

 機密度の高い情報を、そのままの形で送れば、他人に内容を知られて具合が悪いことがあります。このようなときは、情報を暗号化して内容を保護します。
 最近、わたくしたちの日常生活においても、暗唱番号とかパスワードという機能が多く用いられます。
 銀行のキャッシュカードもそうですが、暗唱を用いるのはカードを使用する際に本人のチェックをし財産を管理するためです。カードの注意書きには、番号を他人に教えないように書いてあります。
 忘れてしまったときの用心に、カードに暗唱番号をマジックインキなどで書き込んでおいたりする人がいますが、まったく馬鹿げたことですね。

 暗唱番号やパスワードは、他と何の脈絡もありませんので、絶対に忘れないことが大切です。忘れてしまって、ただ目茶苦茶に入れても駄目です。あなたが、キャッシュカードの暗証番号を忘れると、おそらく、大変面倒な手続きが銀行で待っていることでしょう。
 覚えていたものを忘れたときは、まだ思い出す可能性があります。しかし、はじめから知らないものを推量で当てることは、まず不可能でしょう。

 たとえば、忍者が「闇」というと「雲」と応えるものとします。
 これは一種の約束ですから、当事者間でないと分かりません。これを知らないものが、それこそヤミクモに何回いっても当たる確率は非常に少なく、すぐに正体が分かってしまいます。
 相手が想像を付かないような言葉を用意しておかないと、暗証番号の役目を果たしません。ですから、自分の生年月日や電話番号などを、そのまま暗証番号にするのは、あまり好ましいことではないようです。

 しかし、この暗号も一度その論理が相手に分かってしまうと、まったく逆効果になります。またさらに、相手が暗号を分かっておりながら、それを隠している場合には、もうお手上げの状態となってしまいます。先の戦争の末期のことで、そのことを知っている人もおられることでしょう。
 暗号を解くことに興味がある方は、エドガー・アラン・ポーの『暗号論』や、コナン・ドイルの『踊る人間』を読むと面白いでしょう。

     呼び出した場所に戻る


 データ通信システムって、いったい何?



電話ごっこ


 あなたは、かつて電話ごっこをして遊んだことがありますか?
 幼いころのなつかしい記憶として、覚えている方も多いと思います。ここでもう一度、そのときのことを思い出してみましょう。
 まず、直径約3cm、長さが10cmぐらいの紙筒を2コ用意します。ちょうど、トイレットペーパの芯のような形と大きさをしたものです。つぎに、その2コの紙筒とも、片側の口にセロファンを幕のように張りつけます。
 これで、一対の送信機と受信機ができあがりました。送受信機ともに、まったく同じ構造をしています。

 つぎは伝送路、すなわち信号の通り道です。
 2コの紙筒のそれぞれ片側に張ってあるセロファンの中央を、3mくらいの1本の糸でつなげば、それがもう伝送路です。実際には、その糸の両端を接着剤かセロテープで、セロファン面の中央に、しっかりと付けます。
 このようにして、2つの紙筒が1本の糸で結ばれます。
 装置は、これで完成です。

 いよいよ送受信、つまり通話を行います。通話は、紙筒をもった2人の子が、互いに離れ、糸をたるませないようにピンと張って行います。一人が、紙筒を口に当てて話すときは、もう一人は紙筒を耳に当てています。
 このようにすると、送信側の子供の声は筒を通ってセロファン紙に当たり、そこで力学的な振動に変換されます。さらに、その振動は糸を伝わって受信側の紙筒のセロファンを再び振動させます。その結果、空気振動によって音声が再生され、筒を通って受信側の子供に聞こえるわけです。

 この振動の変換の部分、すなわちセロファンを、仮に変復調装置とでもいいましょう。
 経験された方は、お分かりのことと思いますが、こんな簡単な理屈と装置で、結構音声が伝送できるものです。「データ通信」の基本的なシステムは、この電話ごっこが複雑になったものと考えてください。つまりこの電話のモデルは、送信機と受信機の間に、それぞれ変復調装置を介して伝送路があるからです。
 このように考えると、データ通信システムを理解しやすいと思います。

 この章では最初に、データ通信の基本構成がどのようになっているかを理解します。
 つぎに、情報処理とデータ通信の関係、さらに通信システムの構成について学習をします。そして、実際のデータ通信がどのような方法によって、今日の信頼性が高い運転を実現しているかを知っていただきたいのです。とくに身近なインターネットが、どのようにして実現をしたかを知っておくことは、非常に大切なのではないでしょうか。


○データ通信の基本構成

 わたくしたちが日常、銀行や駅の窓口など、身近な生活の場で気軽に接し、何気なく利用している高度なデータ通信システムも、過去から現在にいたるまでの電気通信技術と、新しいコンピュータ関連技術の融合によって、実現していることがわかります。
 したがって、今日のデータ通信が、長い期間の先人の工夫と努力によって、実現したことも忘れないようにしたいと思います。


身近なデータ通信


 ある人が、自分の意志を他人に伝えることを通信といいます。
 通信の「通」は「届く」とか「つながる」という意味です。一方、「信」は「合図」のことですから、通信は「合図が届く」ということになります。「信」という字は「にんべん」に「言」と書きますが、これは人が言うことを意味しているのでしょうか。
 あなたは、これをなかなかよくできている会意文字と思いませんか?

 英語では、通信をcommunicationという場合が多いようです。
 これは、もうすっかり日本語になってしまい、コミュニケーションあるいは略して、コミュニケといったりしますね。
 データ通信はdata communicationといいます。
 この他に、通信の意味でよく用いる英語に、
     correspondence, information, news
などがあります。
 また、transmisson(伝達)はデータ伝送をいう場合に用います。

 人間が、社会において共同生活をしてゆくためには、互いに何らかの方法で意志を伝える必要が生じます。
 つまり、人間がはじめて集団生活を行った古い時代から、すでに通信が存在したのです。
 この「意志の伝達」を、客観的にみると「情報の移動」となるでしょう。
 ここで「情報の流れ」は、「物質やエネルギーの移動」とは性質が大きく異なります。情報を運ぶ媒体は、音声、電流、電波そして光などさまざまですが、ここで媒体そのものを移動するのが目的ではなく、その媒体に乗せられた情報を移動していることに注意してください。

 社会のしくみが、あまり発達していなかった時代には、さほど細かい取り決めは必要なかったでしょう。相手が近くにいる場合は、身振りや手振りで意志が伝わるからです。また、相手が遠い場合は使者を走らせたり、火をたいて煙を出したり、太鼓の音を用いたりしました。
 この時代は情報量も少なく、危険が迫ったときの連絡とか、日常生活に付帯する簡単なサインや合図程度でこと足りたと思われます。
 言葉もあまり発達しておらず、むしろ叫び声か、かけ声のようなものであったと考えられます。ターザンや少年王者の雄哮(おたけび)は、動物に対する通信でしょうが、言葉の未発達だったころは、おそらく、あのような手段で、互いに危険を知らせたり、連絡をしあったりしたと思われます。

 しかし、この場合も叫び声の調子によって、何を意味するかが、それまでの長い間の慣習で決まっていたはずです。すなわち、情報の送り側と受け側では、互いに何らかの信号の約束があったと考えられます。時には誤って、意味を取り違えるようなこともあったでしょう。しかし、送り側は約束にしたがって送信し、受け側はその約束によって正しく理解をしました。
 言葉が発達してからは、自分の意志を相手に伝達するため、もっぱら言葉が用いられました。相手が遠方にいる場合、言葉をそのままの形で届ける工夫がなされました。
 言葉を媒体とする通信は、手紙をはじめとして、電信や電話もそうですし、コンピュータによるデータ通信も同様です。

 さらに、意志の伝達は個人と個人の間ばかりでなく、個人と社会、さらには社会と社会と大きく広がりました。
 今日では、音声を発するかどうかは別にして、ふつう、言葉をそのまま通信内容を表わす道具として利用します。つまり、言葉が分からないと通信ができません。
 たとえば、「危険が迫った」といっても、相手が「危険」とはいったいどういう状態なのか、また「迫った」とは、何を意味するのかが、分からなくては内容が正確に伝わらないでしょう。
 通信ばかりでなく、一般に人間の思索は、言葉のイメージによって組み立てられます。したがって、言葉をあまり知らない子供は、単純なことしか考えられません。また、複雑なことを考えることのできる人は、ふつう語彙の豊かな人です。
 あなたも、そのように思いませんか?

 このように考えると通信の内容は、「意味を約束した語彙の伝達」ということになるようです。
 科学が発達して、意志の伝達の範囲が広がるにしたがい、通信の相手が人間でないことも起こります。すなわち、人間が機械を経由して通信することも、考えてゆかねばならなくなるのです。
 この人間と機械の間のやりとり、すなわちマン−マシンインタフェースを、どのようにするかが、近代社会において1つの問題になってきました。機械は、高速性を実現するとともに、当初考えつかなかったようなトラブルも引き起こしたからです。

 また、いっぽうではマンツーマン、つまり人間関係の問題さえも、多発するようになってしまいました。なぜならば、通信の手段が身近になったために、つい相手を傷つけるようなことを言ってしまったり、誹謗や中傷が簡単にできるようになったからです。
 そのような簡便性から、せっかくのコミュニケーションが基本を理解していない場合には、事件を発生する場所になってしまうことがあるのです。また、互いに顔が見えない通信の場合には、さらに「細心の注意をしないと意志の伝達がうまくいかない」ということを知っておくことが必要でしょう。

 データ通信やインターネットは、通信の手段に過ぎません。
 その手段が発達をしたために、問題が起こるようではいけません。この辺で、「通信とは何か?」とか「意志の伝達はなぜ必要か?」などという基本的な問題を認識しておかないと、科学技術の発達も好ましい結果をもたらさないのではないでしょうか?
 つまり「利用される技術」よりも、「利用する人間」の側に大きな問題があることは、歴史上にも多くのパターンから見られる事象です。そのような基本的なことの再認識も、ときには必要でしょう。

 送信と受信

 データ通信の輪郭が、はっきりしてきました。ここでさらに、もう少し掘り下げて考えてみましょう。
 データ通信には、送信者と受信者が存在するということがいえます。すなわち、互いに相手があるということです。そして、その相手どうしが、意志の伝達をしようとして通信を行います。
 つぎに、その通信が双方向性であるということです。
 双方向性というのは、Aが送信者になり、Bの受信者に対して通信ができるとともに、立場を逆にしてBが送信者、Aが受信者となる通信も可能だということです。

 もっとも例外もあります。
 たとえば、双方向性のない一方向のみの通信として、今までのラジオやテレビの放送があります。
 また、はじめから通信回線が一方しか通信できない構造のものもありますし、指令などのように返答が不要な通信もあります。
 しかし、このページではこれらを含め広い意味で通信といいます。

 また、相手がなくても通信をしている事例があります。
 あなたは、ご存じでしょうか? アメリカのバージニア州にある国立電波天文台では、巨大なアンテナを宇宙空間に向けて通信音を待っていました。これは、相手のない通信です。
 しかし、絶対に相手がいないと、はじめから決っていたのではなく結果的に通信の相手は、今までには現れなかったということなのです。はじめ学者たちは宇宙の彼方から、誰とも知れない知能の高い相手が、何らかの応答をしてくることを、期待していたのですから……

 かつての通信は、送信側にも受信側にも必ず係員がいました。
 そして「朝日のア」とか「いろはのイ」などと言い、互いに確認をしながら通信しました。しかし今日では、データ通信の相手は直接に人間である必要はありません。
 送信側と受信側には、ふつうデータ端末装置かコンピュータがあります。これらの装置は自動的にデータ処理ができますから、常時そのそばに人間がいる必要はありません。
 それでも、データ通信システムを構成する基本的な要素は、「送信者と受信者の関係」が基本なのです。

 送信者のいる場所を送信側または送信端、受信者のいる場所を受信側または受信端といいます。
 そして、この立場は通信の進行とともに入れ替わります。
 送受信端間は、データ通信回線で結ばれています。通信の途中には、多くの装置が存在し、これらが人間の作業を大幅に代行しますので、現在ではもはや機械を通じた通信といったほうが適切かもしれません。
 このようなシステムは、人間が機械に通信をしたり、また逆に機械が人間に通信をしているような錯覚を、わたくしたちに起こさせることがあります。
 さらに、人間が直接には介在せずに、人間の意志によって全自動化した機械と機械の通信もあります。


マンツーマン・マン−マシン・マシン−マシン通信


 このような、人間と機械の通信の形態をそれぞれ、
 (1) マンツーマン通信
 (2) マン−マシン通信
 (3) マシン−マシン通信
ということがあります。
 人間同士の通信は融通性に富み、臨機応変の処理ができます。時には黙っていても、互いに意志が通じることさえもあるからです。

 しかし、相手が機械となるとそうはゆきません。人間と機械の通信を行う場合、機械側の方に、くどいぐらいに人間と同様な判断機構をもたせておかないと、通信がスムースにゆかず支障をきたすことがあります。
 OCR(光学文字読取り装置)に入力するときなど、つくづく機械の限界を認識させられることがあります。たとえば、「イイエ」と入力したつもりが、どういうことか「イイI」となっています。なぜそんなことになったかをよくよく考えてみますと、片仮名の「エ」の上下の棒が少しばかり短くて「I」と認識をしてしまったようです。

 このようなことは、人間が文章を前後の関係を考慮しながら読む場合など、まず起こりません。なぜならば、誰にでも非常に広範囲の常識があるからです。
 人間と機械間の調整は、まだいろいろと問題が残っています。そして、このようなことを解決することを、マン−マシンインタフェースをとるといいます。

 データ通信のハードウェア

 データ通信システムを物理的に見ますと、3つの主要部分から、構成されていることが分かります。
 それらは、
 (1) データ端末装置
 (2) コンピュータ
 (3) データ伝送回線
です。



データ通信の3要素


 データ端末装置は、ふつう中央のコンピュータから離れた場所にあり、人間と通信システム間のデータの受渡しを行います。すなわち、データをコンピュータに入力したり、コンピュータから出力データを受け取ったりします。しかし、ここのところ急速にデータ端末装置自体にも、小型コンピュータやパソコンが用いられるようになってきました。
 コンピュータは、通信システム全体の制御や、大量のデータ処理を行います。大型・高性能のものが利用されることが多いようです。むろん、小型コンピュータに分散をして処理をさせているシステムもあります。
 データ伝送回線は、データ端末装置とコンピュータの間にあり、相互に情報を伝送するための通信回路です。ネットワークになっていて、非常に複雑な場合もあります。

 この3つの要素が有機的に一体となって、通信システムという一つの機能を構成します。その結果、離れた地点間で情報の授受をしたり、お互いに処理することが可能になります。
 ここで、データ端末装置が小型のパソコンである場合もあるでしょう。また、データ伝送回線中に大型コンピュータやパソコンを含んでいることもあります。近年になって、コストの低減を目的とする大幅な技術革新があったために、通信のシステムは非常に変化をしたからです。
 したがって、上の図は理解をするための基本的な構成を示すものです。

 データ通信を支えるもの

 データ通信システムが基本的には、データ端末装置、コンピュータそしてデータ伝送回線から構成されることは分かりました。しかし、これらの装置が、で〜ん!と置いてあっただけでは通信は十分ではなく、別な角度からそれらを支えるものが必要になってきます。そしてそれらが、
 (1) インタフェース技術
 (2) プロトコル
 (3) ソフトウェア
などです。


通信システムを支えるもの


 このことは、あなたがドライブをするときのことを考えてみれば分かります。
 自動車を構造的に見ればエンジン、ハンドル、車輪その他の構成要素があり、それぞれ大切な役目を果しています。そんなことは、わかりきったことです。しかし一方では、正しい運転技術がどうしても必要です。また交通法規や道路・地理などの知識がありませんと、快適なドライブが思うようには実現しないでしょう。
 データ通信においても、このようなことと事情が似ています。

 インタフェース技術は、データ通信システムの空間を広げます。
 インタフェースという言葉は装置間の結合を意味しますが、具体的には装置と装置をつなぐために設けられた回路です。インタフェースの詳細は後で学びましょう。
 プロトコル(protocol)は「調書」という意味ですが、ふつう「通信規約」といわれ、通信を可能とするための、さまざまな取り決めや手順をいいます。そして、プロトコルは
 (1) 物理プロトコル
 (2) リンク制御プロトコル
 (3) ネットワークプロトコル
 (4) システム機能制御プロトコル
 (5) ユーザプロトコル
などのレイヤ(layer:階層)に分類され、それぞれの階層ごとに約束が規定されます。

 ソフトウェアは、システム全体の制御や利用のためにコンピュータに与えるプログラムのことです。ソフトウェアについても、後で学びましょう。
 このようにインタフェース技術、プロトコルおよびソフトウェアが、ハードウェアの要素と有機的に一体となって、データ通信全体の運営を効率よく実現しています。
 したがって、これらの機能を一つずつ切り離し、別々に考えてゆくことは、全体のイメージを不明確にするおそれがあるでしょう。


○情報処理とデータ通信

 最近、各方面で情報量が膨大に増加しています。そして、その処理の必要性がコンピュータの発展を大いに促しました。さらにまた、そのコンピュータの進歩は、再び高度な情報処理を実現する原動力になりました。
 つまり、原因と結果が互いに関係し、今日の発展を実現したのです。
 コンピュータの発達によって、かつては考えられなかった複雑なデータ処理が可能になりました。
 つい先ごろまでは、情報処理は単に大量のデータを扱うバッチ処理をいいました。バッチ処理(batch processing)は一括処理ともいい、データをまとめておいて一度にコンピュータに入力・処理する方式です。効率はよいのですが、データ発生から結果の出力までの時間が、長くなるのが欠点です。

 しかし、最近はコンピュータと通信技術の発達により、遠隔地でもデータの発生と同時に入力、ただちに処理結果の出力ができるようになりました。
 このように、情報処理はデータ通信の範疇と混然一体となり、統合した一つのシステムが構成されるようになります。
 そして、従来の電話網を利用した通信の限界から、新しいディジタル網が実用化されるようになり、データ通信はさらに一層高度なコンピュータの活用を可能にしたのです。

 システムとコンピュータ

 あなたは、むろんシステムという言葉を知っていますね?
 それでは、システムのイメージをこころに描いて下さい。
 日常、わたくしたちはこの言葉をよく用いますが、それでは「システムとは何か?」と改まって言われると、ちょっと答えにくいのも事実でしょう。深く考えずに、何気なく用いる言葉で、それで話すほうも聞くほうも互いに意味が通じるわけですから、そんな具合のいい概念はありません。たとえば、「時間」とか「心」などという言葉のようにです。
 このシステムという言葉は、非常に大きな意味をもっています。

 最近では、この言葉もすっかり日本語として定着したようです。今日、システムという言葉は企業内部や新聞紙上で、日常茶飯事のことのように用いられているからです。
 しかし、ノーバート・ウィーナーの『サイバネティックス』(池原他3名訳、岩波1969年発行のものを参照)には、日本語としてこの言葉は、まだ見あたりませんでした。そこには、たとえば原文でself-organizing systemとあるのを、システムという言葉を用いずに、わざわざ自己組織系と訳されています。システムという言葉が、まだ定着をしていなかったためでしょう。

 ふつう、「システムとは有機的に結び付いた集合体」と考えられます。また、その集合体が何らかの目的をもっていないと、システムとはいえないと考える人もいます。集合体ですから1つのシステムを観察しますと、全体がさらにいくつかの構成要素から成り立っていることが分かります。これを、サブシステムまたはモジュールといいます。
 さらに、モジュールはいくつかの機能単位から構成されています。

 また、別な角度からシステムを観察しますと、インプットとアウトプットがある有機体ともいえます。有機体というのは、その部分部分が、互いに作用をしあって、一つのまとまりを作っているということです。
 その有機体はインプットに対するアウトプットの比、すなわちOUT/IN関数の値を、常に最大化しようとする機能のあることも分かります。
 つまり、これがシステムの目的といえます。

 ある人が、笑って冗談を言いました。
  「システムとは、
     始終、総てを、適度に、結び付けている
  ものだよ」
 あなたは、この人が言ったことをどう思いますか?
 コンピュータについても、システムと同様のことがいえるでしょう。コンピュータにも入力があり、出力があります。コンピュータ自体はハードウエアですが、それでも通信システムの中枢を占める1つの構成要素ということになるからです。

 情報処理システムとデータ通信システム

 情報処理システム(information processing system)は、インプットデータを効率よく処理・整理して、効果的なアウトプットを作成する一連のしくみをいいます。当然のことですが、そこにはコンピュータがあり、あらかじめ作成したプログラムによって重要な役割を果しています。
 ふつう、わたくしたちは単に情報処理システムというと、装置を中心に考えがちです。しかし、実際には装置に格納された一連のプログラムが、システムを大きく特徴づけているのです。それは、コンピュータを効率よく動かす基本的なプログラムに制御される、数多くの業務プログラムから構成されています。
 この基本的なプログラムをオペレーティング・システム(OS)といい、全体の操作性に大きく影響します。

 オペレーティング・システムの下に、たとえば、経理システム、給与計算、売上集計などというような、企業内の業務単位プログラム群があります。そしてさらに、各業務単位プログラムはいくつかの小さい単位のモジュールから組み立てられています。この様子は、1つの有機体のような体系をもっています。
 装置として見た情報処理システムは、
 (1) コンピュータ本体
 (2) 入力機器・出力機器・補助記憶装置などの周辺装置
 (3) 装置間を結合するインタフェース
で構成されます。

 データ通信システムは、この情報処理システムに、通信装置が付属したものです。離れた場所間の通信を目的としたシステムですから、送受間でデータをやりとりすることに特徴があります。
 データ通信システムに入力するデータは、ふつう発生の都度インプットされます。そして出力は、情報処理システムで作られた付加価値の高い結果です。
 このように、データ通信システムは、実際の現象とほぼ同時にデータが入力され、直ちに問い合わせ結果が出力される機能をもっています。これを、リアルタイム(real time:実時間)システムといいます。
 たとえば国鉄のみどりの窓口や、銀行の預金処理なども直ちに結果が得られリアルタイムシステムです。

 つぎに、オフラインとインライン、オンラインの理解をしましょう。
 オフライン(off-line)とは、データの作成を専用の装置で行う方式をいいます。コンピュータとその装置をつなぐ配線がありませんので、その間の運搬や手続きは人間が手作業で行います。大量のデータを分散して作成するときに効果的です。
 インライン(in-line)は、コンピュータ本体と入出力装置が、同一場所にあるものをいいます。ふつう同じ室内とか、せいぜい同一建物内に、まとまったシステムとして置かれます。インラインシステムでは、一般にコンピュータと端末装置の接続がバスライン(母線)による並列接続ですから、とくに通信の技術は必要ありません。
 オンライン(on-line)は、線でつながった(直結)という意味です。これはコンピュータと入出力装置が、離れて設置される場合をいいますが、この離れた場所にある入出力装置はデータ端末装置といわれます。
 中央にあるコンピュータと、遠隔地のデータ端末装置との間で、多量の情報を授受するわけですから、当然高度なデータ伝送の技術が必要です。

 ふつう、データ通信システムと情報処理システムの相違は、オンラインシステムとオフラインシステムの違いであらわされます。そのように考えるとデータ通信システムは、そのサブシステムとして情報処理システムを含んでいることがお分かりでしょう。
 データ通信システムは、データの通信装置に情報処理システムを含んだものとも、逆に情報処理システムに通信回線が接続し、通信という機能が付加したものとも考えられます。また、データ通信システムはコンピュータの入出力装置の1つに、通信制御装置があってコンピュータから遠く離れた場所にあるデータ端末装置と情報の受渡しできる装置ともいえます。
 いずれの場合も、結局は同じことを言っています。

 データ通信システムで、全体の制御を行うコンピュータがある場所をセンタ(center:中央)といいます。そして、そのコンピュータをはじめ、センタにある装置一切をセンタ装置といいます。
 つぎに、このセンタ装置の機能と構成について考えましょう。
 センタは、通信システムを構成する内外の各装置をコントロールする通信の中央指令室です。センタ装置は、中央コンピュータを中心に周辺装置として入力装置、出力装置、補助記憶装置があります。
 さらに、通信制御装置は通信回線を経由して、遠距離にあるデータ端末装置につながっています。
 ふつう、データ端末装置としてはパソコンが用いられます。

 センタ内のコンピュータとセンタ外のデータ端末装置は、互いに通信をおこないます。センタ装置は、高度な機能をもつハードウェア群でシステムを構築していますが、はたらきの面からみるとコンピュータの内部にあるプログラムが主になります。このプログラムの機能は、
 (1) システム全体の制御を行う
 (2) データの演算・記憶・転送を行う
 (3) データの入出力と通信を制御する
 (4) 業務プログラムを実行する
ことなどです。


○通信システムの構成

 実際の通信システムは、大規模のものから小さいものまで、それぞれ用途に基づいて設計され、構成はまったくさまざまです。しかし、構成要素の組み合わせから、いくつかの基本形式に分類されます。そしてふつうコンピュータ・伝送路・端末装置の配置は、基本的には変わりないが、安全性のため予備系をどのように設置するかが通信システムを特徴づけます。
 信頼性の評価については、いろいろな考え方があり、それぞれ、いくつかのパターンに分類され実施されます。しかし、実際には変形システムがあったり、混合型があったりもします。

 データ通信システムは、とくにその機能の安全性を満足させるために、全体の構成をどのようにするかということが非常に大切です。ふつう、システムを設計するときには、経済性を大きな問題とします。しかし、データ通信システムはオンラインシステムを構成しますので、経済性の他にも
 (1) 信頼性
 (2) 稼働性
 (3) 保守性
を同時に評価・検討しなければなりません。

 信頼性(reliability)は、システムの故障発生を最小限にする技術で解決します。これは1つ1つの構成部品の信頼性に分散され、装置技術が大きく影響します。
 稼働性(availability)はシステムを停止せず、できるかぎり運転を続けることをいいます。装置の小さいエラーは、自動訂正や再試行(リトライ)がなされますが、システムの一部が故障した場合、その部分を切り離して運転を続けます。したがって、大切な部分は予備系をもつことになります。
 保守性(serviceability)はシステムが故障をした場合、故障箇所を早期に修理することをいいます。
 この3つの特性を、それぞれの頭文字をとってRAS機能といいます。

 予備系の保有

 予備系があれば、システム全体の信頼性は高くなります。しかしその反面では費用の増加、すなわち経済性の低下を意味します。設計時に、この辺の見合いをどうするかについてはなかなか難しく、それぞれに一長一短があります。

[1] 単一システム

 単一システム(simplex system)は、中央処理装置が1つしかないものを言います。これは、予備系のないことを意味し、中央処理装置が故障した場合、直ちにシステム全体の機能が維持できなくなってしまいます。ふつう、単一システムはオフラインシステム用ですが、オンラインシステムでも緊急度の高くない業務に用います。
 単一システムが故障した場合、修理時間中は業務が停止することになりますから、事前にその間の対策が十分なされている必要があります。

[2] 二重システム

 二重システム(duplex system)は、故障時のバックアップ(支援)を考慮し、単一システムを物理的に2系列用意したものです。
 全部の装置が2倍になりますから、当然費用もその分だけ増加します。したがって、予備系を待機させておくだけでは不経済ですから、平常時にはこの予備系を通信系から切り放し、オフラインの作業に当てます。通信処理とオフライン処理が、半々くらいの比率のときに効果的です。

 中央処理装置のバックアップ

 二重システムは、全く同じシステムを予備系としてもちましたが、ふつうはシステムのうち重要な部分のみを支援する方式が用いられます。

[1] デュアルシステム

 デュアルシステム(dual system)は、2個の中央処理装置をもっています。
 平常運転のときは、2個の中央処理装置にまったく同じ処理を行わせ、それぞれの結果を照合します。結果が同一ならば正常とし、作業を続行します。もしも結果が、互いに異なる場合はエラーとします。エラーが発生した場合、故障した中央処理装置をシステムから切り離し修理します。
 この間、運転している中央処理装置は1つになります。したがって、修理が終わるまで、バックアップ装置がないことになります。デュアルシステムは非常に高い信頼性が得られますが、中央処理装置を2つ置くためシステムが高価になってしまいます。

[2]  マルチプロセッサシステム

 十分な予備系を置くことは、信頼性の面で望ましいことです。しかし、費用の面から考えると無駄が大きく、システム全体の稼働率も下がってしまいます。したがって、故障すると全システムに対し影響が大きい部分のみを二重にし、それぞれの仕事を決めておくなどして安全を計る方法があります。
 マルチプロセッサシステム(multi processor system)は、数個の中央処理装置を並列に配置し、メモリ・周辺装置・通信制御装置を共同に利用します。このようにすると、仕事の同時並行処理が可能になり、非常に経済的だからです。
 ある1つの中央処理装置が故障した場合、残ったものを再編成して運転が続けられるため、システム全体として見れば信頼性が高いといえるでしょう。

 負荷の分散と経済性

[1] 負荷分散システム

 負荷分散システム(load share system)は、設計当初から負荷をいくつかの中央処理装置に分散し、処理させることを計画したシステムです。ちょっとマルチプロセッサシステムと似た構成ですが、予備系という考え方よりも、むしろ将来のシステム拡張や、変更に都合がよいシステムといえます。
 このシステムは中央処理装置の交換が、分散されたシステムごとにできるので都合がよく、電話回線の電子交換システムにも用いられます。ある1つの中央処理装置が故障したときは、他の数台が、それぞれの余力に応じてカバーすることが可能だからです。

[2] タンデムシステム

 タンデム(tandem)とはあまり聞き慣れない言葉ですね。これは、馬が縦に1列に並んだ状態を言い、自転車などでも縦に数人で乗るものをいいます。アンリ・トロワイヤの『自転車の怪』という短編に、ご主人が亡くなるまえに、よく夫婦で乗ったことが書いてありました。
 タンデムシステム(tandem system)は中央処理装置の機能を分散し、いくつかのブロックとして直列に接続したものです。負荷分散システムが、機能を並列に分散したのと同様に、タンデムシステムも最小限の費用で、将来の機能拡張に備えることができます。
 このシステムで、通信制御装置とメインコンピュータの間に、小型コンピュータを置き、通信のチェックを行うものがあります。このチェックを行うコンピュータを、フロントエンドプロセッサといいます。

     呼び出した場所に戻る


 データ伝送とは、何をどうしているの?



群盲象を評す


 あなたは、「群盲象を評す」ということをご存知ですか?
 この言葉は、視野が狭いために対象としているものの全体像を認識できず、その一部分を全体と見誤ってしまうという意味なのです。
 言葉のいわれは、仏典の『六度集経』にあり、つぎのような内容だったと思います。
 むかし、インドの王様が盲人たちに象を認識させようと考えました。目が見えないのですから、彼らは手で象にさわり、どんなものかを知ろうとします。彼らが、ひととおり象に触れたあとで、王様は尋ねました。

 「おまえたちは、象をいったいどのようなものだと思うか」
 まず最初の盲人が答えました。彼は象の足の部分に触れたのです。
 「はい、象というものは、ちょうど太い柱のようです」
 しかし、鼻に触れた盲人は納得しかねる様子で答えました。
 「いや、柱とはちょっと違う。象は柱のようには太くなく、もっと細くて、ぐにゃぐにゃ動きホースみたいだ」

 また牙に触れた別の盲人が言いました。
 「ぐにゃぐにゃなんかしていないぞう。むしろ固くて刀のようだ」
 さらに、腹に触れた盲人は言いました。
 「いや、まったく違う。象というものは壁のようだ。広くて、がっしりしている」
 最後に、尻尾に触れた盲人が怒ったように言いました。
 「みんな! 何を言っているのだ。きみたちは筆を知っているだろう。象はまさしく筆を大きくしたようなものだ!」

 なぜ同じ対象物に対して、このような見解の相違が生じたのでしょうか。
 それは、盲人たちにとって認識しようとしている象が、かなり大きい物体であるため、全部を触れてみることができず、その一部分から全体を類推した結果、このようなことになってしまったのです。
 目が見えても、対象が大きい場合や、複雑な構造をしているときは、こういうことがありがちです。

 いよいよ、この章からデータ通信の本論に入ります。
 この章では、まずデータ伝送のあらましを知りましょう。続いてデータ伝送回線、データ伝送方式、伝送制御そして伝送品質と学習してゆきます。これらのことがらは、データ通信の大切な基礎ですから、かなり細かい内容になっています。したがって、各項目を掘り下げてゆくうちに、全体からの位置付けが分かりにくくなると思います。
 あなたも、ときどきご自分が今どこを学習しているのかを、はっきりと意識をしてください。


○データ伝送のあらまし

 相手にデータを送ることをデータ伝送(data transmission)といいます。このデータ伝送は、データ通信(data communication)と同じ意味に用いることもあります。しかし、データ通信が「コンピュータを含んだ一連のシステムによる通信」という大きな意味で用いられるのに対し、データ伝送は、単に「データの伝送原理や機能」というような基本的なことをいうのがふつうです。
 データ伝送を実現するために、送信端から受信端までの間、情報を運ぶ通路をデータ伝送回線といいます。

 アナログ伝送

 前章はじめの「電話ごっこ」を思い出して下さい。電話ごっこの糸電話は、アナログ伝送です。
 なぜならば、音声も糸の振動も、ともにアナログ信号だからです。送信機で、音声を力学的なアナログ信号に変え、受信機で再び音声に戻しています。
 すなわち、この系にはディジタルの要素が全くありません。
 実際の電話もこれと似た論理です。伝送する音声イメージのアナログ信号には、直流の電気信号が用いられます。すなわち伝送路の中は、直流電流が変化しながら電気信号として送られています。
 この電話回線をディジタルデータの伝送に利用したのがアナログ伝送でした。

 電話回線は、もともと音声帯域の伝送用に設計された回路ですから、ディジタル信号の伝送には最適とはいえません。しかし、電話のあるところなら電話回線と交換機を通じて、どこへでも伝送できるという利点があります。不特定多数の相手の中から必要に応じて、任意の相手が選べるということは、電話回線を利用した通信の大きな特徴でした。
 ここで、アナログ回線を利用してディジタル信号を、どのようにして送るか工夫が必要です。
 電話回線を利用してデータ伝送を行う場合は、送信端でデータ信号をアナログ伝送路に乗せるために、また受信端で再びデータ信号を元の形に戻すため、それぞれ変換装置が回線の途中に必要です。

 この場合、データ端末からのディジタル信号を、送信前に交流波形すなわちアナログ信号にします。これをおこなうのが変調装置です。受信側では復調装置を用い、再びもとのディジタル信号に戻します。
 送り側の情報を構成するディジタル信号、つまり0と1の変化を交流波形の、
 (1) 振 幅
 (2) 周波数
 (3) 位 相
のいずれかに対応させて表現します。
 交流波形に乗った信号は、送信端からデータ伝送回線を通って、交流波形とともに受信端まで運ばれます。
 この他振幅・周波数・位相のいくつかの組み合わせ、たとえば振幅と位相の両方を用いて変調を行う方式などもあります。

[1] 変調と復調

 アナログ伝送路を利用して、データ伝送をおこなうときに用いる一定の交流波形を搬送波(carrier:キャリア)といいます。そして、ディジタル信号を搬送波を用いアナログ信号にすることを変調(modulation)といいます。受信側で、受け取ったアナログ信号を再びディジタル信号に戻すことを復調(demodulation)といいます。
 この変調や復調を行う装置を、それぞれ変調装置、復調装置といい、さらに両方の機能をまとめてモデム(MODEM:変復調装置)といいます。

[2] 振幅変調方式

 振幅変調方式(AM:amplitude modulation)は、一定の周波数・振幅の交流波形をオンオフすることにより、ディジタル信号をアナログ信号によって搬送する方式です。入力信号が1のとき、出力信号に交流波形を残し、0のときには出力波形をカットオフすることによって得られます。
 このように、もとの搬送波と加工された出力信号との関係は単純です。振幅変調方式は、
 (1) 回路が簡単で、安価にできる
 (2) 伝送路が瞬断すると、受信信号が0になってしまう
 (3) 伝送路で発生した雑音や、レベル変動に弱い
などの特徴があります。しかし、これでは信頼性に問題があり、データ伝送には利用できません。

[3] 周波数変調方式

 周波数変調方式(FM:frequency modulation)は、交流波形の振幅を一定に保ち、高低2通りの周波数を用い、それぞれの周波数にディジタル信号を対応させます。ふつう、高いほうの周波数を0、低いほうの周波数を1と定めます。
 周波数変移変調(FSK:frequency shift keying)ともいいます。この方式の特徴は、
 (1) 雑音や、レベル変動に対しても安定性がある
 (2) 回路構成が比較的簡単である
 (3) 高速の伝送は、周波数を高くする必要がある
などです。
 電話回線の周波数特性は、人間の可聴周波数のうち、300Hzから3.4KHz程度ですから、信号の繰り返し変化が速い高速の伝送には限界があります。

[4] 位相変調方式

 位相変調方式(PM:phase modulation)は、搬送波の位相を変化させることを利用し、データを伝送します。
 すなわち、周波数が一定の交流波形を発生させておき、入力信号の変化にしたがって搬送波の位相をずらし、データの1、0を対応させて送信します。
 受信端ではこの位相のずれを検出してデータを再生します。
 ふつう4相式、8相式などが用いられます。
 1回の変調で4相式は2ビット、8相式は3ビットの信号を伝送できます。

 ディジタル伝送

 あなたは、いったいディジタル・ディジタル変換がどのような機能とお考えでしょうか? ディジタル信号を別なディジタル信号に変換するという意味は、つぎのような内容なのです。
 アナログ伝送の場合もそうですが、データ伝送をおこなう伝送路は、ふつう1回路分しかありません。
 したがって、データを構成するビットの状態を、時間をずらして直列信号に変換し伝送します。このため、ディジタル専用回線を用いたディジタル伝送も、やはり、送信側と受信側それぞれにディジタル・ディジタル変換装置が必要になるのです。
 ディジタル・ディジタル変換装置は、入力信号も出力信号もともにディジタル信号です。送信側では入力信号はビットパラレル(並列)、出力信号はビットシリアル(直列)です。

 ビットパラレルとは、一まとまりの信号(ふつう8ビット)が、並列状態で与えられることです。一方、ビットシリアルとは1ビットずつ時間をずらして、処理されることをいいます。
 受信側の変換装置は、送られてきたビットシリアル信号を再び、ビットパラレル信号に戻します。なぜ、データ信号を構成するために必要な数のパラレル回線を用いて伝送をせず、シリアル信号で伝送するのか、お分かりでしょうか?
 それは、送受信間が遠距離の場合でも、伝送回路が1回線分で足りるという経済的な理由です。したがって、ふつうディジタル伝送にも送受信端に、シリアル/パラレル変換器が必要なのです。

 ADSLやCATV、光ファイバー回線やなどを利用して実現する高速・大容量のデータを送受信することをブロードバンド(broadband)といいます。広帯域の通信網ですから、今後ますます発展をしていくでしょう。
 これに対して、従来の電話回線とアナログモデムを利用した通信をナローバンドといいます。

 通信の速度

 通信の速度は、単位時間に伝送した情報量で表わします。ふつう、
 (1) データ伝送速度
 (2) 変調速度
が用いられます。
 他に、データ通信速度などがあります。
 この場合、単位は「ビット/秒」ばかりでなく、たとえば「バイト/分」などを用い、機器の性能比較を行ったりもします。

[1] データ伝送速度

 データ伝送速度は、1秒間に伝送できるビット数がいくつあるかを示すもので、単位はビット/秒(b/s)です。
 「/」をパーと読んで「bps」と表示することもあります。
 いま、ここで通信の速度進歩を、ちょっと考えてみましょう。
 オンラインシステム初期の紙テープによる伝送速度が50ビット/秒、現在のデータ伝送がふつう8M ビット/秒ですから、ほぼ10万倍以上の進歩がここ数年にあったわけです。そして、これは日を追って、ますます大きな倍率になっていくようです。

 一方この間の変化を、たとえば交通機関の速度進歩などと比べてみますと、まさに飛躍的な発展ということが分かります。
 東京大阪間を特急つばめが約8時間で走り、今日新幹線が3時間で走っても、速度の発達はせいぜい3倍ですから、通信技術の進歩が、まさに言葉どおりの桁違いということがわかるでしょう。
 もっとも、情報の伝達速度と物体の移動の速さを比較すること自体が、ナンセンスかも知れませんが……

[2] 変調速度

 変調速度は、1秒間に何回の変調がおこなわれるかをいいます。実際には、搬送波が毎秒運ぶビット数が送受間に伝送されます。単位はボー(Baud)です。
 ボーは最初、モールス符号用の単位として使われました。通信工学の先駆者Boudotに因んで付けられた単位です。
 1回の変調に1ビットを対応させると、データ信号速度と変調速度、つまり「ビット/秒」と「ボー」は同じ値になります。


○データ伝送回線

 データ伝送回線は、送信側から受信側へ情報を届ける一連の媒体です。
 これは、必ずしも電気を通ずる物質、つまり導体で構成されているとは限りません。たとえば、マイクロ波を利用するときは空中が伝送路になります。
 光通信の場合には、電気的方法によらず光エネルギーが光ファイバケーブルの中を反射をしながら通過して行くことによります。さらに、衛星通信は中継点を、地球の外にもっていった、スケールの非常に大きいデータ伝送路といえます。

 このように、伝送路の構成物質に違いがあっても、送られる情報はビットの2元状態に、今のところ変わりありません。
 データ伝送回線は、呼び方が多くデータ通信回線、伝送回線、通信回線などといわれることもあります。
 また、回線という言葉の代わりに回路を用いてデータ伝送回路、伝送回路、通信回路あるいは単に伝送路ともいいます。
 さらに、回線や回路といわずに、網(ネットワーク:network)という場合もあります。

 あなたは、同じ物に対してなぜこのように、異なった名称が沢山あるのかと不思議に思いませんか?
 言葉を省略したり縮めたりするならともかく、ぜんぜん別の観点から名付けた場合もあります。これは、データ通信の技術が新しく、用語がまだ完全に定着して統一をされていないからです。
 このように同じ対象に、別な角度からつけた名前が多くありますが、このページでは、なるべく標準的な言葉を用います。また重要なものは、そのいくつかを並べておきます。これらの言葉も次第に統一され、標準化されていくことと思いますが……

 データ伝送回線の分類

 データ伝送回線は分類するときに、
 (1) 情報の連続・不連続特性
 (2) 情報の流れの方向
 (3) 回線網の形態
 (4) 制度上の名称
などに着目して、さまざまな区分が考えられます。

 回線交換網

 回線交換網は、回線交換をおこなうためにディジタル化された信頼性の高いデータ通信網です。
 その大きな特徴は、相手が自由に選べること、つまり通信をおこなう都度、送受信間の回線を接続することです。回線交換網のデータ伝送は、時分割処理方式でおこなわれますから、回線の使用効率が非常によく経済的です。回線交換網は、
 (1) 通信文そのものに対する制約が少ない
 (2) 伝送制御手順が自由に選べる
 (3) 多量のデータ通信に適している
など、優れた特性があります。
 通信文や伝送制御手順が、コンピュータや通信装置による制約をうけないことを、プロトコル・トランスペアレント(protocol transparent:透過性)といいます。

 パケット交換網

 パケット(packet)とは、「小包」のことです。パケット交換は、一連の送信データをパケットという小さい単位に分割し、それらを別々に伝送します。データを分解する理由は、伝送途中で蓄積交換をするためです。
 送信端末からのメッセージは、数個のパケットに分かれ、空いている経路を通り、途中でファイルに蓄積されたりしますが、最終的には受信端末の手前で再びメッセージに組み立てられ受信側に届きます。受信端末自身がパケットを組み立てる能力を、もっているものもあります。

 パケット交換網は、このパケット交換をおこなう伝送回路です。パケット交換網の特徴は、
 (1) 通信速度の異なるコンピュータ間で、データ伝送が可能
 (2) 小量のデータを、通信するのに適している
 (3) 料金は、パケット単位で定められている
などがあげられます。

 ふつう、コンピュータ間の通信はボーレートといい、それぞれの通信速度を同じにする必要があります。送り側と受け側との通信速度が合っていないと、正しいデータのやりとりができません。しかしパケット交換では、その必要がないのです。
 それでは、なぜパケット交換網では通信速度の違うコンピュータどうしで、通信が可能なのでしょうか。それは、パケット交換が伝送回線の途中に、バッファメモリをもっていて、情報を一時蓄えることができるからです。

 バッファ(buffer)とは、自動車のバンパーのような衝撃をやわらげるものをいいます。そのような意味から、バッファメモリ(buffer memory)は、伝送回路の中間にあって情報を一時蓄え、調整をするメモリをいいます。
 データが、一時バッファメモリにあるということは、しまうときと取り出すときの速さが異なってもよいことを意味します。したがって、送信側と受信側のコンピュータは、それぞれ通信速度が異なってもよいわけです。
 つぎに、なぜパケット交換が特に短いデータの伝送に適しているというのでしょうか?
 それは、通信の途中でメッセージの分解と組立があるからです。つまり、データが大きくなりますとこの分解・組立に時間がかかってしまい、効率が悪くなってしまうのです。

 伝 送 路

 この辺で、実際の伝送路を形成する物理的な媒体を見てみましょう。
 伝送路は大きく有線と無線に分けられますが、有線の代表的な伝送媒体に、ペアケーブル、同軸ケーブル、光ファイバケーブルがあります。
 しかしこれらも、今後の激しい技術革新によって、さらに大きく変化を続けてゆくことでしょう。

[1] ペアケーブル

 平衡対ケーブルともいって、2本の導線を平行にしたものです。構造上周囲から雑音を受けやすく、また、周波性特性もあまりよくありません。誘起電圧や漏話を防止するために、2本をよじることによって、特性を改善したものもあります。
 しかし、何といってもこれは値段が安いので、低速のデータ伝送を狭い範囲でおこなうときには手軽に利用できます。


ペアケーブルと同軸ケーブル


[2] 同軸ケーブル

 同軸ケーブルは中心の導体を、もう一方の導体で覆った構造をしています。このようにしますと、周波数の高域で遮蔽効果があり、漏話を防止できます。
 したがって、ペアケーブルよりも雑音の影響が少なく、広帯域の伝送が可能です。現在のところ、費用が光ファイバケーブルより安価なので、遠距離の伝送や、高速の通信に広く用いられています。

[3] 光ファイバケーブル

 光通信に用いる伝送路が光ファイバです。光ファイバは、直径が100ミクロン程度の非常に細い、きわめて透明度の高いガラス繊維です。その主原料は、地球上に無尽蔵にあるシリコン(珪素)です。
 光ファイバは、半導体レーザや発光ダイオードを利用して、電磁気的な変化から光の強弱に変換された信号を伝送します。伝送の際に、きわめて低損失で磁気の影響を受けないなど、ペアケーブルや同軸ケーブルにない大きな特徴が多くあります。


光ファイバケーブル

 伝送の原理は、光が屈折率の異なる媒体の境界面で反射することを利用しています。屈折率の大きいコアという中心部分と、屈折率の小さいクラッドというコアを覆う部分で構成され、伝送を実現します。すなわち、信号はコアとクラッドの間で反射をしながらコアの中を進みます。
 さらにクラッドの上を被覆して、数本から数十本を1まとめとしたものを、光ファイバケーブルといいます。
 従来の銅よりも優れた特徴がありますので、現在NTTでも主要幹線路を同軸ケーブルから光ファイバケーブルに置き換えています。
 また、ローカルエリアネットワークでは光ファイバによる伝送路を採用しているところが多くなりました。
 しかしまだ、光通信はコストが高く、ケーブル間の接続の方法や、伝送路の保安維持など技術的な問題も残っていることも事実です。それも、間もなく解決されることでしょう。


○データ伝送方式

 データ伝送方式は、さまざまな角度から分類できます。
 何に着目するかによって、分類の項目が違ってきますが、これは伝送方式の考え方であって、実際にはそれらを、いくつか組合せて利用します。
 このページでは学習の都合で、データ伝送方式を次のように分類して、考えてゆきます。

 並列伝送と直列伝送

 1文字を表現するのに、ふつう8ビットを用います。
 これが伝送するデータの基本単位となります。この8ビット、つまり1バイトを同時に送ることを並列伝送といい、1ビットずつ時間をずらして送るのを直列伝送といいます。

[1] 並列伝送

 並列伝送は、文字単位でデータを送りますから、直列伝送のようなバイトをビット単位に分解する手続きはいりません。そのかわり、データ伝送回線が8回路分必要となります。並列伝送方式は、送信側と受信側が近いときに用ます。コンピュータと周辺機器の接続は、通信というよりも制御ですが、並列伝送でデータの交換がなされます。
 実際には、データ信号のほかに、文字と文字の間の句切りを識別するためにストローブ信号、受信側の動作中を知らせるビジー信号などがあります。

[2] 直列伝送

 データ通信は、ふつう長距離間で行われ、直列伝送方式が用いられます。並列伝送の場合、伝送路や符号変換器などが8回路分必要ですが、直列伝送ではそれらが1回路分で足りるからです。したがって、非常に経済的です。
 直列伝送は1ビットずつ順序よくデータを送ります。そのために、送信側ではパラレル信号をシリアル信号に変換する必要があります。一方、受信側では再びシリアル信号をパラレル信号に戻します。

 単方向・半二重・全二重

 単方向・半二重・全二重は、送受信間の情報の流れに着目したデータ回線の分類です。

[1] 単方向

 単方向(simplex)通信は、通信の方向が常に一方向のものです。つまり、送信側と受信側が固定しているものをいいます。
 これは通信というよりも、むしろ指令といったほうがよいかも知れません。受信側に人間がいない自動化システムでは、このような通信でも一向に差し支えない場合があります。

[2] 半二重

 半二重(half duplex)通信は双方向通信ですが、通信時の制約があります。それは、一方から他方に通信しているときは、その通信のみが許され、逆の通信はできないということです。
 しかし、この制約も通信速度が遅いときは、あまり問題になりません。なぜ、完全な双方向通信を実現しないのかといいますと、費用の関係なのです。半二重通信は、ふつう2本の線路導体を用いる2線式伝送路で構成されます。

[3] 全二重

 全二重(full duplex)通信は一方向に通信をしているときに、その反対方向の通信も同時にできる方式です。これは、基本的には伝送回路を両方向に2回路もつ4線式伝送路が考えられます。しかし実際には、2線式伝送路を用い異なった周波数を信号に割り付けたり、時分割をしたりして実現します。なぜならば、費用の問題があるからです。
 電話回線を用い全二重通信を行う場合、伝送路は2線式伝送路ですから、送信の1、送信の0、受信の1、受信の0というように4つの異なった周波数が信号に対して用いられます。

 同期方式

 同期方式は大きく、連続同期方式と部分同期方式の2つに分類できます。

[1] 連続同期方式

 連続同期方式は、ビット単位でタイミングを合わせる方式です。すなわち、通信中のすべての時間に対して同期をとることを、連続同期方式といいます。
 ここで、伝送するビットの変化に着目しますと、1から0、または、0から1への変化の時間が、常に単位時間の整数倍になっていて、同期がとられていることが分かります。

[2] 部分同期方式

 部分同期方式は、文字(キャラクタ)単位でタイミングを合わせる方式です。文字はビットが集まったもので、1文字はふつう、8ビット(1バイト)で構成します。部分同期方式は、キャラクタやブロックなど有効な信号のある間だけ同期を保ち、信号のない時間は同期をとりません。
 一例として、調歩同期方式の場合を考えてみましょう。
 キャラクタの前後に、「これからキャラクタが始まりますよ」という意味の信号と、「キャラクタが終わりました」という信号を付加します。この信号を、スタート信号ストップ信号といいます。しかし、この2つの識別信号の分だけ伝送する内容が増加し、伝送効率は下がります。
 調歩同期方式では、信号の無い状態、すなわち無通信時は、ストップ信号の状態を連続させています。

 ベースバンド伝送方式

 帯域伝送方式が、情報を一旦別のアナログ信号に変換して伝送するのに対し、ベースバンド伝送方式は1と0で表現したデータを、それぞれに対応する直流の電気信号を用い、そのままの形で伝送します。
 ベースバンド伝送方式は、単流方式・複流方式、RZ方式、リストアードポーラ方式・バイポーラ方式などに分類されます。
 また、この他に極性の取りかたの違いや、さらにこれらを組み合わせた方式が多くあります。

[1] 単流方式・複流方式

 単流方式では、ディジタル信号の1を電流の流れる状態、0を電流のない状態に対応させます。この場合、極性は片一方しか用いません。
 複流方式はプラス電圧とマイナス電圧を用い、それぞれの信号を電流の流れの方向を変えることにより表現します。すなわち、プラス電圧を加えたときの電流の流れを1とすると、マイナス電圧を加えたときの電流の流れは0となります。

[2] RZ方式

 RZ方式は、各ビットに対して、その1ビットの符号長よりも短いパルスを出し、1ビット分の残り時間はパルスを出さないようにします。
 RZはreturn zeroの省略ですが、パルスが出された後、直ちに0ボルトの状態に戻ることを意味します。

[3] リストアードポーラ方式・バイポーラ方式

 リストアードポーラ方式は、信号の変化があるときだけパルスを出し、変化のない間はパルスを送出しない方式です。すなわち、ビットの状態が0から1、あるいは1から0となったときに信号を出します。
 1の状態が続くときや、0の状態が続く場合は信号を出しません。
 一方、バイポーラ方式は1をパルスのある状態、0をパルスのない状態と決めて、1のときだけパルスの極性を交互に変化して表現する方式です。バイポーラ(bipolar)とは、2つの極という意味です。

 多重化方式

 1つの伝送回線に、複数のデータ信号を重ね合わせ伝送することを、多重化といいます。
 多重化方式は、伝送路の効果的利用を実現するために考えられた技術です。周波数分割多重化方式と、時分割多重化方式があります。

[1] 周波数分割多重化方式

 1つの伝送路を共同利用するために、周波数分割多重化(FDM:frequency division multiplex)方式は、それぞれの回線に周波数を分割して割り当てます。
 すなわち、少しずつ周波数をずらした搬送波を用いて振幅変調をおこない、互いの信号が重ならないようにしています。

[2] 時分割多重化方式

 時分割多重化(TDM:time division multiplex)方式は、短い時間単位にそれぞれのデータ信号を分割し、数多く入れることにより多重化します。このようにして、1つの伝送路を数回線が共同利用しますから、それぞれが単独に送られる場合のデータ伝送速度よりも、合成されるデータ信号は非常に高速で伝送されることになります。
 これは、コンピュータ本体のタイムシェアリング方式と同じ考え方で、技術の進歩と同時に、この伝送量は増加してゆきます。
 時分割多重化方式は、回線のディジタル化によって今後さらに発達することでしょう。


○伝送制御と伝送品質

 センタのコンピュータとデータ端末の間で、データ通信を確実に行うために、データの受け渡しだけでなく、それに伴う取り決めや手続きが必要です。この送受信間の手続きとして、
 (1) 回線が接続されたか
 (2) 通信の相手は間違いないか
 (3) データは正しく伝送されたか
 (4) 送信は終了したか
などの確認が、一つずつ確実になされることが必要です。

 このようなデータ通信に関する制御や手続きを伝送制御といいます。そして、この伝送制御を実際に行うための一連の手続きを、伝送制御手順といいます。伝送制御は、
 (1) 回線制御
 (2) 同期制御
 (3) 誤り制御
から構成されます。

 回線制御は、データ伝送回線の接続や切断を確実におこない、モデムなどの回線終端装置をコントロールします。
 同期制御は、送受信間であらかじめ決めた方式の同期をとることをいいます。
 誤り制御は、通信の途中で発生するかもしれない誤り(エラー)をチェックして、もしもエラーが発生した場合、訂正をする機能です。

 伝送制御手順は、JISによって定められていますが、
 (1) ベーシック制御手順
 (2) ハイレベル・データリンク制御手順
などがあります。
 データ通信で、送られるメッセージデータは、ふつう英字・数字・記号などの組み合わせで表現されます。たとえば、「HELLO!」というメッセージを送ることを考えてみましょう。

 この場合、メッセージは英字5文字と特殊記号1文字、計6文字で構成されています。そして、各文字はそれぞれ1バイト、すなわち8ビットです。各ビットの状態を見ますと、最初の文字「H」はアスキーコードの72、つぎの「A」はアスキーコード65という具合です。そして、最後の「!」はアスキーコード33となります。
 しかし、これらはメッセージの本文であって、実際に送受信間に伝送される情報は、これだけではありません。テキストの始めや終わりを示す文字、その他の制御用文字が入ります。
 1バイトで構成するコードが、文字でなく機能を表す一群があります。それは、アスキーコード0から31までのキャラクタで、メッセージのコントロールなどに用いられる制御用の文字です。このうち通信に必要な10個をとくに伝送制御キャラクタ(伝送制御文字)といいます。

 伝送制御のフェーズ

 伝送制御には、5つのフェーズがあります。フェーズ(phase)とは相という意味ですが、ここでは単にステップ(段階)と思ってください。交換回線網を用いて通信をする場合のフェーズは、
   フェーズ1  回線接続
   フェーズ2  データリンク確立
   フェーズ3  データ転送
   フェーズ4  終 結
   フェーズ5  回線切断
です。

 電話網、回線交換網、パケット交換網などの交換回線網を用いないで、専用回線を利用する場合には、フェーズ1の回線接続と、フェーズ5の回線切断は不要となります。つまり、専用回線の場合はフェーズ2からフェーズ4までです。
 フェーズ1の回線接続は、相手をダイアルしモデムなどの装置を通信できる状態にセットすることです。
 フェーズ2のデータリンク確立は、通信の相手を確認することです。データリンク(data link)とは、通信回線を意味します。このフェーズで、回線や端末装置がセットされたかどうかチェックします。
 フェーズ3のデータ転送は、実際のメッセージの伝送です。
 フェーズ4は終結ですが、データリンクを解放して通信前の状態に戻します。
 そして、フェーズ5で回線を切断します。切断はふつう自動的に行いますが、受話器を戻して行うときもあります。

 ベーシック制御手順

 ベーシック制御手順は、半二重通信や単方向通信にも利用でき、通信速度の規定も別段ありません。基本モードと拡張モードがありますが、会話型の制御を基本とした通信方式です。
 ベーシック制御手順では、伝送するデータをメッセージといいます。メッセージの形式は、ヘディングとテキストから構成されます。テキストは、いわゆる本文にあたります。
 ヘディングには、伝送経路やナンバーなどの情報が書かれ整理に用いますが、ヘディングのないメッセージもあります。このヘディングやテキストを識別するのに、伝送制御キャラクタを用います。

 ヘディングのはじめには「SOH」を付けます。テキストには、はじめに「STX」、おわりに「ETX」を付けます。
 メッセージは、いくつかのブロックに分解されます。実際の伝送は、このブロック単位で送られ、チェックビットを調べて正しく受信できたときは「ACK」、正しい受信ができなかったと考えられるときは「NAK」を、送信側に送り返します。
 このようなことを、繰り返して通信を行います。

 ハイレベル・データリンク制御手順

 ベーシック制御手順はデータがコードに依存し、信頼性などにも問題があります。そこで、コンピュータ間の専用通信手順として、ハイレベル・データリンク制御手順が考えられました。この手順は、
 (1) 伝送効率がよい
 (2) 信頼性が高い
 (3) コードに依存しない
などの特徴があります。

 ハイレベル・データリンク制御手順は、情報のはじめとおわりに特定の文字を用います。このコードは、フラグシーケンスといい16進表示の「7E」です。実際のビットのかたちは、2進表示で「01111110」となります。
 このフラグシーケンスで囲まれた、ひとまとまりの情報を、フレームといいます。ちょうど、ハンバーガのお肉の部分がフレームで、両側のパンがフラグシーケンスにあたると思ってください。

 コードに依存しないということは、任意のビットパターンが伝送できることです。ベーシック制御手順は伝送の単位が文字ですから、伝送制御キャラクタと同じ形の2進数データやビット状態は、そのままの形では具合が悪く、なんらかの方法で変換して伝送しなければなりませんでした。
 たとえば、マシンコードの伝送などがそうです。
 ハイレベル・データリンク制御手順は伝送の単位がビットです。したがって、データは文字コードと関係なく送れます。

 この辺で、あなたが「まてよ」といいそうな気がします。そうです。この理屈でも、フラグシーケンス「01111110」と同じコードが、送れないとお考えですね。しかし、大丈夫なのです。
 なぜならば、送信側ではテキストの中で1が5ビット連続したら、0を1個挿入し、受信側では1が5ビット連続した後の0を、取り除くように約束をしてあるからなのです。
 任意のビットパターンが送られることを、情報の透過性(transparency)があるといいます。
 ハイレベル・データリンク制御手順では、コマンド(command:指令)を送る側を1次局、レスポンス(response:応答)を返す方を2次局といいます。

 誤り制御

 データ通信を行っているときに、送信側の情報が受信側に正しく伝わらないことがあります。もしも通信に誤りがあった場合は、誤った情報を正しく直さなければなりません。
 誤り制御の方式には、パリティチェック方式、サイクリックチェック方式、ハミング符号方式などさまざまな種類があります。

[1] パリティチェック方式

 パリティ(parity)とは同等という意味です。パリティチェックは、通信文が送信側から受信側に正しく伝わったかどうかを調べることをいいます。そのチェック方法は、データに含まれるビットの1の数をあらかじめ奇数か偶数かに決めておいて、書き込みのときにこの約束に基づきビット数を調整します。
 その後、データの出し入れの都度、これを検査する方法です。この方式は、情報ビットの中に、検査のためのビットが付加されますので、伝送効率はその分だけ下がります。
 パリティチェック方式の致命的な欠点は、2ビット分の出入りについては、誤りを検出できないということです。
 各文字ごとに検査する方式を、垂直パリティチェックといいます。いっぽう一連の通信文に対して、各文字間の対応するビットをまとめて検査する方式を、水平パリティチェックといいます。

[2] サイクリックチェック方式

 サイクリックチェック(CRC:circular redundancy check)は、群計数チェックから発展した精度の高いチェック方式です。まとまったブロックに対しても有効ですし、データの抜けも厳密にチェックできます。したがって、通信データの他にも、コンピュータと補助記憶装置間のデータ転送などの誤り検出に利用されます。
 送信側では、かなり大きなブロックに対し、一定の手順による式の割り算をおこない、その余りに基づくチェックビットをメッセージに付加します。受信側では、やはり同じ計算をおこない付加されたチェックビットを検査します。そして、もしも判定結果が同一でないときは、エラーがあったものとします。
 サイクリックチェック方式は、ある程度の自己訂正を受信側で、単独に行うことが可能です。

 伝送品質

 ふつう、送信側から送られた情報は、そのまま正しく受信側に到着します。
 しかし、データ伝送装置や途中の伝送路の影響で、送信側が送った情報と、受信側で受け取った情報が異なる場合があります。この場合、その通信に誤りがあったことになります。この誤りの発生程度で、伝送品質が評価できます。
 アナログ伝送の場合は、交換機の雑音や変復調装置の特性、伝送路におけるひずみなどが、大きく影響して誤りを発生させます。しかし、回線交換網やパケット交換網などのディジタル伝送は、アナログ伝送にあるような欠点は少なく、したがって伝送品質の低下は、あまり見られず伝送品質は非常に優れています。

 伝送品質低下の原因

 伝送品質を低下させる原因として、
 (1) 減衰ひずみと位相ひずみ
 (2) 雑音と瞬断
 (3) 周波数変動
などが考えられます。


伝送品質の低下


[1] 減衰ひずみと位相ひずみ

 一般にアナログ回線を利用した通信では、送信側のディジタル信号は変調されて交流波形になり、伝送路を通って受信側に進みます。この際、減衰ひずみは伝送路内の交流波形の減衰が、周波数によって異なることに起因します。ある特定な信号に対応する波形のみが正しく伝送されず、誤りとなる場合です。
 一方、位相ひずみは信号を構成する周波数成分の位相が、それぞれ異なった場合におこります。送信側と受信側とで、振幅比が同じであっても位相がずれると、互いの波形が異なってしまい情報が正しく伝わらないことがあります。

[2] 雑音と瞬断

 雑音は、通信装置や伝送回路自体が原因の場合と、それらの電源からくるものがあります。さらに、誘導や漏話(cross talk)などのように、近くを通っている他の伝送路からの雑音もあります。誘導や漏話は、伝送路のケーブル区間で発生し、いずれもデータ伝送を妨害します。
 一方、瞬断は信号がある瞬間途絶えたり、レベル低下をする現象です。当然、そのときのデータは失われ、誤りを生じます。雑音・瞬断いずれの場合も通信が中断し、伝送品質は低下します。

[3] 周波数変動

 送信端で発生した交流波形の周波数が、受信端において受信すると大きくなったり小さくなったりしていることがあります。しかし実際には、データ信号速度が速い回線では、多少の変動は影響しないようです。

 品質の評価

 伝送品質の評価は、符号ひずみや誤り率などによって行われます。


伝送品質の評価


[1] 符号ひずみ

 送信端で変調された波形と、受信端の復調後波形を比較して、どれくらいひずんでいるかをパーセントで表します。符号ひずみには、等時性ひずみ度と総調歩ひずみ度があります。

[2] 誤り率

 誤り率は、送信したデータと受信したデータの、それぞれの対応するビットや文字の異同を検査して求めることができます。誤り率には、ビット誤り率と誤字率があります。

     呼び出した場所に戻る


 コンピュータから身近なパソコンへ!



近い将来の社長室


 あなたは、近い将来コンピュータ自身が人間に対して命令を出すようになると思いますか?
 つぎのようなことを、いったいどうお考えでしょう。
 SF(scientific fiction:空想科学小説)などに登場する未来のオフィスを、まず想像してください。
 ある日、あなたに社長から出頭命令が届きます。あなたは、直ちに社長室に行きます。しかし、そこには誰もおらず、ただ大きなデスクの上に、なにやらごたごたとインテリジェント端末のようなものが置いてあるだけです。
 その端末がしばらくの間、何となくあなたの様子を窺うような感じで、動作をしています。

 あなたは黙って待ちます。その間、あなたはこころの中で「ばかばかしい、機械に何ができるか」と、ぼんやり考えています。
 やがて、たどたどしい音声で、しかも重々しくメッセージが発せられます。
 「機械を、馬鹿にしては、いけない! あなたの最近の仕事の成果の統計の結果は、良くない。改善の傾向も、みられない。あなたはくびだ!」
 いったい、こんなことが近い将来に、しかも現実にあるのでしょうか? また、あってよいのでしょうか?

 この章では、コンピュータについて学習します。むろん、大型コンピュータからパソコンについてまでの内容です。そして最初に、コンピュータの機能と構成を理解します。そして、ハードウェアの中心である中央処理装置について知ります。すなわち制御装置、演算装置、主記憶装置についてです。
 なお、周辺・端末装置やセンタ内でコンピュータ本体に接続している入出力制御装置と通信制御装置、さらに実際のコンピュータの動作を決めているソフトウェアに関しては、それぞれ別な章で学びましょう。


○コンピュータの機能と構成

 ふつうコンピュータは、ハードウェアとソフトウェアがよくバランスして、効果的な運転ができるように設計されます。このために、コンピュータシステム全体について概念上の構成や、機能上の動作を最初に規定します。その後、はじめて各装置に対する物理的実現方法、つまりハードウェア仕様が決められます。
 この技術を、コンピュータ・アーキテクチュア(computer architecture)といいます。
 ここでは、データ通信システムの中枢を占める大型コンピュータについて、基本的な機能や構成を見てみましょう。

 集中型のデータ通信システムは、中央に大型コンピュータがあります。そして、コンピュータ本体のまわりに、チャネル装置を経由して通信制御装置、入出力制御装置が置かれます。入出力制御装置は、ふつう機器ごとに用意され、入出力機器が接続します。通信制御装置は、センタから離れた場所にあるデータ端末装置と、通信回線を通して結ばれています。
 これらの装置が機能的に配置され、センタを構成します。

 しかし、ローカルエリアネットワーク(LAN)の場合は、様子が少々違います。
 ローカルエリアネットワークは、ふつうループ型回路を構成し、それぞれの装置が分散してこの回路に接続されます。したがって特定の場所に、まとめてセンタを設置しなくてもかまいません。また、全体の機能を数台の小型コンピュータやパソコンに分散してもよいでしょう。
 センタ方式でも、ローカルエリアネットワーク方式でも通信全体の制御は、いずれかのコンピュータがおこないます。そして、そのコンピュータは、あらかじめメモリ内部に格納されたプログラムの手順により、通信を実現しているのです。

 コンピュータの機能

 コンピュータの機能は、大きく分けて5つあります。それは、
 (1) 制  御
 (2) 演  算
 (3) 記  憶
 (4) 入  力
 (5) 出  力
です。
 これらの機能は、それぞれ専用の装置が分担しますが、有機的にまとまって全体のはたらきを行います。
 その様子は、人間の行動と非常に似ています。


     計算をする


 コンピュータのはたらきを人間の身体に、たとえてみましょう。
 あなたが、提出された問題を計算するときのことを考えてください。まず、その問題を目でよく見て認識します。意味が分からないときは相手に尋ね、耳で聞き内容の補足をします。これが入力です。つぎに計算、すなわち演算をおこないます。このときは、むろん頭脳がはたらきます。頭脳は演算もしますが、計算の手法もあらかじめ記憶しています。
 計算途中に、もしも頭では覚えきれないような中間結果があれば、メモ用紙などの補助記憶を利用し、そこに一旦書き記します。最終的な演算結果は、手で紙に書いたり、口で答えたりして出力します。ここで見逃してはいけないことは、これら一連の動作全部が、やはり頭脳によって制御されているということです。

人間の体とコンピュータ


 人間の作ったものは人間に似るといいますが、コンピュータと人間が非常によく似た、はたらきをしていることがお分かりになるでしょう。また、人間の頭脳が制御と演算と記憶の3つの機能を、同時に果たしていることにも驚きます。しかし、コンピュータの場合は、制御・演算・記憶の3機能を、それぞれ別な装置によって実現しているのです。
 コンピュータのことを「電脳」という国がありますが、まったくそのとおりだとも思います。
 それでも全体的に考えると、コンピュータよりも人間の頭脳のほうが、いかに優れているかがよく分かります。
 あなたは、そのように思いませんか?

 センタにあるコンピュータ本体の機能を、もう少し、まとめてみましょう。
 コンピュータの役割は、
 (1) データ通信システム全体の制御
 (2) 業務データの演算や、記憶など一連の処理
 (3) センタ内の装置や、センタ外の装置に対する入出力
に大きく分けられます。

 それでは、具体的にデータ通信システム全体の制御とは、いったいどういうことなのでしょうか? それは、コンピュータ内のプログラムが、常にシステム全体の動きを管理しているということです。この管理プログラムをオペレーティング・システム(OS)といいます。
 オペレーティング・システムは、通信制御装置の制御や、周辺装置の入出力制御を行います。また、業務プログラムやサービスプログラムの実行を計画的に、順序だてたスケジュールにもとづき連続処理をします。
 オペレーティング・システムの詳細については、後の章で学びます。

 コンピュータの構成

 コンピュータは、それぞれの機能を分担する装置で構成されます。それは、やはり5つあり、
 (1) 制御装置
 (2) 演算装置
 (3) 主記憶装置と補助記憶装置
 (4) 入力装置(入力機器)
 (5) 出力装置(出力機器)
です。これらの装置が組み合わさって、コンピュータ全体として複雑なはたらきを実現します。

 ここで、まったく関係のないお話しを2つ。
 インドの山奥に、とても大きな年老いた賢い1匹の蛇が住んでいました。ある日、思案していた尾が、静かに頭に言いました。
 「今日まで後ろだったが、これからは自分が前だ!」
 頭は、びっくりして言いました。
 「急に、いったいなぜだ! 今までどおりで、いいじゃないか?」
 そして、尾は後ろ向きに進もうとします。しかし、頭の行こうとする方向と逆なので動きません。互いに譲らなかったので、動けずにとうとう飢え死んでしまいました。

 南洋のジャングルに、獰猛で狡猾な仲の悪い2匹の蛇がいました。
 互いに相手を飲み込もうと、隙を窺っていました。そんなある日、ばったり出会いましたので、一期到来とばかり、どちらの蛇も相手の尻尾に食いつきました。そして、互いにぐいぐいと相手を飲んでゆきます。
 最後は、いったいどうなるのでしょうか?
 こんなことを書いても、説明の蛇足にもなりませんから、本文にリターンをしましょう。

 制御装置は、主記憶装置からプログラムのマシンコード(機械命令)を1つずつ取り出し、解読して実際にその動作を行います。この動作のことを、実行(execution)といいます。実行は、他の4つの装置のいずれかに制御信号を与えることです。
 このように、コンピュータはあらかじめ作って記憶したプログラムのとおり動作が進行してゆくのです。ここで、当然のことですが、もしもプログラムが間違っていたら、実行結果もおかしくなります。

 演算装置は、その名のとおり、四則演算や論理演算を行います。また、数の大小比較や、符号の正負判定も演算装置でおこなわれます。
 主記憶装置(メモリ)はプログラムやデータを記憶します。そして、要求に応じ記憶内容を制御装置、演算装置あるいは出力装置に送ります。記憶内容は常駐部分を残して、コンピュータの動作中に入れ換えられます。主記憶装置の容量不足を補ったり、主記憶装置内の状態を保存するために、補助記憶装置が用いられます。
 補助記憶装置は、ふつうプログラムやデータを格納するファイルとして使用されます。


補助記憶装置


 入力装置は、外部からデータを主記憶装置に読み込むためのものです。いろいろな種類がありますが、いずれも人間・コンピュータ間の情報交換をしている場所といえるでしょう。
 出力装置は、主記憶装置からデータを取り出す装置です。コンピュータで行なわれた処理結果は、そのままの形では、わたくしたちに分かりません。そこで、文字や図形にして出力する装置が必要なのです。
 しかし、言語処理などの結果を補助記憶装置に出力する場合は、2進数形式で分かりにくい形をしています。この場合、わたくしたちがその形式を直接に使用するわけではありませんから、あまり不都合は生じません。

 ここで、もう少し大きな単位でまとめ、コンピュータについて、さらに観察を続けてみましょう。
 そうすると、今度は3つの機能要素になります。それは、
 (1) 中央処理装置
 (2) 入出力装置
 (3) 通信制御装置
です。


3つの機能要素


 むろんこれも、機能をある程度まとまった単位として見た場合で、各装置が有機的に関連して、コンピュータとしての1つの動作を行うことは、ご承知のとおりです。
 中央処理装置(CPU:central processing unit)は制御装置、演算装置および主記憶装置の3つをまとめた名称です。ちょうど、人間の頭脳のはたらきが、これらの3つの役目に相当していましたね。中央処理装置は主記憶装置から命令を取り出し、解読・実行します。
 ここで、主記憶装置を中央処理装置の中に含めずに、別に独立させて考えることもあります。

 入出力装置(I/O:input/output unit)は入出力機器ともいい、入力装置と出力装置をまとめていいます。また補助記憶装置も、データを入出力するということに着目し、入出力装置と同じレベルで考えることもあります。
 通信制御装置(CCU:communication control unit)は、センタから離れた場所にあるデータ端末装置と通信するための装置です。


機能の集約と分化


 ここで、コンピュータの構成について、もう一度考えてみましょう。何回もくどくどと考えるのは、非常に大切なことだからです。
 主記憶装置と補助記憶装置をまとめ、単に記憶装置ということがあります。
 入力装置と出力装置をまとめ入出力装置といいましたが、さらに入出力装置と補助記憶装置を一緒にして周辺装置という場合もあります。通信制御装置から、センタ外へ出てデータ通信回線を経由し、遠方にデータ端末装置があります。
 この端末装置と周辺装置を一括して周辺・端末装置といいます。

 何だか、ややこしくて分かりにくいですね。
 これは、ちょうど人間の身体を考えるときに、全体として大きくとらえるか、専門的に小さく見るかの違いに似ています。あなたが、気分が悪く病院へ行ったときのことを思い出してください。
 ただ、ちょっと頭痛がするだけでも、その原因によって行くところが、ずいぶん違うでしょう。
 ふつうは内科でよいのですが、目の疲労からきた頭痛は眼科、虫歯が原因で頭が痛い場合は歯科になります。原因によって、あるいは耳鼻咽喉科だったり、もしもあなたが女性のときは産婦人科かもしれません。

 大きな病院でしたら耳鼻咽喉科が、さらに耳鼻科と咽喉科に分かれていたり、産婦人科に産科と婦人科があったりします。
 このような区分は、目的を果たすための便宜にすぎないのです。
 だって、あなたの身体は、元来1つなのですから……
 つぎに、コンピュータの中の、情報の流れと制御の流れを、中央処理装置を中心に考えてみましょう。



情報の流れと制御の流れ


 まず分かることは、制御装置と演算装置が主記憶装置の利用を通じて、互いに情報を転送していることです。さらに、別の情報に着目しますと、入力装置から主記憶装置へ、そして主記憶装置から出力装置への流れがあります。
 補助記憶装置と通信制御装置は、主記憶装置との間で、両方向に情報が流れています。
 一方、制御信号の流れは簡単です。その名のとおり制御装置から他の装置全部に行きわたっているからです。


○中央処理装置

 中央処理装置を構成する制御装置、演算装置および主記憶装置のはたらきをさらに細かく見てみましょう。

 制御装置

[1] マシンサイクル

 コンピュータに仕事をさせる場合、あらかじめ作成したプログラムを主記憶装置(メモリ)に格納しておく必要があります。
 制御装置は、メモリにあるこの一連のプログラムにもとづいて、他の装置をすべて制御します。すなわち、マシンサイクル(machine cycle)にしたがって、メモリ内のマシンコード(機械命令)を実行してゆきます。
 コンピュータが人工頭脳といわれるのは、この辺のしくみと記憶装置の存在によるためです。

 マシンサイクルは、
 (1) アドレッシング
 (2) フェッチ
 (3) デコード
 (4) 実  行
の4つの行程(ステップ)で一回りします。コンピュータは、この4つのステップを繰り返し、複雑な処理を高速に進めてゆくのです。

 それはちょうど、自動車のエンジンが吸入、圧縮、爆発、排気の4つのサイクルで回転するのと似ています。
 アドレッシング(addressing)は、取り込むマシンコードの番地指定です。すなわち、主記憶装置(メモリ)の何番地から、マシンコードを取り出せばよいかを指示することです。
 取り出す番地の値は、命令アドレスレジスタに入っていて、1つを取り出すごとに、その値も1増えます。ただし、プログラムが単純につぎの命令に進まないジャンプ命令などがあった場合は、そのジャンプ先の番地が、新たにアドレスレジスタにセットされます。このサイクルのとき、アドレスレジスタの値がアドレスバスに移り、取り出すメモリの番地(アドレス)がセットされます。

 フェッチ(fetch)は、取って来るという意味があり、命令の読み出しのことです。アドレスバスで指定された番地のメモリ内容を、データバスを経由して制御装置に取り込みます。
 デコード(decode)は、取り込まれた命令の解読です。その命令が、どのような機能を行えばよいかを決定します。
 実行(execute)は、解読したマシンコードを実際に行うことです。

 これでマシンサイクルは一巡しましたので、再びアドレッシングに戻りこの動作を繰り返します。このように、メモリに記憶されているプログラムから命令を取り出し、一つずつ実行してゆく方法を遂次制御といいます。
 遂次制御を4つのマシンサイクルに分けずに、命令取り出しと命令実行の2サイクルに分けて考えることもあります。

[2] マシンコードの形式

 コンピュータの動作を決める基本的な命令を、マシンコード(machine code:機械語)といいます。1つの命令は、どのような操作をメモリの何番地に対しておこなうかを規定します。したがって、ふつう1つの命令語の中に2つの情報が含まれます。そして、命令の操作を指定する部分を操作部といい、操作対象の番地を表示する部分を番地部といいます。
 しかし、1つの命令の中に番地部が複数個あるものもあります。それぞれ、1アドレス命令、2アドレス命令、3アドレス命令などといいます。
 また、操作部と番地部をメモリの中の続いた番地に、分割をして入れるものもあります。この場合、操作部がマシンコードになり、その種別によって、続く番地部の大きさが異なってきます。

[3] アドレス方式

 アドレス(address)とは番地のことです。アドレスブック(住所録)のアドレスですが、主記憶装置にも、0番地から始まりメモリの上限まで、物理的に番地が付けられています。
 命令の番地部は、その命令の操作対象となるメモリの位置を決定します。この指示方法を、アドレス方式といい、
 (1) 直接アドレス方式
 (2) 間接アドレス方式
 (3) インデックスアドレス方式
などがあります。

 直接アドレス方式(direct addressing)は、番地部に書かれた番地が、そのまま実際の番地を指定し作用するものをいいます。この方式は、プログラムを置くメモリ上の位置が常に固定しています。
 間接アドレス方式(indirect adressing)は、番地部で指定した番地のメモリの内容が、実際に操作する番地となるものをいいます。メモリに作られた値が操作対象を決めますので、細かい動きのプログラムが可能になります。
 インデックスアドレス方式(index adressing)は、番地部で指定した値とインデックスレジスタの中身を足した値で、実際の操作する番地を決めるものをいいます。インデックスレジスタの値は、その命令をおこなう前に、あらかじめセットしておかなければなりません。この値はプログラムによって変えることができますので、繰り返し命令に用いるときなど非常に有効です。
 他に相対アドレス方式、レジスタアドレス方式など、さまざまなアドレス方式があります。

[4] 割込み

  割込み(interrupt)とは、コンピュータの動作中に緊急度の高い特別な事象が発生したとき、進行中のプログラムを一旦中断して、その事象の処理をするプログラムに切り替えることです。そして、その緊急度の高い事象のプログラムが終了すると、再びもとのプログラムに戻ります。
 このような機能は、オペレーティング・システム中の割込み監視ルーチンがおこないます。

 演算装置

 フェッチされデコードされたマシンコードが、算術演算や論理演算に該当する場合、制御装置は演算装置に処理をゆだねます。演算装置で処理される命令には、算術演算や論理演算の他に、演算結果のプラス・マイナスの判定やオーバフロー(桁あふれ)の調査などがあります。
 実際に演算を行うのは、アキュムレータ(累算器)やアダー(加算器)などの論理回路です。これらはすべて、論理積・論理和・否定などを基本とした、2進論理回路で構成されています。
 演算装置などというと、大きな装置を考えます。実際に初期のコンピュータでは、かなり大がかりなものでした。しかし、今日の小型コンピュータは制御装置と演算装置を一体にしてしまい、わずか数ミリ四方の1チップの中に納めています。

 主記憶装置

 主記憶装置(メインメモリ、または単にメモリ)は、制御装置や演算装置がおこなう処理に必要な情報を記憶します。すなわち主記憶装置は、
 (1) プログラム
 (2) データ
 (3) 演算の中間結果や最終結果
を一時的に蓄える場所です。
 主記憶装置内にあるプログラムやデータは、入力装置や補助記憶装置から、受け取ったものです。また、演算の中間結果や最終結果などは、プログラムの実行時に作られたものです。

 記憶素子としては現在、半導体記憶素子(ICメモリ)が用いられます。
 半導体記憶素子は、ふつう電源を切ると記憶内容が失われます。したがって、メモリ内の記憶で保存する必要のあるものは、コンピュータの電源を切る前に、あらかじめ補助記憶装置にセーブ(save:保存、複写)しておきます。
 半導体記憶素子で電源断の状態になっても、あらかじめ別行程で書いた記憶内容が、常に残るタイプのものを、不揮発性半導体メモリといいます。この代表的なものが、読出し専用メモリ(ROM:read only memory)で、プログラム中では書き込みができません。したがって、読出し専用メモリは固定的なプログラムや、変化しないデータの保存に最適です。
 たとえば、漢字のフォント(font:文字のパターン)などに利用されます。
 読出し専用メモリを用いる場合、変数エリアなど書込みが必要なところは、その対応番地をランダムアクセスメモリ(RAM:random access memory)にしておきます。

 それでは、記憶はいったい、どのようにして行われるのでしょうか。
 記憶の種類といっても、基本的には2元状態ですから簡単です。ICメモリ内の1ビットを表現する回路のコンデンサに、高い電圧がある状態を1、低い電圧がある状態を0と決めます。そして、メモリに書き込むときは、書込みデータ線を用いビットに対応する電圧をセットします。逆にメモリから読み出すときは、読出しデータ線に電流を流し、電圧の高低によって、そのビットが1か0を感知します。

  時実利彦氏の書かれた本だったように記憶していますが(おぼろげな記憶で、間違っていたらごめんなさい)以前、記憶について読んだことがあります。
 それは、人間の記憶が脳細胞の微細な血管を充血させ状態を保持するということです。また、神経ネットワーク(神経細胞連鎖)のシナプスの抵抗を減少して記憶するともいわれています。このようなことを考えると記録の方法も、コンピュータのメモリと人間の脳が、何となく似ているようですね。
 しかし、人間の脳は中枢神経系の主要部をなし、大脳、間脳、小脳、延髄によって構成され、コンピュータのメモリより数段と高等なものです。

 脳の色は赤いというよりか、むしろ灰白色をしているそうです。自分で、もっていても実は、まだ実物も見たことないんですが、豚の脳でもよろしければ見たことがあります。それは、かつて渋谷からNHKへ行く途中にある、或る焼鳥屋さんでした。
 そのとき、なるほどエルキュール・ポアロ(アガサ・クリスティの小説に登場する探偵)がいったことが本当だと、つくづく思ったことを今でも記憶しています。大脳は人間の意識活動の中心で、ふつう単に脳といえば大脳を指します。人間の脳の重量は約1300グラムあり、そこには140億の脳細胞があるそうです。
 あなたは、これを集積回路よりも、はるかに緻密だと思いませんか?


○その他の装置

 センタ内で、コンピュータを構成している他の装置として、チャネル装置、入出力制御装置と入出力装置、補助記憶装置および通信制御装置などがあります。
 チャネル装置は、主記憶装置からのデータ信号を入出力制御装置と通信制御装置に振り分けます。
 入出力制御装置は入力装置・出力装置・補助記憶装置を制御します。
 通信制御装置は、通信回線を経由してセンタ外のデータ端末装置とデータを授受するために、必要な制御をします。
 チャネル装置、入出力制御装置および通信制御装置、入力装置、出力装置、補助記憶装置およびデータ端末装置については、別の章で学びましょう。

     呼び出した場所に戻る


 周辺・端末装置も実にたくさんあるよ!



ピストル犯人の言い分


 あなたは、つぎの事実をどうお考えでしょうか?
 彼は優秀な成績で名門校を卒業し、超一流企業にエンジニアとして就職しました。あっという間に20年が過ぎ、彼はその企業の中堅社員だったのです。彼のグループは、常に他社に先がけ次々と新製品を開発・発表しました。それによって、会社は莫大の利益をあげていたのです。
 そんなある日、彼はつくづくと考えました。「毎日あくせくと働いている。しかし、私は一介のサラリーマンに過ぎない。企業という組織の、単なる一枚の歯車でしかない。そうだ、自分で事業を初めてみよう!」

 そこで彼は、長い間勤めた会社をあっさりと退職し、小さいながらも自分の会社を創立しました。
 はじめの3年間は、苦しいなりに無我夢中で過ぎ去りました。4年目からは軌道にのって事業は大きく発展し、相当な利益が生じて彼の生活も豊かになりました。
 しかし、順風満帆ばかりが人生ではなかったようです。ちょうど設立10年目を迎えた年に、輸出の失敗から大欠損を生じ、資金繰りに行き詰まりました。数回の不渡手形を出した後に、会社はあっけなく倒産してしまったのです。毎日、債権者からきびしく返済を迫られ、彼は執拗に追いかけ回されました。

 幼いときから聡明だった彼の頭脳が、次第におかしくなっていったのはそのころです。苦悩の日々が続いて何のはずみか、こともあろうに銀行強盗をはたらき、ピストルで人を殺したのです。完全犯罪を計画したものの、あっけなく捕らえられ、やがて調書をとられます。彼の論述です。
 「私はそんなに悪いことをしたとは思わない。一つ一つのことがらが連続して、私をそこへ追い込んだのだ!」
 「私こそ被害者で、そうさせた周囲の環境が悪いのだ」
 「世界の景気変動や、国の経済政策が悪い」

 さらに、彼の言い分は続きます。
 「今回のことについていえば私全体が悪いのではなく、あのときピストルを持っていた右手が悪いのだ」
 「いや、ピストルの引金を引いたのは人差指だ。指が過ちを犯したのだから指だけを処分して欲しい」
 このような支離滅裂な論理を、精力的に展開したのです。結局、彼は過度の被害妄想と、精神に異常があったということで不起訴となり、精神病院に入れられたのです。

 ここでは、周辺・端末装置を学習します。
 周辺・端末装置は入出力機器、補助記憶装置に分けられます。しかし、これらを駆動する入出力制御装置と通信制御装置は、別の章で学びます。


○周辺・端末装置

 周辺・端末装置は、コンピュータの周辺に設置されていたり、あるいは通信回線を経由して遠距離に置かれたりします。何れの場合も、データの入出力や交換・蓄積などを行います。

 周辺・端末装置の役割

 周辺・端末装置の役割を理解するために、はじめに言葉の意味を考えてみましょう。
 「周辺」は回りという意味です。それは、むろんコンピュータの回りということです。周辺装置はペリフェラル(peripheral unit)ともいい、入力機器、出力機器、入出力両用機器そして補助記憶装置をいいます。
 一方、「端末」という言葉は辞書にないようですが、末端、はずれ、などと同じと考えてよいでしょう。何の末端かというと、当然のことながら、これもコンピュータのはずれ、すなわち遠隔地にあるという意味です。
 端末装置には、いろいろな呼び方がありデータ端末装置、データ通信端末、データ端末、通信端末装置、通信端末あるいは単に端末などともいいます。端末(ターミナル:terminal)とは、通信システムにデータを入出力するセンタ外の場所をいいます。当然、その場所には入出力機器があり、その装置がデータ端末装置(data communication terminal)です。

 周辺装置と端末装置は、いずれもコンピュータに接続され、データを入出力します。単純に考えますと、置かれている場所がコンピュータから近いか遠いかということです。距離の遠い場合は、情報を正しく伝えるために、通信システムを構成する必要が生じます。
 ここで、コンピュータから遠方にある周辺装置が、データ端末装置と考えれば分かりやすいと思います。また、逆にデータ端末装置は、データ通信回線・通信制御装置、チャネル装置などを経由して、コンピュータに接続している入出力装置と考えてもよいでしょう。

 しかし、通信の速度が高速になりローカルエリアネットワークのようなシステムが、より高域に発達しますと距離的にコンピュータに近いものを周辺装置、遠いものを端末装置という区別は、次第にあいまいになってゆくでしょう。
 たとえば、磁気ディスク装置はセンタ内で周辺装置として補助記憶用に用いても、ローカルエリアネットワークのデータベース用ファイルとしても、どちらも構造的にはまったく同じものです。この場合、磁気ディスク内のファイルをプログラムで利用する方式が異なっているだけです。

 同じものでも、目的や都合によって違った機能をもつことがあります。
 あなたは、「鳥獣合戦」をご存じですか?
 昔、鳥たちと獣たちが戦いをしました。はじめ、獣たちが優勢でしたので、蝙蝠(こうもり)は獣たちのところへ行き、自分は仲間だと言いました。しばらくして鳥たちが優勢になると、今度はのこのこと鳥たちのところへ行って、自分は鳥の一族だと言いました。
 やがて、鳥と獣が仲直りをしましたので、蝙蝠は洞窟以外に何とも行き場所がありません。

 周辺・端末装置の動向

 周辺・端末装置の技術は、非常に速く進んでいます。
 たとえば、補助記憶装置としてのディスク装置を見ますと、記憶の高密度化と小型化が同時に進み、さらに固定化が計画されています。それらの構成はさまざまですが、コンピュータを内蔵し高度な制御やデータのバッファリング、機器自身の機能テストなどを行うインテリジェント機器が最近多くなっています。
 一方では、データ端末装置として、パーソナルコンピュータ利用する方式が増えてきました。このようなことは、周辺・端末装置の高機能化・低価格化によって、さらに速いテンポで進むことでしょう。


○入出力機器

 入出力機器は、わたくしたちがコンピュータシステムにデータを与えたり、システムから処理結果を得るときに用います。すなわち、入出力機器は人間と通信システムとの間で情報の受渡しをするマン−マシンコミュニケーションのツール(tool:道具)といえます。

入力機器の種類と特性

 入力機器は、コンピュータにデータを入力する装置です。
 操作する人の側から考えると、コンピュータに対して情報を出すわけですが、習慣的にコンピュータを中心として考えますから、入力(input:インプット)ということになります。
 代表的な入力機器を見てみましょう。

[1] キーボード

 キーボードは、英文タイプライタと似ています。
 1文字ずつ、指でキーをたたいてインプットをしてゆく、もっとも一般的なマン−マシンインタフェースです。
 キーが押されたとき、その文字に対応する符号を作るのに走査方式のエンコーダが用いられます。また、押されたキーの文字はディスプレイに表示され、直ちに確認できるようになっています。
 キーボード上のキーには、文字キーと機能キーがあります。

 機能キーの代表的なものをあげて、キーボードの機能のあらましを見てみましょう。これは機種により、またソフトウェアによって異なりますので、実際に使用するときは説明書を見てください。
 SHIFT(シフトキー)は、英字の大文字と小文字を切り替えたり、数字の上段にある記号を、インプットするときに押した状態で用います。シフトは、置き換えるという意味ですが、手動式の英文タイプライタが、シフトをおして実際に印字部を持ち上げ、下段の活字を打ちつけたことによります。
 コンピュータのキーボードは、電気的に切り替わるだけです。CAPSキーを押し込んだ状態にすると、英字キーの上段と下段を逆にできます。

 CTRL(コントロールキー)は、押した状態で他のキーと併用します。
 キーの機能を増やし本来の文字と別な意味の、あらかじめ決めておいた機能に用いることができます。
 TAB(タブキー)は、何文字かを飛ばして行の先に進むときに用います。
 STOP(ストップキー)は、プログラムを停止したり、作業を終了するときに用います。OSの中には、このキーをログアウトに用い固定ディスクのヘッドを安全域に戻したりするものもあります。
 DEL(デリートキー)は、間違って入力したときに文字を消します。
 INS(インサートキー)は、押すことによって字間に文字を挿入します。

 カーソル移動キーは、ディスプレイ画面上でカーソルを上下左右に移動するときに用います。
 ファンクションキーは、あらかじめ文字や機能を登録しておいて、キーを数多く押す手間を省くようにしたものです。
 数字を大量に入力するときは、テンキーを用います。
 最近、文字や音声を直接入力できる装置が実用化しつつありますが、やはりまだ、キーボードからの入力が多いようです。

[2] マウス

 マウス(mouse)とは鼠のことです。形状が鼠に似ていることから、この名称がつけられたのでしょう。
 平面上を前後左右に移動させ、移動方向と移動距離を検出します。この操作をディスプレイ画面上の位置に対応させ、画面上のカーソルを移動するのです。
 このようにすると、キーボードを操作しなくても、ある程度の入力が可能になります。たとえば、メニュー表示画面で実際に行う業務を選択するときなど、手軽に早く操作ができます。

 構造は、底面にボールのついたものや赤外線を利用したものが多いようです。マウスを動かすことにより移動した運動量から、移動した方向と距離が求まります。
 また、頭の部分にはボタンがついていて、それを押すことによって情報が確定します。
 すなわち、プログラムでこのボタンが押されたことを検出し、処理するわけです。
 移動検出部分に、ほこりが付着すると正しい読み取りができなくなるので、注意が必要です。

[3] 文字読取り装置

 文字読取り装置には、いろいろな種類のものがあります。大きく分類して、光学的に読むものと、磁気的に読むものに二分できます。
 光学文字読取り装置(OCR:optical character reader)は、人間と機械が文字を共用しようとして開発されました。手書き文字または印刷文字に、光を当てて読みます。文字は、あらかじめ用意してあるパターンと比較して認識されます。
 光学文字読取り装置は、読取り部と認識部から構成されます。読取り部は複写機と似た構造で、文字を光学的に読取り、電気信号に変換します。認識部は読取った形が何という文字かを判断します。このパターン認識はふつうコンピュータでおこないます。

 磁気インキ文字読み取り装置(MICR:magnetic ink character reader)は、磁性体の特殊インキで印刷した文字を、磁気ヘッドで読み取ります。
 文字の1部を太くしたりして、機械認識に都合のよい字体にしてありますが、人間にも抵抗なく読めます。
 磁気インキ文字読取り装置は読み取った後で、文字解析をおこない、文字を決定します。読取られる文字は、印刷されていますので動作は確実です。また用紙が汚れていても、光学的には読みませんので、正しい読取りができます。小切手の番号などに用いられています。

[4] マーク読取り装置

 光学式マーク読取り装置(OMR:optical mark reader)は、マークシート上の決まった位置に記入したマークを、光学的に読み取ります。
 調査集計などのように、はじめに沢山の欄を用意しておいて、該当するところにマークをつけるシステムには最適です。

[5] バーコードリーダ

 線の太さと、線の間隔の違いを組み合わせ、表現した符号をバーコードといいます。
 このバーコードを、光学ヘッドで読み取ります。読み取り精度が高いので、商品の包装に印刷しておき、レジでの料金計算や在庫管理に利用します。
 バーコードは機械で印刷され、人間が直接読むのはちょっと無理ですから、数字が併記してあります。

[6] 検出端

 検出端は、工業プロセスの状態を計測する場所です。
 入力データがディジタル量の場合とアナログ量の場合があります。アナログ量の場合はA/D変換器で、ディジタル量に変換します。検出端からのデータは、ふつうシリアル/パラレル変換器を用いてコンピュータに入力されます。
 以上のほかに、入力機器としてタブレット、デジタイザ、音声認識装置などさまざまなものがあります。

 出力機器の種類と特性

 わたくしたちに、情報をもたらす装置を出力機器といいます。この情報は、コンピュータによる処理の結果なのですが、これもデータがコンピュータから出てくるという意味で、出力(output:アウトプット)といいます。
 出力機器にもいろいろありますが身近な機器をみてみましょう。

[1] ディスプレイ

 ディスプレイは表示という意味で、正式には陰極線管(CRT:cathode ray tube)ディスプレイといいます。
 これは、電子ビームを偏向することにより、蛍光面上に文字や図形を表示します。
 1897年にドイツのブラウンによって発明され、ブラウン管といいました。最近では、ブラウン管という名称が敬遠されますが、それはブラウンが後にしたことに関係あるのでしょうか。
 テレビの画面やオシロスコープなど計測機器の表示装置、そしてコンピュータのディスプレイと今日まで、ずいぶん社会に役立ったものと思います。

 この3年前に亡くなったドイツのヘルツは、電磁波の存在を初めて確かめ、光も電磁波と同性質であることを明らかにしました。それで、かつてサイクルといった周波数の単位が、彼の業績を記念して「ヘルツ」となりました。なお、ブラウン管が生まれたのと同じ年に、イタリアでは無線電信が発明されました。
 ディスプレイ画面は、文字を表示するために方眼をもっています。しかし、図形を描くときは、文字座標と別の座標になります。図形は文字よりも細かい点の集合として表現されるからです。たとえば、直線を描くときも、実際は点の連続で表します。図形の場合、1つの点をドットまたはピクセルといいます。
 縦横のドット数はディスプレイ装置によってさまざまです。たとえば、横1120ドット、縦750ドットのものなどがあります。

[2] プリンタ

 プリンタは大きく、インパクト型とノンインパクト型に分けられます。
 インパクト型プリンタは印刷するときに、紙面に圧力をかけます。ラインプリンタは、高速で回転しているドラムの上に、幾組みか用意された活字があり、そこに紙の裏面からハンマーで叩くことにより印刷します。また、ドットプリンタは、特定の活字はなく細いピン状のドットを、文字パターンどおりに打ち出し文字を構成します。この文字パターンをプリンタがもっていて、追加したり、変更したりできるものがあります。
 ノンインパクト型プリンタはインクジェット式、感熱式、写真式などいろいろな方式があります。インパクト型は構造上騒音の問題が生じますが、ノンインパクト型は印字が静かですから、今後さらに新しい方式が次々と現れることでしょう。

[3] プロッタ

 プロッタは図形を描く道具で、縦横の座標を指示してその場所にペンを移動させます。ペンが上がっているときは移動するだけですが、ペンが下がっているときは線を引きます。ペンは数種類を選択できますので、線の太さやカラーをプログラムで自由に変えることができます。
 また、ペンの種類にはインキペンやボールペンの他、鉛筆書きのできるものもありますから、作成後の図面修正に便利です。
 装置の中に漢字ROMをもっているので、文字も効率よく描くことができます。

[4] 操作端

 操作端は、工業プロセスなどに対する出力機器です。コンピュータの処理結果を、そのまま生産ラインに与えるときに用います。
 文字をプリントしたり、図形を描いたりするのとは異質な機器です。これは、コンピュータの出力がそのまま機械の入力になることを意味するからです。このようなことが、今後のデータ通信システムに、多く取り入れられてゆくでしょう。
 以上のほかに、出力機器として音声出力装置などさまざまなものがあります。

 入出力両用機器

 入力と出力は異なった性格のものですから、コンピュータの近くに置く機器は入出力の機能を分離して、互いの性能を向上するのが得策です。しかし、コンピュータから離れたときは、入出力の機能をある程度共用したり、あるいは2つの機能が別々でも、まとめて1体とすると取扱に都合がよくなります。
 ふつう、入出力両用機器をあいまいにデータ端末装置と呼ぶことがあります。入力と出力ができるということは、コンピュータと情報の交換が可能であることを意味するからです。
 入出力両用の端末装置としては、つぎのようなものがあります。

[1] パーソナルコンピュータ

 かつては、テレタイプ社のTTYが端末として用いられましたが、現在はパソコンが用いられます。
 通信端末にコンピュータを利用したものを、インテリジェント端末機といいますが、その意味で現在はインテリジェント化をしたことになります。
 従来は装置にマイクロコンピュータが組み込まれ、さまざまな制御や機能を分担したのですが、今日ではパソコン自身が、通信端末を構成するようになりました。

[2] 特殊端末

 それぞれの通信システムや業務ごとに専用端末があります。
 たとえば、銀行窓口専用のものや、JRや航空会社の座席予約専用のものなどです。


○補助記憶装置

 主記憶装置以外の記憶装置を、補助記憶装置といいます。そして、この補助記憶装置は外部記憶装置、外部メモリなどともいわれます。補助とか外部という意味は、メインメモリ(主記憶装置)の不足分を補ったり、コンピュータの運転休止時にプログラムやデータを保存するからです。
 たとえば、一連の業務プログラムを細かくジョブステップまたはモジュールといわれる機能単位に分割して、補助記憶装置に記憶しておいて、必要なものだけをその都度取り出して、つぎつぎとメインメモリへ読込んで業務を進行します。
 また、データ・ベースの膨大なデータファイルを、補助記憶装置に保存しておき、要求のあるものをメインメモリに送り出して、利用したり変更をしたりします。

補助記憶装置の種類と特性

 補助記憶装置には、磁気ディスク装置、フロッピディスク装置、そして磁気テープ装置などがあります。

[1] 磁気ディスク装置

 磁気ディスク装置は、磁気ディスク上にデータを書き込んだり、読み出したりする装置です。
 磁気ディスクは、金属性の円盤に磁性体を塗ったもので、その表面を磁化して記憶を保持します。記憶容量を増やすために、この円盤を同軸上に連ねて、数枚を1連として同じ回転のもとに使用します。
 磁気ディスク装置は、ヘッドを移動して円盤にデータを書き込んだり、また円盤からデータを読み出したりします。ヘッドが動かせるので任意の場所に、短時間でアクセスできます。記憶は、シリンダトラックセクタなどという単位で管理されます。
 磁気ディスク装置は、ハードディスク装置ともいい、非常に大容量の記憶を保存することができます。

[2] フロッピディスク装置

 まず、フロッピディスクがいったい、どんなものかを考えてみましょう。
 ふつう、フロッピィディスク、ディスケットなどともいいますが、正式にはフレキシブルディスクというそうです。なぜならば、フロッピディスクという呼び名が商品名や商標かもしれないからです。
 あなたは、自動車のアポロが何かご存知ですか?
 現在はウィンカー(方向指示器)といいますが、点滅式でない腕木式だったころ、そのメーカの名前がアポロで製品もアポロだったのです。そこで、曲がるときには「アポロを出せ」などといったものです。しかし、もうアポロといわなくなりました。その会社が、すでにないからです。

 フレキシブル(flexible)とは「曲げやすい」という意味です。
 フレキシブルディスクは、ポリエチレン製の円盤に磁性体を塗って、ほぼ正方形のジャケットやケースに収めたものです。使用するときは、そのままフレキシブルディスク装置に挿入します。
 読み書きするとき、磁気ディスク装置や小型の固定ディスク装置ではヘッドと磁性面が離れているのに対し、フレキシブルディスク装置ではヘッドで、かなり激しく磁性面をこするようです。

 記憶の管理はトラック、セクタなどの単位で行われます。またオペレーティング・システムが独自に扱うクラスタという単位もあります。
 円盤の直径は8インチ、5.25インチ、3.5インチと変化をしてきました。現在の時点では、3.5インチですが、記憶密度もいろいろあり、さらに今後発展してゆくでしょう。
 また、メモリ素子のような回転をしないタイプのものに、置き換わる日も近いことでしょう。

[3] 磁気テープ装置

 1巻のテープに大量のデータが保存できるという特徴があります。大型の磁気テープのほかに、カセットテープを用いた装置もあります。
 計測器などの低価格な連続したデータ記憶装置としては、外部記憶装置にカセットテープを使用することがあります。

[4] RAMディスク

 RAMディスクは、メモリの一部を補助記憶装置として用いる手法です。メモリ空間が大きくなったことで実現した方式です。
 たとえば、一枚分のフレキシブルディスク領域をメモリ内に作り、読み書きの高速化を実現します。ワードプロセッサの文節変換などを、高速にすることが目的でした。作業前にRAMディスクへのロード、作業後のディスクへのセーブが必要になります。

 補助記憶装置のバックアップ

 ハードウェアの故障は修理できますが、ソフトウェアは一度失われると回復するのが非常に困難です。そこで補助記憶装置の中に記憶された貴重なプログラムやデータは、必ずバックアップ(控え)をとっておきます。
 ふつう磁気ディスク装置の内容は、数枚のCDやフロッピディスクに分散して保管します。
 また、CDやフロッピディスクの内容は、さらに別のCDやフロッピディスクに複写して保管します。この場合、3組分のCDやフロッピディスクを用いて順番に更新してゆくのが間違いにくく、バックアップをした後も1世代前のものが残って都合がよいでしょう。

     呼び出した場所に戻る


 インタフェースって、いったい何かしら?



アキレスと亀


 あなたは、ゼノンのパラドックスをご存知ですか?
 その1つに、有名な「アキレスと亀」があります。それは、トロヤ戦争で活躍したギリシャの英雄アキレス、そして彼の相手はなんと亀、この二者がかけっこをするというのです。
 アキレスは「アキレス腱」という弱味もありますが、とにかく足が速い。一方、亀は「兎と亀」のレースでは、兎の油断で運よく勝ったものの、めっぽうのろい。そこでハンディをつけ、亀はアキレスの100m先をスタートラインとしました。
 用意、ドンでアキレスも亀も同時に走り出します。しかし、ここに妙なことが起こります。アキレスがどうしても亀を追い越せないのです。なぜ、そんなことになってしまうのか、その理由を述べます。

 スタートの瞬間、亀はアキレスの100m前を走っていることは明白です。
 しばらくしてアキレスが、さっき亀がいた場所、すなわち彼のスタートラインから100mのところに来ると、もうそのとき亀はアキレスの何メートルか前を確実に進んでいます。つぎに、アキレスがその亀のいた位置まで来ると、亀は遅いながらも、また前に進んでいます。さらに追いかけても、亀は少しではありますが前へ出ています。
 このようなことを繰り返しますと、アキレスは亀に限りなく近づきますが、しかし亀を追い越すことは永久にできないというのです。

 いったい、こんなことがあるのでしょうか?
 アキレスが亀に対して必死に追いかけても、いつも少しずつ前を歩んでいる亀、これは「時間」という概念を無視したために起こる誤謬でしょうか? 実際にはありえないことですが、この矛盾を証明するのはなかなか困難です。
 このような、おかしな理論の組み立て方を、パラドックス(paradox:逆説)といいます。

 この章では、インタフェースについて学習します。
 インタフェースのあらましを知り、装置インタフェースと、その他のインタフェースについて考えてみましょう。


○インタフェースのあらまし

 インタフェース(interface)という言葉を、そのまま訳すと「面と面の間」というような意味になります。つまり、それは2つのものの接合面を意味します。
 わたくしたちは、テレビやパーソナルコンピュータを購入すると、安心して電源プラグを家庭のコンセントに差し込みます。この時、電圧が何ボルトあるかなどと心配しません。これは、各家庭にきている電気の電圧や周波数が、どこでも統一されていることを知っているからです。また、プラグやコンセントの寸法や規格も統一されています。

 すなわち、接続条件が電気的にも物理的にも、つなぐものとつながれるものとの間で合致しているのです。
 インタフェースは、はじめ中央処理装置とその周辺装置間をつなぐチャネル装置や、その制御回路を指しました。しかし、今日ではもっと広い意味で、2つの装置間の結合を一般的にインタフェースといいます。
 さらに、ハードウェアに関してのみならず、ソフトウェアに対してもインタフェースの概念を用いる場合が多くあります。したがって、インタフェースは非常に大がかりなものから基板1枚、さらに素子1つ程度の小さなものまでを含む言葉です。

 インタフェースの役割

 インタフェースは、ある装置と別な装置の中間に置かれ、それらの装置間の接続を調整します。その役割は、
 (1) 信号の電圧レベルの相違
 (2) 正論理と負論理の相違
 (3) タイミングの相違
 (4) 寸法や形状の相違
などを調整します。

 すなわち、インタフェースは電気的条件と物理的条件を、ともに満足させる必要があります。2つの装置が同じ設計思想で作られたときは、簡単なインタフェースで接続できます。場合によっては、装置間を直結できることもあるでしょう。
 しかし、メーカが異なっていたり、方式が相違するときは、何らかの工夫が必要です。2つの装置の信号様式が違うとか、論理が正論理と負論理の場合には、その間にインタフェースがどうしても必要になります。

 インタフェースの種類

 インタフェースには、いろいろな種類があります。@@@しおり
 センタ内の装置間を接続するものや、パーソナルコンピュータの周辺機器、たとえば、固定ディスク装置やマウスなどの特定な形式の機器をつなぐものを専用インタフェースといいます。
 一方、インタフェース回路を機器間で、ある程度共用できるようにしたものがあり、これを汎用インタフェースといいます。

 また、データ通信システムのインタフェースは、それぞれの置かれる位置に着目して、
 (1) コンピュータと通信制御装置および入出力制御装置の間
 (2) チャネル装置と入出力装置の間
 (3) チャネル装置と通信回線の間
 (4) データ端末装置と通信回線の間
などに分類し、考えることができます。


○装置インタフェース

 ある機能的にまとまった装置と、別の機能的な装置間のインタフェースを、装置インタフェースと名付けます。
 装置インタフェースには、多くの機能が要求されるため、かなり大がかりになるのがふつうです。そしてこの場合、それ自身もふつう1つの装置を構成しています。

 チャネル装置

 チャネル(channel)装置は、コンピュータの入出力信号を入出力制御装置や通信制御装置に振り分けたり、まとめたりする装置です。そしてチャネル装置には、マルチプレクサチャネルとセレクタチャネルの2方式があります。
 マルチプレクサチャネルは、同時に動作している数台の装置に、データ伝送を並行的に行うものをいいます。
 セレクタチャネルは、接続されている装置のうち、選択した1台とのみ伝送を行うものです。
 チャネル装置は、コンピュータの制御装置から与えられたコマンド(指令)によって、主記憶装置と入出力装置または通信制御装置の間で、データの受け渡しを行います。

 制御装置は、チャネル装置に対して、一旦コマンドを与えてしまうと、チャネル装置から、その作業が終了したことの連絡があるまで、記憶している先の命令に進みます。したがって、チャネル装置は制御装置と独立して、データの転送がおこなえます。データの転送がすべて終了すると、チャネル装置は制御装置に割り込み信号を出して、再びコマンド待ちになります。
 コンピュータの処理速度は、入出力機器や補助記憶装置の速度よりも桁違いに速いため、いろいろな工夫がなされます。その1つが、このチャネル装置による処理なのです。

 入出力制御装置

 前に、入出力装置と補助記憶装置を、まとめ周辺装置といいました。
 すなわち、周辺装置とはキーボード、マウス、文字読取り装置など入力機器や、ディスプレイ装置(CRT)、プリンタなどの出力機器、それに磁気ディスク装置、フレキシブルディスク装置などの補助記憶装置をまとめていいます。
 入出力制御装置(input-output control unit)は、チャネル装置と周辺装置間のデータ受渡し制御を行います。入出力制御装置は、ふつう1つの周辺装置に対して1台あります。しかし、同じ種類の周辺装置が数セット集まって、1つの入出力制御装置を共用することもあります。たとえば、1台の入出力制御装置に、磁気ディスク装置が数台接続するような場合です。

 初期のころの入出力制御装置は、コントローラとかハンドラーなどといい、非常に大きなケースに入っていて、それ自身が堂々とした一つの装置でした。しかし最近では、下敷大のI/O(input/output)カードを、コンピュータ本体のスロットに挿入するだけでよいものが多くなりました。
 また、入出力制御装置は一種の駆動回路ですから、ドライバといわれることもあります。
 最近では、インタフェースカードに読出し専用メモリ(ROM)を実装し、そのプログラムによって入出力処理をするものもあります。

 入出力制御装置を動かすソフトウェアは、オペレーティング・システム(OS)内のIOCS(Input Output Control System:入出力制御システム:アイオーシーエスと読みます)の中に用意されているのが、ふつうです。
 小型コンピュータの中には、基本的な入出力やハードウェア制御をおこなうプログラムを、ROM 内にもっていてBIOS(Basic Input Output System:ふつうバイオスと読みます)というものがあります。

 通信制御装置

 通信制御装置(CCU:Communication control unit)は、チャネル装置とデータ通信回線を接続するためのインタフェースです。このデータ通信回線は、それぞれ遠方にある相手の宅内で、端末制御装置を通してデータ端末装置につながっています。
 ふつう、1台のコンピュータは遠方にある多数のデータ端末との間で通信を行います。この場合、回線ごとに制御用の装置をもちますと不経済です。したがって、これらの制御をまとめて、効果的におこなうのが通信制御装置です。これは、データ端末から不定時・不規則に入ってくる信号を受け取って中央処理装置に渡したり、またその逆をおこなったりすることです。
 ちょうど入出力制御装置がそれぞれの周辺装置との間で、信号を振り分けたのに似ています。

 通信制御装置は、
 (1) データ回線の選択・電気的接続
 (2) 各データ通信回線との接続制御
 (3) 送受信制御
 (4) 伝送制御と誤り制御
 (5) データのバッファリング
などをおこないます。

 データ回線の選択・電気的接続とは、多数の端末装置の中から必要な相手を選び、電気的に接続するための切り替えをおこなうことです。
 各データ通信回線との接続制御は、選択した相手のデータ端末装置にデータの送信通知を出したり、受信可能なことを知らせたりします。また、相手側の条件が整えば、実際のデータを送受信します。そして、通信が終わればその相手との回路を切り離し、リセットをおこないます。
 送受信制御のはたらきは、文字の組立と分解です。

 コンピュータで作成したデータはパラレル信号です。したがって、このままではデータ通信回線には乗りません。そこで、パラレル信号をシリアル信号に分解します。また、相手の端末装置からやってきたデータ信号は逆に、シリアル信号からパラレル信号に組み立てます。この変換をおこなうのが、送受信制御です。
 伝送制御は、決められた手順にしたがってデータを送受信することです。
 誤り制御は、データが正しく送受されたかどうかを、あらかじめ決めた方式でチェックすることです。
 伝送制御と誤り制御は、「データ伝送」の章を参照してください。
 データのバッファリングとは、コンピュータ側とデータ端末装置の通信速度を調整するために、データを一時、バッファメモリに蓄積して、必要なときに取り出すことです。

 端末制御装置

 端末制御装置は伝送制御装置ともいって、データ端末装置と通信回線の間にあるインタフェースです。
 データ通信回線の両端を見ますと、コンピュータ側に通信制御装置があり、データ端末装置側に端末制御装置があります。したがって、通信制御装置と端末制御装置は動作・機能が対応しています。
 端末制御装置は単に、端末インタフェースともいわれ、端末機器を制御する装置ですが、実際にはデータ端末装置に組み込まれ一体化しています。

 端末制御装置の役割は、
 (1) データ通信回線との接続制御
 (2) 送受信制御
 (3) 伝送制御と誤り制御
 (4) データのバッファリング
などです。

 データ通信回線との接続制御は、受信をおこなうためにデータの送信要求をコンピュータに出したり、コンピュータに向かって送信することを知らせたりすることです。そして、条件が整えば実際のデータを送受信し、通信が終わればリセットします。このような、一連の手続きをデータ端末装置の入出力制御という場合もあります。
 送受信制御の主なはたらきは、文字の組立と分解です。
 データ端末装置で作成したデータや、そこから出力するときのデータはまだパラレル信号です。一方、コンピュータ側から受信したデータはシリアル信号ですし、またコンピュータに送出する信号も、シリアル信号でなければなりません。
 送受信制御は、この間の変換を行うわけです。さらに、送受信制御は受信時には、通信メッセージから同期信号を取り除き、送信時には反対に同期信号を付加します。
 伝送制御と誤り制御は、「データ伝送」の章を参照してください。
 データのバッファリングとは、通信の速さを調整するために、データを一時バッファメモリに蓄積することです。

     呼び出した場所に戻る


 ご存知ですか、ソフトウェアの体系?



朝三暮四


 あなたは、「荘子」の中にある「朝三暮四」という話をご存知ですか?
 それは、こんな内容です。
 昔、ある人が沢山の猿を飼っていました。毎日、とてもかわいがりましたから、猿たちのほうでも飼い主になついて、お互いに話が分かり、こころが通じあうほどになりました。
 しかし、猿の数が増えるにつれ、餌のどんぐりを買う費用も、馬鹿にはなりません。飼い主は、猿に嫌われてはいけないと思い、いろいろと苦労して餌の都合をつけていたのですが、とうとう日々の餌を制限しなくてはならない状態になってしまいました。そこで、おそるおそる猿たちに言いました。
 「みんな、お願いがあるのだ。聞いておくれ。これからは、どんぐりを朝に3つ、暮れに4つにして欲しいのだよ」
 たちまち猿たちは、激しく騒いで不満を示したのです。飼い主は困った顔をしてじっと考えました。猿たちは、心配そうに見ています。
 しばらくして、飼い主は猿たちに向かって静かに言いました。
 「それでは、朝4つにして、暮れは3つにしようね」
 それを聞いた猿たちは大よろこび、手を叩いて賛成したということです。

 あなたは、このことをどうお考えですか?
 この話は、わたくしたちに手順の違いによって、うまくいくときと、うまくいかないときがあることを教えています。また、日々繰り返している同じようなことでも方法を変えると、結果が違ってくるということも暗示しています。
 まさか、この猿たちのように単純ではないでしょうが、世の中のことで順序をさかさまにすると成功することがあります。処理手順がループになっているプログラムの中に、そのようなことがよく見受けられます。

 この章では、ソフトウェアについて、基礎的な常識を学びます。
 まず、ソフトウェアの発達について、おおまかに見ます。つぎに、オペレーティング・システム、言語および言語プロセッサについて学習し、最後に通信システムのソフトウェアについて見てみましょう。


○ソフトウェアの発達

 コンピュータのことを言うときに、ハードウェアとか、ソフトウェアという言葉を聞きます。ときにはファームウェアという言葉も使われます。
 いったい、これらの言葉はどのようなことでしょうか?
 ハードウェア(hardware)という言葉を文字どおり解釈すると「固いもの」となります。つまりハードウェアは、コンピュータシステムを構成する物理的装置を指します。コンピュータをはじめ、周辺装置、伝送路、端末装置などの装置一切を含みます。

 一方、ソフトウェア(software)を直訳すれば、「やわらかいもの」となります。しかし、とくに柔らかいという意味はなく、ハードウェアを利用する、さまざまの技術をいいます。つまり、プログラムやその他の、利用技術全体を指す言葉なのです。
 さらに、ファームウェア(firmware)はソフトウェアを実現するハードウェアです。
 たとえば、ROM (Read Only Memory:読出し専用メモリ)内に書かれた周辺機器用テストプログラムなどがファームウェアといえます。

 ソフトウェアという言葉が作られる以前から、この概念や意味内容をあらわす考え方がありました。それは、取引に物質が付帯しなくても、代償が支払われるコンサルタント料や指導料などです。
 このように、ソフトウェアという言葉は、単にプログラムだけを指すのではなく、もっと大きなノウハウや知識などの概念を含んでいます。
 データ通信を実現するためには、コンピュータ、データ端末装置、伝送路などの多くの設備(ハードウェア)と、その利用手続き(ソフトウェア)が必要です。しかし、それらは互いに関連して機能し、実際には切り放して考えることは不可能です。高性能な機械も、使用方法やソフトウェアのいかんによって、まったく役に立たないことがあるからです。

 アルゴリズム

 9世紀のアラビアの数学者モハメット・アル・クワリズミは方程式を研究し、「アルジェブルとワルムカパラ」という書物を残しました。


        アルゴリズム


 それは根に関するものですが、その1つに、
     「根の平方が根の何倍かに等しい」
というのがあります。これは根をx とすると、
     x 2=a x
となりますが、彼はこれらの関係とその証明を全部文章で記述しました。
 いったい、なぜ数学の証明に数式を用いなかったのでしょうか?

 その答えは簡単です。アル・クワリズミは、式を用いることを知らなかったのです。
 このいわれから、今日ではアルゴリズム(algorithm)は算法と訳され、問題を解くための一連の手順を指すようになりました。
 ついでながら、代数のことを英語でアルジェブラ(algebra)というのも、この本によるものといわれます。
 問題を解くための一連の手順は、基本的な命令の並び、つまりプログラムのステップを意味します。そのような理由で、アルゴリズムとプログラムを、同じ意味に用いることもあります。
 一般に、アルゴリズムは与えられた問題と、それらを表現する言語によって違ってきます。

 自動機械

[1] オートマトン

 人間のすることを機械に代行させようとする試みは、ずいぶん古くからあったようです。
 オートマトン(automaton 複数はautomata)とは、ギリシャ語で「ひとりでに動くもの」という意味で、元来は精巧な歯車仕掛けで動く自動機械や、自動人形をいいました。
 しかし、このからくり人形のような趣味的なものが次第に発達し、今日では工業用ロボットなど、多くのオートメーション機械が実用化されています。


オートマトン

 エドガー・アラン・ポオに『メルツェルの将棋差し』という短編があるのをご存じですか?
 ポオは、そこに人間の思考におよぶ働きをした機械のことを冷静に描写しています。それは、チェスが非常に強く(もっともチェス専用の機械ですが)、メルツェルは、その機械人形をもってアメリカ合衆国を巡業しました。
 見物人は、人形の中に人間が入っているのではないかと、毎回不思議がったそうです。

 近年、情報・制御・通信の技術が大いに進歩し、オートマトンという言葉も特別なニュアンスをもって用いられるようになりました。
 また、機械系の制御と通信を、動物における制御と通信に対比させ研究する分野の学問が発達しました。
 これが、ノーバート・ウィーナーの『サイバネティックス』です。
 無生物と生物の間に、通信の機能に関連があるなどということは、なかなか興味深いことです。

[2] チューリングマシン

 機械で問題を解くことも、多くの人たちが考えました。古くはパスカルの機械式計算機が実現していますが、今世紀のはじめイギリスの数学者チューリング(A.Turing)が考えたものを、彼の名をとってチューリングマシンといいます。
 これは、限りなく長いテープに問題の中間結果を記入しつつ、そのテープを前後に動かしながら少しずつ解に近づき、最後に解を求めるというものです。
 このチューリングマシンの考え方は、現在のコンピュータの機能と本質的に変わりありません。コンピュータのメモリは、補助記憶装置の助けを借りて見かけ上の容量を増やすことができますが、やはり有限です。しかし、チューリングマシンはもともと理論上のマシンですから、記憶容量は無限です。

 FORTRANモニタ

 FORTRANモニタは、IBMの初期のコンピュータに言語翻訳作業の自動化というねらいで作られました。これは、コンピュータの作業を連続的におこなう最初のものです。コンピュータという自動機械の自動運転ということと、オペレーティング・システムの誕生ということで画期的でした。
 それまで、コンピュータに仕事をさせるときは大変な力仕事でした。
 仕事の単位ごとに手作業で、インプットのセットとアウトプットの処理を、しなければならないからです。なぜならばアウトプットの処理が、つぎのステップのインプットとなるからです。すなわち、中間結果を全部手作業で処理していたわけです。

 インプット・アウトプットともに媒体は紙カードで、操作にかなりの労力を必要としました。紙といっても多量でしたので、かなり重かったからです。私も初期のころ(と言っても1940年ころのこと)は、ずいぶんと腕が疲れたことを覚えています。
 また、一連の作業を手作業でおこなうということは、ミスの発生も多くしました。差し違えをしたりするからです。そこで連続処理のためにモニタ(monitor:監視プログラム)が作られたのです。

 時間と空間

 ここで、非常に短い時間と、十分に広い空間について考えてみましょう。
 タイムシェアリングは短い時間を振り分けて上手に使い、一方、仮想記憶は実際はないメモリ空間を工夫して実現しています。

[1] タイムシェアリング

 タイムシェアリング(time sharing)は、その名のとおり時間を分割することです。
 コンピュータの制御装置は非常に高速ですが、周辺装置は機械部分を持っているので、どうしても動作速度が遅くなります。そして、これらの装置を操作する人間は、さらに動作速度が遅くなります。
 そこで、制御装置の処理時間を分割して、利用者が分割された時間のうち、自分に割り振られた時間だけを使用することを考えました。このようにすると、実際には自分がそのコンピュータシステムを、占有しているのと同様な感覚で操作することができるからです。
 それは、パソコンが普及した今日では想像もできないほどの、感激と満足感を味わうことができました。

[2] 仮想記憶

 仮想記憶(virtual storage)はメモリの大きさによるプログラム作成上の制約を、なくす目的で考えられました。
 仮想記憶の技術は、実際にはメモリがない空間を、オペレーティング・システムによって使用可能にします。
 ユーザは、この見かけ上の大きなメモリ空間を、自由に利用することができます。しかし、事実上そこには対応する物理的メモリはないのですから、オペレーティング・システムは補助記憶装置を用いてアドレス空間を調整し、実行に支障のないようにしているわけなのです。


○オペレーティング・システム

 FORTRANモニタに始まった運転の自動化は、コンピュータという資源を少しでも有効に利用するため、その後急速に発達しました。
 はじめは単純であったオペレーティング・システムは、次第に機能を追加し、性能を高めてゆくうちに、それ自身が、とてつもなく大きな一連のシステムになりました。そして、このオペレーティング・システム(OS:operating system)はコンピュータの効果的な操作と合理的な運営を実現したのです。

 通信システムのオペレーティング・システムは、数多くある端末装置からの要求を手際よく処理したり、コンピュータが出力した結果を該当する端末装置へ直ちに応答します。
 通信システムは、リアルタイム(実時間)処理を行っているのが大きな特徴ですが、基本的にはマシンコード(機械命令)に対応する機能の組み合わせで、すべてのシステムが構築されます。

 オペレーティング・システムの目的は、
 (1) 処理能力の向上
 (2) 応答時間の短縮
 (3) 信頼性の向上
 (4) 使いやすさの向上
などです。

 単位時間あたりの仕事量をスループット(through-put)といい、コンピュータの処理能力を表わします。当然これは、大きいほど望ましいわけです。また、コンピュータを止めずに連続運転をおこない、稼働性をあげ処理能力を向上することもあります。
 応答時間はターンアラウンドタイム(turn around time)で表します。これは、コンピュータにインプットを与えてから、アウトプットが得られるまでの経過時間をいいます。当然、この値は小さいほど好ましいわけです。
 信頼性(availability)は、ハードウェアの性能と大きく関係します。オペレーティング・システムは内部に、チェックルーチンやチェックポイントを設けたり、リトライ(retry:再試行)機能を持たせたりして誤りを少なくする工夫がなされます。
 使いやすさは、人間が機械を使用する場合の操作性をいいます。

 通信技術やコンピュータの発達を、ハードウェア面とソフトウェア面に分けて考えると、妙なことに気付きます。
 それは、ハードウェアの発達が驚異的な速度であるのに対し、ソフトウェアの発達はそれほどでないという事実です。言い替えますと、物は非常に発達しましたが、考え方のほうはあまり進歩をしていないということでしょうか?
 ハードウェアについて言えば、メモリ素子の変化を考えればその進歩がいかに速いかが分かります。一方、ソフトウェアを見ますと、オペレーティング・システムこそ大規模になっていますが、その内部の処理方式、たとえばコンパイラの構造など、あまり変わっていないようです。
 すなわち、ハードウェアの進歩した部分について、ソフトウェアが伴って充実したといえます。

 コントロールプログラム

 コントロールプログラム(control program)は制御プログラムともいい、オペレーティング・システムの中核をなすものです。コントロールプログラムの機能をおおまかにみると、
 (1) 実行管理
 (2) 通信制御
 (3) ファイル管理
 (4) ジョブ管理
に分けられ、それぞれが有機的に関係しています。

 実行管理プログラムはメモリ内に常駐して、他のすべてのプログラムを制御します。作業の進行中に、さらに緊急度の高いジョブの割込みがあった場合、現在行なっているジョブを中止して、コントロールをそこへ移したり、メモリ領域の割付をします。
 通信制御プログラムは、通信制御装置とデータ通信回線を経由して接続されている遠方のデータ端末装置とのやりとりをおこないます。
 ファイル管理プログラムは、補助記憶装置に格納されているプログラムファイルやデータファイルを管理します。
 ジョブ管理プログラムは、ジョブの進行をつかさどります。

 ジョブ(job)やジョブステップ(job step)は業務の作業単位です。実際にコンピュータが1回に処理するプログラムの単位はタスク(task)といいます。コントロールプログラムは、このような監視を絶えずおこないます。
 また、作業の進行に応じて補助記憶装置にある業務プログラムや、使用するオペレーティング・システムの一部をメモリに読み込み実行します。
 ふつう、コントロールプログラムはメーカがあらかじめ作成したものを必要に応じて取捨選択し、業務プログラムはユーザが該当する通信システムにあわせ設計・製作します。

 汎用サービスプログラム

[1] サポートプログラム

 サポートプログラム(support program)は、通信システムの効果的な運転ができるようにオペレーティング・システムの一部として用意されたものです。たとえば、
 (1) 診断・障害プログラム
 (2) ローダ
 (3) リンカ
 (4) デバッガ
などがあります。

 診断・障害プログラムは、コンピュータ本体や周辺装置の動作をチェックします。システムに障害が発生した場合、できるかぎり停止せずに運転を続行し、被害を最小限にとどめたり、故障システムの切放しや予備系の立上げを行ったりします。
 ローダ(loader)は各業務の実行に先立ち、補助記憶装置からプログラムを主記憶装置に読込みます。
 リンカ(linker)は、翻訳ずみの数本のプログラムを、メモリ番地の調整をして実行可能な1本のプログラムに結合します。
 デバッガ(debugger)は、プログラムの誤りを修正するのに用います。バグ(bug)とは虫のことですから、デバッグ(debug)は「虫」を「誤り」と見立てて取り除くことをいいます。さらに、プログラムの流れを追うトレーサ(tracer)や、変数の値を調べたりするものがあります。

[2] ユーティリティプログラム

 データ処理に共用できる機能をもつプログラムを、ユーティリティプログラム(utility program)といいます。
 大きく分類すると、
 (1) システム運用ユーティリティ
 (2) ファイル操作ユーティリティ
 (3) プログラム作成用ユーティリティ
などがあります。

 これらのユーティリティプログラムは、ふつうメーカが作成支給しますが、ここでいくつかの例を見てみましょう。
 補助記憶装置に用いる磁気ディスクやフロッピディスクは、最初にそのオペレーティング・システムにあった形式に初期化をする必要があります。これを、フォーマット(format)またはイニシャライズ(initialize)などといいます。
つぎに、初期化した媒体にプログラムやデータの格納場所を予約することを、アロケーション(allocation)といいます。ここで、ファイルの大きさや、順編成ファイル・索引付き順編成ファイルなどの属性を指定します。

 既に予約してある領域を、書き込んだ不要な内容とともに取り消すことを、デアロケーション(deallocation)といいます。
 また、システムの運用には、媒体の複写(copy)が必要です。磁気ディスクなどの内容は、安全のために必ず複写して予備を作ります。その意味で、複写のことをバックアップ(back up)ともいいます。
 複写はファイル単位でする場合と、同じ媒体同士でボリュームごと行う場合があります。
 プログラム作成用には、テキストエディタ(text editor)があります。エディタは、挿入(insert)・削除(delete)・置換(replace)などの機能があり、プログラムやデータを文字列として作成することができます。

 パソコン用OS

 大型コンピュータは、特定システム向けに納入されることが多く、オペレーティング・システムもそれぞれに特徴があって、他機種との互換性はほとんどありません。超大型のコンピュータでは、1台ごとに専用OSなどというものもあるくらいです。
 一方マイクロコンピュータは、中央処理装置に使用するチップが種類ごとに共通ですから、当然のことですが、何れのメーカの機種もアーキテクチュアや動作が類似しています。
 したがって、オペレーティング・システムの規格が統一しやすくなることも事実です。

 このような理由で、マイクロプロッセサを用いたコンピュータの標準OSに、初期のころからCP/MMS-DOSがありました。そして、現在はWindows が主流になってきました。
 CP/Mは、8ビットのマイクロコンピュータ用に、アメリカのディジタルリサーチ社が開発したものです。マルチプログラミングが可能なMP/M、ローカルネットワークが構成できるCP/NET、そして16ビット用にCP/M86などが発表されました。
 MS-DOSは最初から16ビットのマイクロコンピュータ用として、マイクロソフト社が開発したものです。
 いずれも、短いコマンド(command:指令)を用い、効率よくオペレーティング・システムを操作します。コマンドだけでも、一昔前の大型機に劣らない機能を満たしてくれます。たとえば、バッチ・ファイルの扱い方、階層構造のディレクトリ、入出力のリダイレクト機能、フィルタを用いたパイプなど……
 Windows はMS-DOSから発展をしたOSで、文字ではなく画面(グラフィックモード)の操作を可能にした扱いやすい方式ですが、現在でもMS-DOSのモードの実行がサポートされています。

 また、最近のパソコンはローカルエリアネットワーク(LAN)にも組み込めるようになり、大型コンピュータの端末としてばかりでなく、独立して利用できるように作られています。このように、信頼性が高く性能もよいので、今後パソコンが、ますます分散型のデータ通信システムの中核になってゆくことでしょう。
 コンピュータの異機種間で、データやプログラムの変換作業が必要になることがあります。このような場合、標準OSでソフトウェアを作成しておくと互換性に優れます。データの共用や、文字型で保存したプログラムの移行が、同じ種類のオペレーティング・システムの別のコンピュータに可能です。


○言語および言語プロセッサ


言  語

 初期のコンピュータはメモリも小さく、プログラミングといえば8進表示によるマシンコードで作成しました。しかし、最近はパソコンもメモリが非常に大きく、インタプリタ方式やコンパイラ方式の高級言語が簡単に利用できて便利です。
 プログラム言語は、コンピュータに一連の命令を与えるのに用います。
 コンピュータの言語は、数多くあります。

 ちょうど、わたくしたちの言葉に、日本語があったり、英語やフランス語があるのと似ています。
 また、同じ日本語の中にも地方によって方言があるように、同じ種類のプログラム言語でもコンピュータの機種が異なれば違いがあります。
 わたくしたちの言語は多くの人々が用い、長い年月を経て現在の形になりました。当然、その民族や地方に定着して固有なものですから、表現は互いに異なります。それらの言語は別々に、その国の文化や経済と密接に関係しながら、発達したものですから、どれかに統一するなどということは、なかなかできません。
 このことは、征服された民族に言葉までも変えさせようとして失敗したヨーロッパの歴史が証明しています。

 それでは、せめて万人向けの分かりやすい、世界標準の新しい言語があれば便利と思いますが、やはりそれぞれの国に事情がありうまくゆきません。
 世界標準語の試みとして、ザメンホフ(ポーランド)が考えたエスペラントという、すばらしい人造語(コンピュータの言語ではなく、人間が話す言語)があるのですが、なぜかあまり普及しません。
 コンピュータの言語にも、これと似たような現象がみられますね。
 あなたは、このことをどうお考えですか?


言語プロセッサ

 COBOL言語は、その誕生のいきさつから比較的標準化されている言語です。
 一方、BASIC言語をみますと各メーカごとに、ずいぶんと違っていることが分かります。同じメーカであっても、機種ごとに言語仕様が異なる場合さえあります。
 この相違は、おそらく機能を増やすときに仕様を独自に決め、各メーカ間で千差万別になったのでしょう。たとえば、グラフィック命令などを見るとその違いがよく分かります。これでは、標準がどれであるのか、また方言はどれなのか利用者の立場ではまったく分かりません。結局、仕方ないので、いちばん市場に出ている機種が何となく標準のような錯覚を誰もがします。

 言語プロセッサ(言語処理プログラム)は、わたくしたちが記述したプログラム言語を、マシンコードに変換するプログラムです。ちょうど、翻訳や通訳のような仕事をするソフトウェアです。
 言語プロセッサは、その方式から、
 (1) コンパイラ
 (2) インタプリタ
に分けられます。
 コンパイラは、わたくしたちの思考過程と、ほぼ同じレベルで書いた一連の命令文を、マシンコードにするものです。インタプリタも、コンパイラと同じく命令文をマシンコードにします。

 コンパイラ言語も、インタプリタ言語もプログラムを記述する表現は同じですが、マシンコードに変換する処理の仕方が違います。
 プログラム言語は、どのような過程でマシンコードになり、コンピュータを動かすのでしょうか?
 わたくしたちが作ったプログラムは、ふつうコンピュータを動かすために、つぎのような行程をたどります。
 (1) ソースモジュール
 (2) オブジェクトモジュール
 (3) ロードモジュール
 ソースモジュールは、わたくしたちが問題を解決するために記述した一連のプログラムと同じイメージで、あらかじめテキストエディタを用いファイルに作成したものです。
 オブジェクトモジュールは、言語処理の中間の形式でファイルになったものをいいます。
 そして、ロードモジュールはコンピュータを実際に動作させるためのマシンコードファイルです。

 マシンコードとアセンブリ言語

 マシンコードは、コンピュータの中央処理装置に動作をさせるレベルの機能コードをいいました。
 アセンブリ言語は、このコンピュータのマシンコードに近い言語で、1つのマシンコードに対し、1つのアセンブリ命令が対応して存在します。その命令は、該当するマシンコードの機能をあらわす意味がつけられ、たいへん覚えやすくなっています。これを、ニーモニック(mnemonic:あだ名)といいます。
 さらに、一連のマシンコードでまとまった機能単位をつくり、それを1つの命令として使用できるマクロアセンブラもあります。
 コンピュータに、ハードウェアの細かい動作を行わせるときには、小回りのきくアセンブリ言語によるのがふつうです。

 コンパイラとインタプリタ

[1] コンパイラとリンカ

 コンパイラ言語は、高級言語とも言いアセンブリ言語と比べると、はるかに人間の思考に近い表現形式をしています。1つの文が基本命令を構成し、「計算をしなさい」とか、「移動をしなさい」というまとまった機能になっているからです。
 しかし、給料計算を直ちにしなさいとか、売上を分析しなさい、複式簿記の貸借対照表と損益計算書を作りなさいなどという内容を、1行で書ける命令はまだありません。
 もっとも、データをインプットすると結果を与えてくれるものもありますが、それは誰かがあらかじめプログラミングしたものでしょう。また、数値解析や給与計算ができるパッケージがありますが、それらは1つの命令で構成されているわけでなく、膨大な一連のプログラムなのです。
 所詮、コンピュータにできることは、最終的には論理回路で処理できることだけなのです。

 コンパイラは、コンパイラ言語で書いたプログラム全体を、マシンコードに翻訳する言語プロセッサ(言語処理プログラム)なのです。
 ソースモジュールをコンパイルすると、オブジェクトモジュールができます。つぎに、これをリンクしてロードモジュールを作ります。このロードモジュールは、それ自身まとまった実行単位となっていますから、業務プログラムの一部分を構成することも可能です。
 リンカには、全部をロードモジュール中に組み入れてしまう静的リンカと、実行時に必要な都度結合する動的リンカがあります。
 小型コンピュータのコンパイラには、マシンコードを作らずに中間コードとして出力するものもあります。これは、言語プロセッサの負担を軽くするためとられた方法です。このような場合は、高速性に制限があり実行時にはやはり、その中間コードを解釈するインタプリタがメモリ内に必要です。

[2] インタプリタ

 インタプリタ言語は、やはり高級言語なのですがコンパイラと異なり、1ステップずつ解釈しながら実行する方式です。まとめて翻訳をしないで、一行ずつ翻訳しながら、実行してゆきますので、コンパイラと比べ実行速度や処理効率は劣ります。しかし、その取り扱いは非常に簡便です。
 ちょうど、コンパイラが1冊の原書をしっかりと全体的にみて、体系立てて翻訳・出版しようとしているのに対して、インタプリタは同時通訳の方式です。同時通訳は直ちに内容が分かりますが、前後のまとまりが少々欠けてしまいます。
 とくに、BASIC言語はインタプリタ方式によって普及した言語です。

 高級言語

 高級言語は広い範囲の問題を、文章に近い表現で記述できます。
 汎用プログラム言語、問題向き言語などともいわれますが、やはりそれぞれの言語に得意な用途があります。たとえば事務計算用、技術計算用、さらにはオペレーティング・システム記述用などという分野です。

[1] COBOL言語

 COBOL言語は、Common Business Oriented Language を省略して名付けられました。その名の示すように事務処理用言語です。
 言語の表現は英文で書かれ、データ部はメモに近く、処理手続き部は文章に近い形式をしています。したがって、プログラムがそのまま業務の手順覚書きとなります。1つのプログラムは大きく4つの部分に分類し、
 (1) IDENTIFICATION DIVISION(見出し部)
 (2) ENVIRONMENT DIVISION(環境部)
 (3) DATA DIVISION(データ部)
 (4) PROCEDURE DIVISION(手続き部)
の順に記述されます。

 それぞれのDIVISION(部)は、さらにSECTION(節)、PARAGRAPH(段落)と必要に応じて階層的に記述されます。
 COBOL言語で扱う大量のデータは、ファイル(FILE)として補助記憶装置に記録されます。ファイルはレコード(RECORD)が1件分の単位となります。そしてさらにレコードは、集団項目、基本項目という順に構成されます。集団項目が数段階ある場合もあります。
 COBOL言語は、数の体系に2進化10進法を用いますので金額計算に強く、とくに大きな金額の計算や、端数処理に対して効果があります。一方、三角関数の計算やグラフィック表示などは、ふつうの方法ではできないので、その補助プログラムを組み込んで実現をします。

 手続き部では、
     IF(判断)
     COMPUTE(計算)
     MOVE(移動)
     GO TO(ジャンプ)
     READ(ファイルの読み込み)
     WRITE(ファイルの書き出し)
などの基本命令を用いて処理の流れを記述します。

 COBOL言語が、わたくしたちの論理思考に近い表記が可能であるといっても、それはプログラム空間の中でのことです。したがってプログラムの中に、
     GO TO AMERICA.
と書いても、このプログラムを実行したときにアメリカには到着しません。
 この場合、手続き部の中に付けたAMERICAという段落へジャンプするだけです。
 あっ。あなたに、たいへん失礼なことを書いたような気もします。気をわるくされたら、どうかお許しください。

[2] FORTRAN言語

 FORTRAN言語はMathematical Formura Trancelatorの略といわれています。科学技術計算向きの高級言語です。プログラムは、かなり自由に記述できて、文(STATEMENT)が単位となります。
 データには、整数型(integer type)と実数型(real type)があります。
 実数型は浮動小数点表示で使用する数ですが、単精度(single precision)と仮数部を大きくした倍精度(double precision)のものがあります。他のデータとしては、論理型(ligical type)や文字型(hollerith type)があります。

 式は算術式、関係式、論理式があります。
 算術式は、右辺の値を左辺に代入します。関係式は、算術式を論理演算子でつないだものです。関係が成立するか否かで、飛び先や処理条件が異なります。論理式は論理定数や変数を論理演算子で結び、真または偽を与えます。
 文は、実行文と非実行文があります。実行文は、いわゆる動作を行うものですが、非実行文は配列を宣言したり、数の型を規定したりして言語プロセッサに指示を与えます。

[3] BASIC言語

 BASIC 言語は基礎言語と考えてよいでしょう。ダートマス大学のケメニーとカーツの2人の教授が、学生のプログラム教育用として開発した言語です。
 実際は、Biginner's All-Papose Simbolic Instruction Codeの略といわれます。これを、そのまま訳すと「初心者向きの汎目的記号命令コード」となり、まったくよく考えられた名前だと、つくずく感心します。
 しかし、これをこじつけと考える人もいます。
 あなたは、どう思いますか?

 ついでながら、同じ著者らの「BASIC PROGRAMMING」(ベーシック入門:森口監訳、尾崎・神山共訳、共立出版)があります。この書名に関して、訳者らが「BASIC語によるプログラムの作り方」とも「基礎的なプログラミング」ともとれると書いています。
 さらに、訳者らは「両方をひっかけたシャレかもしれない」とさえ言っておられます。この本は1967年に出版されていますが、現在でも内容がすばらしく斬新な感じがします。

 BASIC言語は、当初タイムシェアリングで用いられました。
 その後、パーソナルコンピュータ用としてマイクロソフト社が開発したインタプリタも性能が優れていましたので広く普及しました。
 しかし、ダートマス大のものと現在のマイクロソフト社のものは、言語構造が大分異なっています。仕様が大きくなって、グラフィック機能や通信機能が付加されたのは好ましいことですが、行列演算命令(マトリックス)が、いつの間にかなくなってしまったのは残念です。かなり前のことですが、MAT命令は一部のコンピュータ、たとえばヒューレットパッカード社のものに残っていました。

 BASIC言語は、インタプリタ形式のものがほとんどですが、コンパイラ形式もあります。
 この言語を、プログラムの流れが分かりにくく、実用性に乏しいと考える人がいます。しかし、非常に構造化をしやすい言語です。
 なぜならばネストを構成するために、
     FOR TO STEP ・・・・・・ NEXT
     WHILE ・・・・・・・・・・・・ WEND
などの命令が用意されています。
 これらを、上手に用いればプログラムはすっきりします。
 たとえば、GOTO命令によるジャンプを、極力使用しないようにすればよいと思います。

 [4] C 言 語

 C言語はPASCAL言語と似た記述法の構造化言語です。
 PASCAL言語が教育用に設計され文法が厳密なのに対し、C言語は実用向きに作られ記述も自由度があります。
 しかし、このC言語を高級言語に分類しないで、マクロアセンブリ言語レベルと考える人もいます。C言語は小回りのきく言語で、UNIXマシンの普及とともに利用者が増えました。UNIX自身がこの言語で書かれたので、オペレーティング・システム記述言語ともいわれます。

 C言語の特徴は、
 (1) プログラムはモジュールの集まりで構成される
 (2) 演算子の種類が多い
 (3) 式を2つ以上の等号でつなげる
 (4) 入出力は、すべて関数で行う
 (5) 流れやネストが作りやすい
などです。

 プログラムをモジュールで構成するということは、プログラムの流れに行き先を変える目的だけのジャンプがなく、1まとまりの単位としてモジュールが次々と処理されてゆくことを意味します。このようにすると、あるモジュールからそのモジュール、つまり自分自身にゆくことができます。この機能を再帰的(recursive)といいます。
演算子には、ふつうの四則演算や論理演算のほかに、インクリメント(1を増加)、デクリメント(1を減少)、ビット演算、シフトなどがあって細かい動きのプログラムを記述することが可能です。

 式を等号でつなげるということは、たとえば、
     a = b = c = 0;
と書き、すべての変数をクリアできることです。
 入出力を関数で行うのは、言語仕様自体には入出力の機能をもっていないからです。
 通信の機能などもBASIC言語のようには簡単にゆかず、そのモジュールを組み立ててから行います。

 流れやネストが作りやすいのは、
     if ( ) ・・・・・・ else ・・・・・・;
     for ( ) ・・・・・・;
     do ・・・・・・ while ( );
     while ( ) {・・・・・・};
     switch ・・・・・・ case ・・・・・・ default ・・・・・・;
など記述にスマートな命令があるということです。
 C言語の優れた点は、むしろその設計思想にあります。コンピュータにとって処理が複雑になることは言語仕様に含めずライブラリとして補い、言語プロセッサの負担を軽減しようとしたことです。このような特徴が、流動性の高い言語を形づくっているわけです。

[5] Java言語

 ホームページの作成などで、Javaが利用されるようになりました。
 Javaアプレットとして、小さい単位のプログラムを組んで、HTML文の中に入れて実行をさせることができます。
 なお、JavaスクリプトはJava言語とは直接に関係がありませんが、記述様式が似ているので理解がしやすいようです。
 Javaについては、このホームページの「ホームページの作り方入門」にある「プログラム入門」を参照してください。言語の説明と実際のプログラム例があります。


○通信システムのソフトウェア

 ここでは、通信システムのソフトウェアを特徴づけるプログラムとデータ、そして構造化モジュールとファイルの概念について考えてみましょう。

 プログラムとデータ

 通信システムでは、遠方のデータ端末装置から入力された情報に基づいて、センタのコンピュータ内部で、ただちに何らかの処理をおこないます。そして、その結果を再びデータ端末装置に出力します。
 このようなことが、通信システムの稼働中に随時おこなわれています。
 たとえば、銀行の窓口を考えてください。
 あなたが、普通預金の通帳をもって、現金を引き出しにいったとします。


プログラムとデータ

 まず、あなたの通帳の番号がデータ端末に入れられ、情報はセンタに送られます。センタにある大型コンピュータは補助記憶装置にある預金ファイル内のあなたの預金の残高を調べます。そして、引出し額があなたの残高の範囲内であれば、引出し額を減算して新しい残高を求め、マスターファイルに記入します。
 ただちに、その結果が再びあなたのいる支店の端末に送られ、あなたの通帳に記入されます。同時に、未記帳の項目があれば日付順に記帳されます。あなたは窓口でお金と通帳を受け取り、それで通信は終わったわけです。
 このような一連の処理は、いったいどうして可能なのでしょうか?


預金の引出し

 それは、コンピュータのメモリにあるプログラムによって制御されているからです。他にも沢山のプログラムがあり、必要に応じてメモリに取り出し実行されます。それらのプログラムは使われるときまで、補助記憶装置の中にしまわれています。
 一方、データもこの補助記憶装置に入っています。あなたの口座の記録も、出し入れの都度更新され記憶されます。もしも、あなたが預金することなしに、残高をもう3桁ほど増やしたいと考えましたなら、あなたはコンピュータやデータ通信に興味をもったと同時に、犯罪者の動機もあわせてもったことになります。
 失礼!


ウォー・ゲーム

 あなたは、「ウォー・ゲーム」という映画を見ましたか?
 あらすじは、おおよそつぎのようだったと思います。
 アメリカにコンピュータマニアの高校生がいました。彼は毎日、コンピュータに向かい通信プログラムを作ったり、動かしたりしていました。そんなある日、ふとしたことから宇宙防衛指令部のコンピュータ監視網につなぐキーワードを発見し、自分のパーソナルコンピュータが北米監視網と通信可能になります。
 彼が興味本位で通信網にリンクしているうちに、軍は敵国からの侵略と誤判断をして緊急事態発生の警報を出し、核戦争の始まる一歩手前までゆくというストーリでした。

 日本にも、このようなネットワークがあります。それでは、あなたがキーワードを発見したら、銀行のオンラインや防衛庁の回線などに直接接続できるのでしょうか?
 結論はノーなのです。
 アメリカの場合、官庁のコンピュータや民間企業のコンピュータ、また一般家庭のコンピュータなどは、通信にふつう電話回線を用います。また、一般回線を用いた大がかりなデータ・ベースなどのサービスも普及しています。そして、それらの多くはキーワード(暗証番号)で接続する方式をとっています。

 日本の場合、防衛庁のネットワークや銀行の回線は専用回線ですから、いくらキーワードを試しても絶対につながりません。しかし、その企業内部に悪い人がいて計画的に内部から回線を通じて操作すればどうしようもありません。したがって、立ち入り禁止区域をもうけたり、その他いろいろな工夫をしてデータやプログラムを保護します。
 プログラムやデータを、暗号化してファイルに保存したり、記憶媒体を取り外して金庫に入れたりします。
 このようなことも、内蔵プログラム方式だからできる大きな特徴です。
 プログラムはメモリに読み込まれ、実行されて、はじめてデータに働きかけ演算や処理を行います。メインメモリの中に入れられ実行されるまでは、プログラムもデータと同じ静的な情報でしかないのです。

 構造化とモジュール

 プログラムを構造化することは、非常に大切なことです。
 言語の中には、はじめから構造化を考えて設計されたものがあります。たとえばC言語がそうです。
 構造化言語は、できあがったプログラムが、非常にすっきりしていて分かりやすいという、大きな特徴があります。
 一方、構造化されていない言語はプログラミングの作り方によっては、見通しの悪いものにもなります。たとえば、BASIC言語がそうですが、構造をよほどしっかりしないと、すこし大きなプログラムになりますと、何が何だか分からなくなってしまいます。ちょうど、糸が絡まって、くちゃくちゃになった状態のようなプログラムがあります。

 プログラムを明瞭にするための方法は、それぞれのプログラムをまとまった機能単位とするのがよいと思います。モジュールとは、それ1つで独立できる最小の、論理的なプログラム単位をいいます。このモジュールをいくつも集めて、大きなシステムを構築するようにします。
 よく設計されたプログラムは、無駄がなくすっきりしています。これは、使用言語によって特徴づけられているようにも見えますが、実は使用言語にはあまり関係がなく、むしろプログラム生産のプロセスに原因があります。設計が不十分で製作に入ったモジュールは、構造的に無理や無駄が多くあります。
 モジュールの性能は、設計にかけた時間で決ってくるようです。しっかりと考えたプログラム設計、フローチャートの整理と確定、入出力の確認などがなされていれば、言語自体には依存しないと考えられます。

 ファイル

 ファイルは、ふつう固定ディスク装置やフロッピディスク装置に作られます。
 固定ディスクやフロッピディスクそのものはハードウェアですが、オペレーティング・システムが管理するファイルの概念は、ソフトウェアの範疇に入ります。
 このファイルの考え方は、データ処理にとって非常に重要です。とくにオンラインの通信システムは、そのほとんどがファイルに対するアクセスです。多量のデータを保存し、必要時にすばやく取り出すわけですから、ファイルに対するアクセス方法がいろいろと工夫されます。

 アクセス(access)は近づきという意味で、ディスク面にヘッドが近づいて、ディスクに読み書きすることをいいます。
 COBOL言語では、データを入力した順序でそのまま処理する順編成ファイルの他に、キーによってランダムに取り出すことができる索引順編成ファイルがあります。索引順編成ファイルは、非常に融通性に富んだファイル形式で、作成後シーケンシャルファイルとしても、ランダムアクセスファイルにも使用できます。
 この場合、実際のファイル構造について、利用者があまり知識をもっていなくても、使用時にCOBOL文法を知っていれば効果的に利用できます。

 一方、BASIC言語では、まだファイルに関してのサポートがあまり完全でないように思われます。一応、シーケンシャルファイルとランダムファイルが利用できますが、ランダムアクセスを行うときは、各アイテムの桁の管理や数字項目の格納、さらに読込もうとしたり、書出そうとするときのファイルのセクタ番号の管理なども、プログラマの責任で行うことになります。

 ある人が、あなたに尋ねます。
 「コンピュータのハードウェアとソフトウェアと、どちらが大切ですか?」
 「人間の体と心と、どちらが大切ですか?」
 「最後に、鉄1トンと綿1トンと、どちらが重いですか?」
 この人は、いったい何を考えているのでしょうか?

     呼び出した場所に戻る


 アプリケーション、いろいろあるよ!



人生の持ち時間


 あなたは、ご自分の人生について深く考えたことがありますか?
 またあなたは、あなた自身の一生がおよそ何時間あると思いますか?
 いまあなたの人生を、平均寿命が延びているということで、80年と仮定しましよう。この80年を、時間に換算すると700800時間となります。この時間をどのように使うかは、あなたご自身の問題で、あなたの自由です。
 しかし、もう過ぎ去ってしまった部分については、今から使いなおすというわけにはいきません。
 仮にいま、あなたが20才であるとすると、既にもう人生の4分の1を使い終わったということになります。したがって、あなたの残り時間は525600時間となります。ところで、この残り時間525600時間が、すべてあなたの自由に使えるというわけではありません。なぜならば、あなたが睡眠をしたり休養する時間、その他食事や風呂の時間などがあり、その時間は他のことに専念できません。

 このように考えてゆきますと、あなたの残り時間は、正味でこの3分の2くらいに減ってしまいます。すなわち、350400時間となり、これは14600日に相当します。この時間を、非常に長いものと考えるか、あるいは短いものと考えるかは人それぞれでしょう。
 あなたの場合、いかがなものでしょうか?
 せめて、この残り時間を有効に使っていただきたいと思います。

 このことは、将棋や碁の対局における持ち時間を思い出させます。
 将棋や碁の勝負は、ご存じのように、はじめは一つの手を打つのにも熟考して長時間を費やします。しかし、後になって時間が減ってくると、すさまじい勢いで早打ちになることがあります。早打ちではすまなく、時間切れで勝敗が決ってしまうことさえもあります。
 不思議なことですが、日々充実したときほど、時間はあっという間に過ぎてゆきます。人生も過ぎてみれば、きわめて短い一瞬の時間かもしれません。

 この章では、アプリケーションについて学びましょう。
 まず、アプリケーションのあらましやその技術を、つぎに、通信アプリケーションとして、ハードウェア面から、ローカルエリアネットワークを、ソフトウェア面から付加価値情報網を考えてみます。


○アプリケーションのあらまし

 アプリケーション(application)は、応用という意味です。
 ふつう広義には、通信システムを有効に利用するための応用技術や応用ソフトウェアをいいます。
 しかし、最近ではもっと狭い範囲で、特定のOSに対する応用プログラムのことを言うようになりました。例えば、「WindowsのアプリケーションにはワープロとしてWordがあり、表計算ソフトとしてExcelがある」などといいます。
 ここでは、まず大きな立場からアプリケーションを考え、情報と通信の総合技術として、いくつかのアプリケーションのあらましを考えてみましょう。

 生産と事務

 企業には、製造業やサービス業など、いろいろな形態があります。しかし、そこで行われている活動をよく調べますと、生産活動とそれに付帯する営業や事務処理に大きく分けられます。
 また、とくに物質の生産がなく、サービスや事務処理が中心の企業もあります。
 製造業では、生産性の向上とか品質管理(quality control:QC)などといい、製品が大量に安くできることを常に工夫します。その結果、省力化が進み人間のする仕事が、どんどんと機械に置き代わってゆきます。

 一方、事務部門では事務処理を合理化することにより、人権費の削減を実施します。事務の合理化が始められたのは相当古いことですが、実際には高性能コンピュータによって、はじめて本格的な実現を見ます。
 このような事情を、さらに決定的にしたのは、通信技術の発達でした。
 はじめ、オフラインで処理されたものが、インラインそしてオンラインへと矢継ぎ早に発展し、今日の工場や事務所は今までの様子とまったく違ってしまいました。この傾向は今後とも、ますます速いテンポで続いていくことでしょう。

 通信と制御

 企業の活動には、通信がどうしても必要です。企業内のさまざまな連絡や、社外との取引、さらに広告や宣伝も情報の流れが伴い、一種の通信と考えられます。
 また制御(control)という言葉は、装置や設備を運転するときに指令や信号を与えることですが、広義には企業全体の統制をいう場合もあります。
 この通信と制御は、企業の活動そのものでもありますが、一方単独の小さい生産設備についても必要不可欠な要素です。

 さらに、驚くことに一人の人間自身についてさえも身体の中で、通信と制御が行われているということです。
 あなたは、ノーバート・ウィーナーの『サイバネティックス』のサブタイトルが「動物と機械における制御と通信」となっていることをご存じですか?
 このようなことを考えると通信と制御は、物質を組み合わせて作られた機械にとっても、人間のような高等な生物にも、それぞれの機能を維持してゆくために、必要不可欠な要素であることが分かります。
 さらに通信と制御が、別々でなく必ず互いに関連して動作していることが、理解できます。すなわち、通信と制御は一体の概念を構成していると、考えたほうがよいのかもしれません。


○アプリケーション技術

 通信システムを構成する応用技術として、ファクトリ・オートメイション、オフィス・オートメイション、そしてデータ・ベースなどがあります。

 ファクトリ・オートメイション

 信頼性が高く、性能のよいコンピュータが実用化してから、生産行程の制御技術は速いテンポで進みました。
 そして現在も、通信技術の発展と併行して、工場や倉庫などの自動化が着々と進んでいます。かつて、人手で行われた行程が、完全に自動化して無人化となったり、縮小された部門が多くあります。
 このような自動化や無人化をファクトリ・オートメイション(FA:factory automation)といいます。
 ファクトリ・オートメイションの系統として、ラボラトリオートメイションがあります。これは、ファクトリ・オートメイションより規模が小さく試験や実験などの測定と、その結果の分析を自動化することです。たとえば、有機化合物の分析を数個の分析計を連動して自動的に行ったりします。

 このような各機器のシステム化は、病院などでも見られ、その他の部門でもシステムの統合化が急速に進められています。
 プロセスコントロールは、生産設備そのものを人手を介さずに自動化しようという試みで、ディジタルコンピュータが実用化する以前から、アナログコンピュータで行われていました。
 ファクトリ・オートメイションの発展の経過を観察し、その背景を見てみましょう。

[1] ロギングとテレメータリング

 室温を記録することを考えてください。たとえば、1時間ごとにノートに測定結果を記入する方法があります。
 しかし、この方法は測定を忘れたり記入を誤ったりすることもあり、あまり信頼できません。さらに、測定時間がもっと短く、仮に1分間隔だったらどうでしょうか。
 もしも、この場合人間が温度計の前で記録をつけるならば、付ききりになります。また、その人が休憩するときは、誰か代わりの人がこの仕事を引き受けなければ、作業が途切れてしまいます。このようなことを解決するために、ロギング(logging)が自動的に測定を行う技術として開発されました。
 このロギングをする装置を、データロガー(data logger)といいます。また、測定結果を遠方に届けることが必要なシステムのために、テレメータリングの技術が開発されました。テレメータリング(telemetering)は、遠隔制御、つまり通信による制御のはじまりです。

[2] プロセスコントロール

 プロセス(process)は、行程という意味ですが、工場そのものを指す大きな意味もあります。
 プロセスコントロールの歴史は非常に古く、ワットの蒸気機関発明までも、さかのぼって考えられます。しかし、その後電気が使用されてから、プロセスコントロールは急速に発展しました。はじめ、電力による制御から実現し、次第に発展して電子制御へ、そしてアナログコンピュータによる制御を経て、ディジタルコンピュータへと大きく進歩しました。
 アナログコンピュータは、比例(proportion)動作、積分(integral)動作、微分(differential)動作などを行う回路のことで、各動作を組み合わせて装置や機械の制御を実現しました。
 それぞれの頭文字をとり、この機能をPID動作といいます。

 アナログコンピュータによる制御方式から、ディジタルコンピュータによる方式に移行するまでには、長い期間がありました。しかし、経済的で性能の優れたコンピュータは、アナログ制御をディジタルコンピュータによる時分割方式(DDC:Direct Digital Contorol)にすっかり変えました。
 ファクトリ・オートメイションのシステム構成を見ますと、その入出力装置に大きな特徴があります。すなわち、プロセスに直結した入力として検出端を、出力として操作端をもっていることです。もちろん、コンピュータですからキーボードやプリンタなどもついています。
 検出端は、センサーともいいプロセスの物理量、たとえば温度や圧力などを計測します。ここで得た値は、ふつうアナログ量ですから、コンバータで変換してディジタル値の状態でコンピュータに入力されます。

 また、コンピュータで演算や処理をした結果の出力は、ディジタル値のまま操作端に与えられ、その値の大きさによって直結した機器の動作を行います。この出力したディジタル値をアナログ量に変換して、実際の動作をさせる場合もあります。
 このように、FAシステムでは、入出力装置やデータ端末装置と同じ位置に、検出端や操作端があり、コンピュータにオンラインで接続されていることが、大きな特徴です。

 あなたは、昔の工場の中がどんな状態であったかご存じでしょうか?
 『女工哀史』(細井和喜蔵)や『蟹工船』(小林多喜二)の時代はいざ知らず、私は今から20数年前に製紙工場で働いたことがあります。ちょうど電車3台分ぐらいの大きさの生産機械に、おっかない親方(職長といいました)とともに4人くらいの作業員がつきます。その機械の運転をするわけですが、生産は連続行程ですから平常は問題ありません。
 しかし、運転開始時のときや、一旦オシャカ(不良製品)が出始めるともうそこは、てんやわんやの戦争状態でした。現在では、全部コンピュータによってコントロールされ、もっと大きな装置でもヘルメットをかぶった監視員が2人いるだけです。
 やはり、追われるような忙しさ、さらには戦争状態から技術が発展するのでしょうか。
 オーソン・ウェルズの作品に「メジチ家の暴政は文化・科学を生み、スイスの平和は鳩時計しか生まない」というようなのがありました。

 オフィス・オートメイション

 オフィス・オートメイション(office automation)は単にOAともいい、いわゆる事務所の自動化です。
 事務処理の合理化が言われてから、だいぶ久しくなります。しかし、コンピュータを利用した本格的なOAは、高性能パーソナルコンピュータと、ローカルエリアネットワークの出現によって、はじめて実現が可能になりました。
 オフィスコンピュータの漢字処理が本格化したことや、高性能化・低価格化により、分散処理が経済的に実現できるようになったことも、さらにOAを一層発展させた原動力といえます。

[1] 事務量の増加

 オフィスにおける事務量の増加は、OAの発展をうながしました。
 OAの目的は、
 (1) 事務に関する費用を削減する
 (2) オフィス内の資料を活用する
 (3) 情報化に対応できる高度な経営体質にする
などが中心です。

 事務費用の中で、とくに大きいのは人権費です。したがって費用の削減というと、ただ人数を減らすことが目的のように思いがちです。しかし、OAの実際の目的は単純作業をコンピュータに代行させ、人間のおこなう仕事の質を高めることなのです。
 また一方、企業内外のデータ量が増加すると、資料の活用についても、なかなか思うようにはゆきません。データ・ベースは、これに着目して開発された技術です。さらに、高度な経営体質と一口に言っても、事務システムは互いに関連していますので、総合的な解決を計ってゆかなければならないでしょう。

[2] システムの統合

 OAを構成する機器には、いったいどのようなもがあるでしょうか。
 ちょっと考えるだけでも、
 (1) コンピュータ
 (2) ワードプロセッサ
 (3) ファクシミリ
などがあり、それぞれ通信回線に接続されます。

 ふつう、企業内で一つのローカルエリアネットワークを構成します。そして、これらのOA機器はその統合したシステムの中で、効果的に利用され企業を支えます。
 オフィス内の端末装置は、今後それ自身がパソコンに置き変わっていく動向にあります。端末装置にコンピュータを含むものをインテリジェント端末といいますが、事務所の中にインテリジェント端末機や、コンピュータを置いたデータステーションが作られてゆきます。

 現在、すでにローカルエリアネットワークを完備し、高度なデータ通信システムを導入した多くの企業があります。今後、ローカルエリアネットワークは電話と同じくらいに各企業に普及するものと考えられます。
 ローカルエリアネットワークを構成する機器の第一は、コンピュータです。最近では、1台3役のコンピュータがあります。この多目的パーソナルコンピュータによって、オフィスは一層充実しました。3つの機能とは、
 (1) 本来のコンピュータの機能
 (2) 日本語ワードプロセッサの機能
 (3) 通信端末としての機能
です。

 通信が可能ですから、センタにある大型コンピュータの通信端末として使用できます。また、パーソナルコンピュータどうしで互いに通信することも可能です。通信端末とする場合をターミナルモード、互いに通信する場合をコミュニケーションモードといいます。
 オフィス・オートメイションは、通信技術によって支えられています。
 今後、オフィスの様子はさらに変わってゆくことでしょう。

 データ・ベース

 データ・ベース(data base)とは、汎用性のあるファイルシステムです。つまり、特定業務のために作られているのではなく、整理統合した共通性のある密度の高い情報ファイルをいいます。
 この情報ファイルを、利用者にサービスする組織がデータバンクです。いちばん大きなデータバンクは、やはり政府になりますが、ここでは民間の企業で利用する小規模なデータ・ベースについて考えます。

[1] データ・ベースの利用

 企業内の情報量を、一つひとつ数え上げると膨大な量になります。従来の業務単位ファイルという考え方では、データ処理に行き詰まりを生じ、やがて身動きが取れなくなってしまいます。また、データを企業内の各部署に分散すると、内容が互いに重複し、大きな無駄が生じます。そこで、データを共用にして無駄を省くことを検討します。
 ここから、データ・ベースの構想が出てきます。
 データは、それ自体企業の資産であり価値があります。したがって、利用については細心の注意を払う必要があります。このような理由で従来は、それぞれの部署単位でデータを管理したのです。

 情報機器が進歩して、機密事項の保持が確実になると、企業内でもデータ・ベースが広く利用され始めました。一方、文献情報や統計データなどのサービスを、国や団体がおこなうようになりますと、利用者は企業から個人のレベルにまで広がってゆきます。
 データ・ベースは、蓄積された情報の種類によって、
 (1) 文献情報
 (2) 数値情報
 (3) 画像情報
などがあります。

[2] ファイルの構造

 データ・ベースは蓄積・整理されたファイル情報を、いかに利用するかが問題です。
 ファイル(file)は、レコードを数多く集めたものです。1件のレコード(record)は、それぞれが基本的なデータとなる、アイテム(item:項目)をいくつか集めたものです。
 ふつう、このアイテムで、レコードを検索します。
 今ここで、電話帳を考えてください。たとえば、この1冊の分厚い電話帳が、ちょうどデータ・ベースのファイルに相当します。そして、1人の記録、すなわち1行分の記述がレコードにあたります。
 レコード内のアイテムは、氏名と住所と電話番号です。もしも、電話番号が分からないときは、氏名で調べます。したがって、検索しやすいように氏名が五十音順に並べてあります。

 反面、氏名以外の検索をおこなうときは、めんどうな作業になります。
 たとえば、あなたが0423-73-1135の番号が誰か忘れてしまった場合、電話帳では効果的な検索ができません。仕方がないのでその場合、最初から1人ずつ番号を確かめてゆきます。
 もっとも、ダイアルして本人に「あなたは誰ですか」と聞いてしまう方法もありますが‥‥‥
 電話帳は、最初から氏名で電話番号を検索することを想定したファイルなのです。したがって、別の目的のためには、別のファイルを用意しなければなりません。たとえば、職業別電話帳がそうです。

 データ・ベースは、ファイルを共通化してシステム全体を無駄のないように設計したものです。
 そして、データ・ベースは、あるアイテムが特定の条件を満足するときだけ抽出したり、また逆に条件が成立しないものだけを拾い出したり、その他さまざまな検索が効果的に行えます。つまり、データ・ベースファイルは検索しやすいように作られていることが特徴です。データ・ベースの機能として、
 (1) 検 索
 (2) 更 新
 (3) 追 加
 (4) 削 除
などがあります。

 また、データ・ベースのファイル構造は、
 (1) 単純データ構造
 (2) 木型(tree)データ構造
 (3) ネットワーク型構造
などがあります。

 単純データ構造は、レコード内のアイテムが検索に使用されます。検索時にアイテム間の関係は一切なく、各アイテムどうしが並行して、位置付けられています。
 木型データ構造は、アイテムが階層構造になっています。したがって、条件を次第にしぼっていくときなどに好都合です。
 ネットワーク型構造は、アイテム間どうしで自由に関連付けができます。
 データ・ベースは、自社でファイル設計をおこない、プログラム総てを作成することもできます。しかし、ふつう通信システムのアプリケーションとして運営されている、データバンク会社のサービスを申し込んだり、ソフトウェアハウスが作成したアプリケーションパッケージを購入して利用したりします。


○通信アプリケーション

 通信アプリケーションとして、ここでは
(1) ローカルエリアネットワークのしくみ
(2) 付加価値通信網とは?
(3) インターネットのしくみ
などを考えてみましょう。そして、インターネットで利用される
(4) ホームページのしくみ
についても理解しておきたいと思います。

 ローカルエリアネットワークのしくみ

 ローカルエリアネットワーク(LAN:local area network)は、ある限られた地域の通信網です。OAやデータ通信サービスとして、最近利用が急速に伸びています。ローカルエリアネットワークのねらいは、
(1) 資源の共用
(2) 負荷の分散
(3) 業務の自動化
などです。
 いずれも、オフィス・オートメイションと同様な目的となっています。

 オフィス・オートメイションは作業という観点で情報と通信を考えましたが、ローカルエリアネットワークは、それらを実現する手段という面から情報通信を見ています。このネットワークは、通信システムの基本モジュールといえますから、将来各ローカルエリアネットワーク間で、互いに情報を交換するシステムになっていくことでしょう。
 すなわち、全体の通信システムの中に、区域ごとにまとまったサブシステムがあり、その数レベル下の基本システムとしてローカルエリアネットワークが位置付けられるのではないでしょうか。
 現在、さまざまな形態のローカルエリアネットワークがあります。その地域や企業ごとに、最も効率のよいシステムを構築しようとする結果、どうしても千差万別の形態になります。
 ここでは、基本的なハードウエア構成例をパターンに分類してみましょう。

[1] ループ型LAN

 ネットワークがループ状になっていて、コンピュータや入出力装置、補助記憶装置、データ端末装置などが各所に接続されます。
 いずれか1台のコンピュータが、ネットワーク全体の通信制御をおこない、そのコンピュータをループコントローラといいます。大規模なネットワークを構築することが可能で、高速通信が実現します。しかし反面、ループのいずれかに故障が発生すると、全体の機能がダウンしてしまいます。
 ループに接続されたコンピュータのすべてが、通信制御を行うようにしたものを、リング型LANといいます。

[2] バス型LAN

 バス(母線)型の通信回線に、コンピュータや各装置を連ねた構造をしています。コンピュータの内部構造を、そのまま通信システムに置き換えたような形式です。それぞれのコンピュータが、互いに通信制御を行うので1つのコンピュータに故障が発生しても他の機能は持続します。
 装置の交換や追加・削除は簡単に行えますが、遠距離の伝送はできません。

[3] スター型LAN

 中央にメインコンピュータがあり他の装置が放射状に接続している通信システムです。コンピュータが業務システムとして用いられ始めたころ、サテライト(satellite)システムといわれたものと同じです。
 サテライトという言葉は、今日では衛星という意味に用いられますが、そのころは、まだ人工衛星も上がっていませんでしたので、従者を意味したのではないかと思います。
 ハイアラーキ(hierarchy:階級制度)とかマスター(master:主人)とか、スレーブ(slave:奴隷)などという、アナクロニズム(anachronism:時代遅れ)な言葉が、コンピュータ用語にずいぶんと多かったようです。

 付加価値通信網とは?

 付加価値通信網(VAN:value added network)は、通信回線を使用してサービスを提供することです。
 ローカルエリアネットワークはハードウェア的な、つまり物理的な意味合いの濃い言葉でした。付加価値情報網は、むしろ応用面から通信システムを見たソフトウェア的な言葉です。
 付加価値とは、簡単にいえば価値をつけることです。何に価値を付けるかといいますと、それは通信回線なのです。データ通信回線の設備を所有する事業者を、第一種電気通信事業者といいます。NTTやKDDなどがこれにあたります。

 第一種電気通信事業者から、通信回線を借りて通信サービスをおこなうものが第二種電気通信事業者です。すなわち、二種事業者は一種事業者から借りた通信回線を用い、通信サービスをおこないます。
 このサービスは、原則としてデータ処理を伴うこととなっています。したがって、二種事業者は、高度な通信処理システムを開発して、受信者に通信サービスをします。付加価値の内容はさまざまですが、
(1) 通信の多様性の実現
(2) 通信の互換性の実現
などがあります。

 通信の多様性を考慮したサービスには、メールボックスやプログラムライブラリがあります。これらは情報を相手に届けたり、プログラムを蓄積しておいて、ユーザが必要なときに取り出せるようにしたサービスです。
 また、高度なデータ・ベースを広範にサービスするものもあります。
 通信の互換性は異なるシステム間のプロトコル変換、メディア変換、コード変換などのサービスをします。
 1985年の通信の自由化以来、付加価値通信網事業に進出する企業は急速に増加してきました。そして、大規模なものや、特定地域に密着したものなどさまざまです。

 インターネットのしくみ

 インターネットは、通信技術の高度化や高性能パソコンの普及とともに、急速に実用化をしたシステムです。しかし、このインターネットも大きな意味でとらえて、通信アプリケーションの一つという位置づけで理解をするのがわかりやすいでしょう。
 ここでは、実際にインターネットを利用するときに知っていなければならない基本的なことがらについて、考えてみましょう。

[1] 通信とインターネット

 ダートマス大学から始まったネットワークシステムは、世界中のネットワークやコンピュータを互いにつないだ大規模なものになりました。インターネットに接続をすると、世界中のコンピュータと通信ができるようになるからです。
 政府機関や大学、研究所、民間企業などの利用のほかに、多くのプロバイダが参入したことによって、そしてプロバイダを利用することによって、個人でも簡単な方法でインターネットに接続できるようになりました。
 プロバイダは、「インターネット サービス プロバイダ」の略で、個人ユーザがインターネットを利用するときに接続を実現してくれる事業者です。つまり、プロバイダを経由することによって、家庭にある個人のパソコンも世界中のパソコンと接続できるようになるのです。

[2] インターネットで何ができるか?

 インターネットシステムは、急速に進化をしました。そして、いろいろなことが実現していますが、今のところ代表的なサービスとしては、「電子メールの送受信」と「ホームページの閲覧」でしょう。
 電子メールは、インターネットを利用して特定の相手とにメッセージをやりとりするシステムです。このメッセージには、文字情報のほかに図形や音(音声や音楽)などの送受信も簡単な方法でできるから、とても便利です。手紙などの郵便を身近に実現したシステムと言ってもよいでしょう。

 ホームページWebページとも言って、インターネットに接続されたコンピュータの情報を表示するサービスです。むろん、文字情報のほかに図形や動画、音楽などが実現できるので、豊かな表現が可能になります。
 また、リンク(ハイパーリンク)をすることによって、ホームページ上の他の場所にすばやく移動をしたり、さらに他のホームページに切り替えたりすることもできます。

 ホームページを利用することによって、パソコンで商品を購入したり、オークション(競売)に参加をしたり、さらには株の売買などを自宅ですることが可能になりました。
 また、趣味の会や質疑応答のグループなど、個人間の利用もますます盛んなようです。

[3] インターネットに接続をするには?

 個人がインターネットに接続するときは、プロバイダと契約をするのがふつうです。なぜならば、個人が直接にインターネット接続をするためには、技術的にいろいろと面倒な問題があるからです。
 プロバイダ経由のインターネット利用契約をすると、インターネットに接続をするためのアカウント(接続情報)がプロバイダから得られます。
 アカウントには、ユーザーIDパスワードなどの情報が含まれていて、それらを用いてインターネットに手順を経て、接続ができるようになっています。これらの情報は、忘れないように注意をしてください。

 インターネットに接続をする方法は、現在のところ
(1) 電話回線とアナログモデムを利用したナローバンド
(2) ADSLやCATV、光ファイバー回線などを利用したブロードバンド
があります。
 ADSLは、アナログ電話回線を用いて、同時にデジタルデータを伝送する方式です。利用するときにはインターネットとパソコンの間に、ふつうADSLモデムが必要です。
 CATVは、ケーブルテレビ用の同軸ケーブルを利用してインターネットに接続をするサービスで、ふつうケーブルテレビ局がプロバイダになっています。

 いずれもインターネット回線とパソコンの間に、信号の変換器が必要になります。モデムやADSLモデム、ターミナルアダプタなどです。回線の種類によって名称が異なるので注意をしてください。また、パソコン本体に標準的なモデムを内蔵しているものがふつうになったようです。
 なお、インターネットを開始しても、電話やケーブルテレビはそのまま従来どおり利用ができます。

 ホームページのしくみ

 ホームページは、多くの情報を含んでいるために複数のページという単位から構成されています。
 最初に表示されるページをトップページといい、そこから呼ばれるページをサブページといいます。つまり、1つのトップページと複数のサブページからホームページが構成されることが多いのです。
 トップページやサブページには、ふつう文字と画像の情報が含まれています。また、ときには音楽なども含まれていることがあるでしょう。このようなページの文字情報は「HTMLファイル」に、画像や音楽は別のファイルに保存されているのです。
 つまり、ページは「1つのHTMLファイル」と「複数の画像や音楽のファイル」から構成されます。ただし、画像や音楽のないページの場合は、HTMLファイルだけになります。

 ここでいうHTMLファイルは、HTML形式の言語で書かれた一種のプログラムだと言えます。当然のことながら、そのプログラムはホームページをインターネットの画面上で表示する目的のものです。
 このHTML言語の記述が、かなり細かい作業になるので、直接にHTML言語の記述をしないでホームページを作成するツールがあります。例えば、IBM社の「ホームページビルダー」などです。
 ホームページを作成するツールを利用すると、HTML言語を熟知していなくても簡単な作業でホームページができます。また、細かい指定をする箇所だけをHTML言語で記述するということも可能ですから、かなり柔軟性のある利用方法が実現するでしょう。

     呼び出した場所に戻る


 おわりに


 現代では、宇宙空間への進出や集積回路の利用など、過去には空想や理論でしかなく、実現が到底不可能と考えられたことが、高度な技術に支えられて、次々と現実になっています。おそらく、このテンポはさらに加速度的に速くなり、近い将来にも夢のようなことが、いろいろと実現可能となるでしょう。
 タイムマシンやタイムトンネルなどという装置がありますが、もしかしたらそのようなことも可能になるかもしれません。
 以前に読んだ、ウェルズの『タイムマシン』という科学小説には、80万年の時間を隔てた遥かな未来の様子が、詳細に述べられていました。しかし、そこには、その肝心なタイムマシンという名の装置自体の構造や作り方について、残念ながら、まったく触れられていません。
 童話の世界でも、あなたがよくご存知の『浦島太郎』の話や、アーヴィングの『リップヴァンウインクル』などがあります。これらは、何かのはずみで、一瞬のうちに時間系がずれてしまったケースと考えられます。

 今日のように、科学が発達しても時間・間の移行は、まだ不可能です。
 あなたは、光年(9兆4670億Km)という単位を実感として理解できますか?
 また、あなたは夜空に見る星の中に、現在輝いているのではなく、何万年も過去にその星を出た光が、今あなたの目に届いているという事実を、いったいどう思いますか?
 突飛かもしれませんが、このようなことを考えていると、今後いつしか過去や未来への通信が可能となるような気もします。
 スエーデンボルイという偉大な科学者は、死後の世界に行ったといいますが、おそらくそれは数十年の時間・間の通信を行い、自分自身の未来へ行ったのではないでしょうか?

 このページでは、「パソコン」を比較的新しい分野のエンジニアリングである「データ通信」の一部分として、一つのまとまった体系としてとらえました。そして、情報と通信に関しての基本的な考え方が、一通り身につくように、分かりやすい表現を工夫してあります。
 したがって、あなたは「パソコン」を活用するための「データ通信」の基本的な考え方を、既にご理解したことになります。なぜここで「基本的な考え方」などと、わざわざお断わりするのかということを記しておきましょう。
 「パソコン」や「データ通信」に関連する技術の進歩・発展は、非常にテンポ(速度)が速く、現在最先端の技術であってもいつの間にか古くなり、やがて別の新しい方式に置き変わってしまいます。

 このような厳しい現実の中で、いたずらに細かいことを沢山詰め込むよりも、今後の技術革新にも耐えられる基本的な考え方を、しっかりと身につけていただくことをねらいとしました。
 すなわち、考えることの基本となる知識の取得が、大きな目的なのです。
 また、その意味でこのページでは、一つのことがらを理解するのに譬(たとえ)や比喩によった場合がかなりあります。そのほうが初心者にも、批判をしたり、意見をもったりして、直感的に分かりやすいと考えたからです。
 しかし、たとえによる表現は、あいまい性が伴ない厳密さが失われてしまうことも、お断りしておかねばなりません。

 以上のような基本姿勢で、「データ通信」を「パソコン」を含む一つの体系として、一通りの内容を盛り込みました。通信システムの中心を占めるコンピュータも、単なる1つのツール(tool:道具)にすぎませんから、その基本的な情報の取扱い方法を十分に理解して、通信の構成要素としての機能が分かれば、利用する立場からの知識としては、それで十分でしょう。
 それでも、このページがこのように出来上がって見直してみますと、なにかまだ言いたりなかったような気がすることも事実です。また、先輩学者が書かれたものを拝見するたびに、このページが単に「洛陽の紙価を低からしめた?」のではないかと心配もしています。

 しかし、そのような気がかりがある一方、このページもデータ通信の基礎を、それなりにカバーしつくしたと、ひそかに確信もしています。内容がやさしすぎて物足りなかった方や、さらに高度な知識を望まれる方は、このページを踏台にして、より専門的な別の資料などに進んで下さい。
 繰り返しますが、今日のような技術革新の速い時代に、エンジニアは絶えず新しい知識や方式を追求して、常にそれらをマスターし続けてゆかなければ、やがて時代に取り残されてしまうでしょう。
 反面、いたずらに個々の知識を断片的に理解して、自分自身にプールしても、それらを確実に応用して、使いこなすための基本的な考え方をもたなければ、何にもならないことも明白です。

 このような事情から、今後とも続く激しい技術の進歩発展に、あなたが十分耐えてゆけるよう、このページでは、「何がどうなっている」という書き方をできるだけ避けて「何をどう考えるか」というようにして、具体的なテーマをあなたに提起したつもりです。そのために、思い切った書き方をして少々唐突であったり、あえて表現方法を代えてみたり、不自然にした箇所もずいぶんあります。
 また、あなたに「読む」という注意力を維持していただくために、いろいろ工夫して思い出したように「サブルチン」または「プロムナード」とでもいうか、本題から横道にそれたり、あるいは散歩をしたりする息抜きの箇所をもうけました。気分転換をはかるためです。
 そして、このページが「あなたのデータ通信の基礎」から「あなたの考える基礎」となることを、こころから望んでいます。

 だから、急速に発達をしたデータ通信の技術が、わたくしたちの人生に豊かな「考える基礎」を与えてくれるでしょう。
 しかし、その反面では大きな危険性もあるようです。それは、わたくしたちの性格や習慣が、つまり長い間に引き継いできた遺伝子が、その技術の急速な進歩にマッチできるかどうかという問題です。さらに、その技術やコンピュータを正しく使いこなすことができるかが、非常に心配なのです。
 そのようなことは、単に私一人の杞憂なのでしょうか。そして、それは「天が地に落ちてくるほどの確立」の問題なのでしょうか?

 ここのところ、「自殺の相手」や「泥棒の仲間」をインターネットで探して、問題や事件になっているテレビニュースが、頻繁にあるようです。それを、まったく残念に思うのは、私だけでしょうか?
 互いに顔や身体を見ないで、言葉だけで多数の人と急速に近づけるのも問題なのでしょう。お互いに相手の背景や過去の経験、さらには道徳観などを知らないと、意見が異なって気まずくなることがあります。また、インターネットなどの通信は、非常に多くの不特定多数の人と同時に関係をすることができます。それも、心配の一つです。考えてみれば私の場合、妻一人さえ自分の考えているようにならなかったのですから、多くの人の中で気持ちよく過ごすほうが、至難の業ではないかとさえ思うのです。

 先の戦争が負けたことによって、戦勝国の指導に始まった科学技術は大いに発展をしました。そして、今日に至ったのです。しかし、敗戦によって自信を失った世代は、その次代に礼儀や道徳、そして考え方までをなぜか教えませんでした。ふつう、そのようなことは国の文化として、営々と引き継がれていくのですが、……
 そして「その次代」の世代になったのです。つまり、日本の社会には今までになかったような価値観の変化が、徐々にではあるが進んでいるのです。
 他の敗戦国では、「国民の幸福よりも個人の利益を優先」したり、「敵国に武器を輸出」したり、まったく考えられない非常識なことをした例があります。そのようなことを考えると、わたしたちの国は、しっかりしているので幸福です。

 このページも、もうじき終わりです。
 あなたは、わたくしたちの人生において、何が最も大切だとお考えですか?
 それは、一口に言うと、「考える」ということにつきると、私は思います。「考える」ということは、ただ単に考えるのではなく、フィードバックして考えることです。すなわち反復し、反省し、さらに考え直して工夫を続けるということです。
 今から2400年も昔、中国で編集された『論語』に、孔子の言葉として、
  「折角学んでも、よく考えなければ物事は、はっきりしない。
  反対に、考えてばかりいても学ばなければ、独断に陥って危険である」
と記述されています。

 また一方、わが国の江戸時代の学者佐藤一斎は『言志四録』に、
  「知識をもっていても実行しないのは、瞑想(考えにふけること)であり、
  知識をもたずに実行するのは、妄動(軽はずみにうごくこと)である」
といっています。

 コンピュータメーカで、社是(会社のモットー)に、
  「Think,think,think」
と3回も繰り返しているところがあります。これは、
  「考えなさい。さらに深く考えなさい。そしてもう一度考えなさい」
という意味のことです。
 したがってこの会社では、よくよく考えて結論を出していることと思います。当然のことですが、この会社が作る製品は、きっとすばらしいものになることでしょう。

 あなたも、繰り返し読むことによって、考える基礎力を十分につけ、それをベースにして「正確に早く考える」ことができるようになったら、もう本物のエンジニアといってもよいでしょう。
 日常わたくしたちは、あまり深く考えずに物事をおこない、後でそれが軽率であったと気付いたり、その失敗を後悔することがよくあります。あなたは、常に「……してから考える」のでなく、「考えたから……する」というシーケンス(順序)を忘れないようにしてください。
 最後に、あなたのご健康を、そしてエンジニアとしてご発展されることを、こころから祈ってやみません。

     呼び出した場所に戻る

Kuroda Kouta (2004.05.20/2015.06.11)