Anda di halaman 1dari 432

インプレス情報処理試験シリーズ 購入者限定特典 !!

●電子版の無料ダウンロード
本書の全文の電子版( PDF ファイル )を無料でダウンロードいただけます。
電子版は、以下の URL からダウンロードいただけます。
ダウンロード URL:h t t p: / / bo o k . im pre s s . c o . j p/ bo o k s / 1 1 1 5 1 0 1 0 1 7
※画面の指示に従って操作してください。
※ダウンロードには、無料の読者会員システム「 CLUB Impress 」への登録が必要となります。

●スマホで学べる単語帳アプリ「でる語句 200」のダウンロード
基本情報技術者試験で出題頻度の高い 200 の語句をいつでもどこでも暗記できる単語帳アプ
リ「でる語句 200」を無料でダウンロードいただけます。
手順については、416 ページを参照ください。

※本特典のご利用は、書籍をご購入いただいた方に限ります。
※ダウンロード期間は、いずれも本書発売より 1 年間です。

本書は、基本情報技術者の受験用教材です。著者、株式会社インプレスは、本書の使用による基本
情報技術者への合格を保証致しません。

本書の内容については正確な記述につとめましたが、著者、株式会社インプレスは本書の内容に基
づくいかなる試験の結果にも一切責任を負いかねますので、あらかじめご了承ください。

本書に掲載している試験問題は、独立行政法人 情報処理推進機構の情報処理技術者試験センターが
公開している情報を基に作成しています。

本書に掲載している会社名や製品名、サービス名は、各社の商標または登録商標です。本文中に、
TM および ® は明記していません。

インプレスの書籍ホームページ
書籍の新刊や正誤表など最新情報を随時更新しております。

h tt p : //b ook.impress.co.jp/
まえがき
基本情報技術者試験はなぜ難しい?
基本情報技術者試験は、難しい試験です。毎年、春と秋の 2 回実施されて
いますが、合格者は受験者数の 4 人に 1 人程度。試験の対象となる範囲が
とても広いこと、出題される用語自体がそもそも難解で、わかりにくいと
いうことが、この試験に苦戦する理由です。本書は、こうした理由を踏ま
えた上で、勉強や仕事の合間に受験勉強に取り組む忙しい方が、短時間で
かんたんに合格できるようにと作られています。

かんたん合格のために、わかる言葉で解説
コンピュータやシステムにそれほど強くない方にもわかりやすいよう、難
しい用語をふだん使うやさしい言葉で解説しました。また、
難しい漢字や、
読み方のわかりにくいアルファベットの略語などには、すべて読みがなを
振ってあります。

取り上げる項目を厳選し、最小の努力で合格
短時間の勉強で合格ラインに到達できるように、徹底的に項目を厳選しま
した。過去 10 回分の試験問題を分析し、出題頻度の高いものに絞ってあ
ります。試験に出題されないと思われる項目や用語はいっさい取り上げて
いません。

この本を十分に活用していただき、あなたが基本情報技術者試験に合格さ
れることを願っています。

2015 年 10 月
五十嵐 順子
もくじ

基本情報技術者攻略ガイド・・・・・・・・・・・・・・・・・ 010
本書の使い方 ・・・・・・・・・・・・・・・・・・・・・・・・・・・ 014

第1 章 ハードウェア
1-1 ハードウェア ・・・・・・・・・・・・・・・・・・・・・・ 018
1-2 CPU ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 022
1-3 CPU の高速化技術 ・・・・・・・・・・・・・・・・・・ 029
1-4 主記憶とキャッシュメモリ ・・・・・・・・・・・・ 032
1-5 補助記憶 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 040
1-6 入出力装置 ・・・・・・・・・・・・・・・・・・・・・・・・ 047
1-7 入出力インタフェース ・・・・・・・・・・・・・・・ 052

第2章 ソフトウェア
2-1 ソフトウェアとOS ・・・・・・・・・・・・・・・・・・ 058
2-2 タスク管理 ・・・・・・・・・・・・・・・・・・・・・・・・ 062
2-3 記憶管理 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 068
2-4 ファイル管理 ・・・・・・・・・・・・・・・・・・・・・・ 076
第3章 コンピュータで扱うデータ
3-1 2 進数 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 082
3-2 負数の表現 ・・・・・・・・・・・・・・・・・・・・・・・・ 090
3-3 シフト演算 ・・・・・・・・・・・・・・・・・・・・・・・・ 094
3-4 小数の表現 ・・・・・・・・・・・・・・・・・・・・・・・・ 098
3-5 誤差 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 102
3-6 論理演算と論理回路 ・・・・・・・・・・・・・・・・・ 105
3-7 半加算器と全加算器 ・・・・・・・・・・・・・・・・・ 111
3-8 文字データの表現 ・・・・・・・・・・・・・・・・・・・ 116
3-9 マルチメディア ・・・・・・・・・・・・・・・・・・・・・ 120

第4章 アルゴリズムとデータ構造
4-1 アルゴリズム ・・・・・・・・・・・・・・・・・・・・・・ 124
4-2 配列 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 129
4-3 キューとスタック ・・・・・・・・・・・・・・・・・・・ 132
4-4 リスト構造 ・・・・・・・・・・・・・・・・・・・・・・・・ 135
4-5 木構造 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 138
4-6 探索アルゴリズム ・・・・・・・・・・・・・・・・・・・ 144
4-7 整列アルゴリズム ・・・・・・・・・・・・・・・・・・・ 152
4-8 再帰アルゴリズム ・・・・・・・・・・・・・・・・・・・ 162
4-9 アルゴリズムの実行時間 ・・・・・・・・・・・・・・ 165
第5章 システム開発
5-1 システム開発の概要 ・・・・・・・・・・・・・・・・・ 170
5-2 システム開発手法 ・・・・・・・・・・・・・・・・・・・ 174
5-3 業務のモデル化 ・・・・・・・・・・・・・・・・・・・・・ 177
5-4 ソフトウェア要件定義(外部設計) ・・・・・・ 181
5-5 ソフトウェア詳細設計 ・・・・・・・・・・・・・・・ 184
5-6 プログラミング ・・・・・・・・・・・・・・・・・・・・・ 187
5-7 オブジェクト指向 ・・・・・・・・・・・・・・・・・・・ 194
5-8 システムのテスト ・・・・・・・・・・・・・・・・・・・ 201
5-9 レビュー手法 ・・・・・・・・・・・・・・・・・・・・・・ 208

第6章 コンピュータシステム
6-1 システムの処理形態 ・・・・・・・・・・・・・・・・・ 212
6-2 クライアントサーバシステム ・・・・・・・・・・ 214
6-3 高信頼化システムの構成 ・・・・・・・・・・・・・・ 219
6-4 システムの信頼性設計 ・・・・・・・・・・・・・・・ 225
6-5 システムの性能評価 ・・・・・・・・・・・・・・・・・ 230
6-6 信頼性の基準と指標 ・・・・・・・・・・・・・・・・・ 233
第7章 ネットワーク
7-1 通信プロトコル ・・・・・・・・・・・・・・・・・・・・・ 240
7-2 インターネット ・・・・・・・・・・・・・・・・・・・・・ 243
7-3 Web ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 248
7-4 IP アドレス ・・・・・・・・・・・・・・・・・・・・・・・・ 253
7-5 クラスとサブネット ・・・・・・・・・・・・・・・・・ 260
7-6 LAN ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 265
7-7 LAN 間接続装置 ・・・・・・・・・・・・・・・・・・・・ 267
7-8 WAN ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 271
7-9 ネットワークの伝送速度 ・・・・・・・・・・・・・・ 275
7-10 誤り制御 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 277

第8章 データベース
8-1 データベースの基礎 ・・・・・・・・・・・・・・・・・ 284
8-2 関係データベース ・・・・・・・・・・・・・・・・・・・ 287
8-3 データの正規化 ・・・・・・・・・・・・・・・・・・・・・ 292
8-4 SQL の基本 ・・・・・・・・・・・・・・・・・・・・・・・・ 298
8-5 SQL の応用 ・・・・・・・・・・・・・・・・・・・・・・・・ 303
8-6 データベース管理システム ・・・・・・・・・・・・ 310
8-7 データベースの応用技術 ・・・・・・・・・・・・・・ 318
第9章 セキュリティ
9-1 情報セキュリティ ・・・・・・・・・・・・・・・・・・・ 322
9-2 コンピュータウイルス ・・・・・・・・・・・・・・・ 330
9-3 暗号化と認証 ・・・・・・・・・・・・・・・・・・・・・・ 334
9-4 ネットワークセキュリティ ・・・・・・・・・・・・ 340

第10 章 マネジメント
10-1 プロジェクトマネジメント ・・・・・・・・・・・・ 348
10-2 サービスマネジメント ・・・・・・・・・・・・・・・ 355
10-3 システム監査 ・・・・・・・・・・・・・・・・・・・・・・ 359
第11 章 情報化と経営
11-1 企業活動 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 364
11-2 経営戦略 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 369
11-3 データ分析ツール ・・・・・・・・・・・・・・・・・・・ 378
11-4 システム戦略 ・・・・・・・・・・・・・・・・・・・・・・ 385
11-5 効率的な IT 投資 ・・・・・・・・・・・・・・・・・・・・ 392
11-6 企業会計 ・・・・・・・・・・・・・・・・・・・・・・・・・・ 396
11-7 法律と権利 ・・・・・・・・・・・・・・・・・・・・・・・・ 402
11-8 ソフトウェアの利用形態 ・・・・・・・・・・・・・・ 410
11-9 標準化 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 413

「でる語句 200」の使い方 ・・・・・・・・・・・・・・・・・・ 416


さくいん・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 418
基本情報技術者攻略ガイド
試験の概要
●基本情報技術者とは
基本情報技術者は、国家試験である情報処理技術者試験の 1 つで、
「情報処理技術
者( ベンダ側/ユーザ側)」が対象になります。
「高度 IT 人材となるために必要な基
本的知識と技能、実践的な活用能力」が問われる試験です。

IT を利活用する者 情報処理技術者(ベンダ側/ユーザ側)
IT ストラテジスト試験

システムアーキテクト試験

プロジェクトマネージャ試験

ネットワークスペシャリスト試験

データベーススペシャリスト試験

IT サービスマネ ージャ試験

システム監査技術者試験
情報セキュリティスペシャリスト試験
ITの安全な利活用を

エンベデッドシステムスペシャリスト試験
推進する者
基本的知識・技能
推進するための
ITの安全な利活用を

マネジメント試験
情報セキュリティ

高度な
知識・技能

全ての社会人
ITパスポート試験
共通的基礎知識
ITを利活用するための

応用的
知識・技能
応用情報技術者試験

基本的
知識・技能
基本情報技術者試験

※平成 28 年度より、新しく「情報セキュリティマネジメント試験」が追加されます。

●試験日程
年 2 回(4 月・10 月)実施されます。

●試験情報
基本情報技術者は、午前試験と午後試験に分かれています。午前試験は、用語の意
味や比較的簡単な計算など、基本的な内容が問われます。午後試験は、午前試験の
知識を基に応用的な内容が問われます。

試験時間 問題数 問題形式 出題形式

9:30〜12:00 四肢択一式
午前問題 80 問 小問形式
(2 時間 30 分) (マークシート )

13:00〜15:30 13 問中 7 問解答 多肢択一式


午後問題 長文形式
(2 時間 30 分) (選択問題) (マークシート )

010
●出題範囲
基本情報技術者では、テクノロジ系、マネジメント系、ストラテジ系の 3 分野から
問題が出題されます。

分野 問われる内容

テクノロジ系 基礎理論、コンピュータシステム、技術要素、開発技術

マネジメント系 プロジェクトマネジメント、サービスマネジメント

ストラテジ系 企業と法務、経営戦略、システム戦略

午前試験は、各分野から右記の構成で 分野 出題数
問題が出題されます。 テクノロジ系 50 問

マネジメント系 10 問

ストラテジ系 20 問

午後試験は、各分野を細分化した、以下の構成で問題が出題されます。

問題番号 分野 出題数

問1 情報セキュリティ 1 問。必須問題

問 2〜7 ハードウェア、ソフトウェア、デー 6 問。そのうち、4 問を選択して解答


タベース、ネットワーク、ソフトウェ (※左記の 9 分野のうち、どの分野か
ア設計、プロジェクトマネジメント、 ら出題されるかは決まっていない)
サービスマネジメント、システム戦
略、経営戦略・企業と法務

問8 データ構造及びアルゴリズム 1 問。必須問題

問 9〜13 ソフトウェア開発( C言語、COBOL、 5 問。そのうち、1 問を選択して解答


Java、アセンブラ、表計算) (※左記の 4 言語と表計算から、それ
ぞれ 1 問ずつ出題)

※平成 26 年度春期試験より、セキュリティ分野の問題が必須問題になりました。

●合格ライン
基本情報技術者に合格するには、午前試験、午後試験の両方で 60%以上を得点す
る必要があります。どちらか一方でも合格ラインに満たない場合は不合格となりま
すので、注意してください。

011
勉強方法
●午前試験の対策

基本情報技術者は出題範囲がとても広く、隅から隅まで覚えるのはとても大変で
す。本書では、試験でよく出題される内容を「ココが出る!」
にまとめていますので、
そこを重点的に押さえるようにしましょう。

また、出題される内容には、“単純に暗記すれば解ける内容”と“仕組みを理解して
いないと解けない内容”があり、「 ココが出る!」ではそれらを分けて掲載していま
す。試験に受かるためには何を覚えるべきなのかをきちんと把握した上で、効率的
に学習するようにしましょう。

平成 26 年度春期試験より、テクノロジ系におけるセキュリティ分野の出題比率が
高くなりました。本書の第 9 章「 セキュリティ」の内容は特にしっかりと確認して
おいてください。

●午後試験の対策

午前問題で問われる内容をもとに応用的な内容が出題されますが、問題文がかなり
長いので、知識のほかに「読解力」も必要となります。
「読解力」を身に付けるには、
ある程度の慣れが必要になりますので、過去問題を繰返し解いておくことをおすす
めします。過去問題は、試験センターの公式ホームページなどに掲載されています。

なお、本書では開発言語や表計算については触れていませんので、過去問題、また
は別の参考書などで学習しておいてください。

●過去問題を解いておく

情報処理技術者試験では、過去に出題された問題と同じ問題が多く出題されます。
特に午前問題はその傾向が強いため、過去問題をたくさん解いておくことが有効で
す。たくさんの問題に触れておけば、それだけ本番で「見たことのある問題」に出
会う可能性が高くなります。

012
当日の対策
●時間配分を考える

午前試験は 150 分で 80 問、午後問題は同じく 150 分で、7 問を解答します。単


純に計算すると、午前問題は 1 問につき 2 分弱、午後問題は 1 問につき 20 分ほど
で解かなければなりません。分からない問題につまずいていると時間が足りなくな
ってしまうため、分かる問題からどんどん解いていくようにしましょう。ただし、
問題を飛ばすときは解答欄を間違えないよう注意してください。

●マークシートはすべて埋める

マークシートによる解答のため、分からなくても最終的にはすべての解答欄を埋め
ておきましょう。運が良ければ正解するかもしれません。

試験の申込み
●申し込み方法
個人での申込みは、インターネットか郵便局の窓口を利用する方法から選べます。
インターネットで申し込む場合は、クレジットカード決済、コンビニ決済、ペイジ
ー決済のいずれかの方法で受験料を支払うことができます。郵便局にて申し込む場
合は、受験願書付きの案内書を入手し、願書に必要事項を記入の上、受験料ととも
に郵便局に提出します。
●受験料・・・・5,100 円
●問合せ先
情報処理技術者試験センター  http://www.jitec.ipa.go.jp/
〒 113-8663 東京都文京区本駒込 2-28-8
        文京グリーンコートセンターオフィス 15 階
電話:03-5978-7600(代表)

013
本書 の 使い 方
本書では、IT にあまりなじみのない人でも理解

本書の構成 できるよう、身近なところから順番に学習できる
構成にしています。
また、解説ページでは、よく出題される内容がひと目で分かるように
なっています。基本情報技術者は出題範囲がとても広いため、出題さ
れるポイントを把握して効率良く学習しましょう。

★★★
テーマの重要度(頻出度)を ★ ★ ★

3 段階で掲載。
時間がないときは★の数が
多いテーマを重点的に学習
4 主記憶とキャッシュメモリ

しよう。
●キャッシュメモリ
主記憶として使われる DRAM は、補助記憶よりも読み書き速度は速いですが、
CPU に比べるとまだまだ遅いので、その差を埋めるために、CPU と主記憶の間に
高速なSRAMを介在させます。これをキャッシュメモリといいます。よく使うデー
タはキャッシュメモリに保存しておき、キャッシュメモリと CPU でやりとりする
ようにすれば、コンピュータ全体の動作が遅くなります。

<これも知っとこ>
本文と関連のある内容を掲 これも ディスクキャッシュ

知っと
載。関連のあることは一緒 ハードディスクと主記憶の間に配置して、アクセス時間の差を
補い、処理を高速化するための装置をディスクキャッシュとい
に覚えよう。
います。

●メモリインタリーブ
主記憶を複数のバンクと呼ばれる領域に分けて、連続するアドレスを割り振り、
同時並行でアクセスできるようにする高速化技術をメモリインタリーブといいま
す。分割されているバンクは転送準備や転送処理を独立して行うことができるので
他バンクが転送処理を行っている間に次の転送準備を行うことが可能なため、実効
アクセス時間を短縮します。

028

014
<ココが出る!>
試験によく出題される内容を掲載。
用 語:用語の意味が問われる内容。
“ 暗記中心”で学習しよう。
スキル:応用的なことが問われる内容。“仕組みを理解”して学習しよう。

1-4 主記憶とキャッシュメモリ

ココが


出る! 用語
1

章 ●
[ キャッシュメモリ ]:CPU と主記憶の間に置いて処理を高速
化するメモリ
ハードウェア

[ メモリインタリーブ ]
:主記憶を複数のバンクに分割して高
速化する技術
スキル
<試験を知ろう>
→ヒット率とキャッシュアクセス時間を使って、実効アクセス 試験情報を掲載。
時間を計算できるようにしておこう。 試験をよく知ることで、合
格力を身に付けよう。

最近の試験の傾向として、ハードウェアの小型化に関する技術用
語が出題されています。

基本情報技術者試験 平成 20 年秋 <試験にチャレンジ>
主記憶装置の高速化の技法として、主記憶を幾つかのアクセス単位に分割し、
過去問題を掲載。
各アクセス単位をできるだけ並行動作させることによって、実効アクセス時
間を短縮する方法を何というか。 実際の試験ではどう問われ
ア:仮想記憶           イ:キャッシュメモリ方式 るかをイメージしておこう。
ウ:ダイレクトメモリアクセス   エ:メモリインタリーブ


メモリインタリーブは、主記憶を複数のバンクと呼ばれる区画に
解説
分割し、各バンクを並列に動作することによって高速化する方法
です。                            解答:エ

029

※このページはサンプルです。

015
ハードウェア
★ ★
1
1 ハードウェア

●コンピュータとは
パソコンや、ゲーム機、携帯電話など、今では当たり前のように使われているほ
とんどの電化製品に、コンピュータが使われています。
では、そもそもコンピュータとは何でしょうか?
コンピュータは、大量の計算や複雑なデータ処理など、さまざまな仕事を私たち
人間に代わって行ってくれる機械です。コンピュータによって、私たちの作業は楽
になり、効率的に仕事をこなせるようになりました。

●ハードウェアとソフトウェア
コンピュータを構成する要素には、大きく分けてハードウェアとソフトウェアが
あります。コンピュータが動作するためには、その両方が必要です。
ハードウェアはディスプレイやキーボードなど物理的なものです。ソフトウェア
は、コンピュータの内部で動作するプログラムです。

〈ハードウェアとソフトウェア 〉

内部で動作する
プログラム 物理的な構成要素

ソフトウェア ハードウェア

●ハードウェアの種類
まずは、ハードウェアから説明します。
コンピュータには、入力装置、記憶装置、制御装置、演算装置、出力装置の 5 つ
のハードウェアが必要です。

018
1-1 ハードウェア

第 章 ●
〈ハードウェアの種類〉

装置 役割 例 1
入力装置 コンピュータ本体に 〈キーボード 〉 〈マウス 〉
接続してデータやプ

ハードウェア
ログラムを入力する

記憶装置 入力されたデータや 〈メモリ 〉


プログラムを保存し
て お く。 コ ン ピ ュ ー
タ本体の内部にある
ことが多い 〈ハードディスク 〉

制御装置 記憶装置からプログ
ラムの命令を取り出
し て 解 釈 し、 ほ か の
ハードウェアを制御
する
シーピーユー
〈 CPU 〉

演算装置 プログラムの命令に
従 っ て、 記 憶 装 置 か
ら取り出したデータ
に対して演算をする

出力装置 コンピュータ本体内 〈ディスプレイ 〉


で演算されたデータ
を、 人 に 見 え る よ う
に表示、印刷する

〈プリンタ 〉

5 つの装置の間を、データがどのように流れるかを図にすると、次ページのよう
になります。

019
出力

出力
〈データの流れ〉 出力
制御
1+1=2
制御
1+1=2 制御
出力 1+1=2 演算
2だよ。 ③ ② 1+1は?
演算
演算
記憶
④ 制御2だよ。 ③ ② 1+1は?
1+1=2 2だよ。 ③ ② 1+1は?
記憶
④ 記憶
①1+1は? ④ データの流れ
演算
入力
2だよ。 ③ ②①1+1は?
1+1は? 制御 データの流れ
①1+1は? データの流れ
入力 記憶 制御
④入力 制御

①1+1は? データの流れ
●コンピュータの動作原理
入力 制御
現在のコンピュータは、米国の数学者ノイマンが提唱したもので、次の特徴があ
ります。

●プログラム格納方式
あらかじめプログラムを主記憶に格納しておき、CPU が順に読み出しながら
実行する方式。プログラムをハードウェアから独立させたことで、プログラム
を変えれば実行する処理も変えることができます。プログラム内蔵方式、プロ
グラム記憶方式ともいいます。

ココが
出る! 用語
[ プログラム格納方式]:プログラムを主記憶に格納、CPU が
順に読出し実行

020
1-1 ハードウェア

第 章 ●
基本情報技術者試験 平成 26 年 春

主記憶に記憶されたプログラムを、CPU が順に読み出しながら実行する方 1
式はどれか。
ア:制御方式

ハードウェア
イ:アドレス指定方式
ウ:仮想記憶方式
エ:プログラム格納方式

 
プログラムを主記憶に格納しておき、順に読み出して実行する方式
解説
はプログラム格納方式です。 解答:エ

021
★ ★
1
2 CPU

● CPU の役割
続いて、ハードウェアの 5 つの装置について、細かく見ていきます。
計算を行う演算装置と、他の装置を動かす制御装置を 1 つに合わせたものを
シーピーユー セ ン ト ラ ル プ ロ セ シ ン グ ユニット
C PU( Central Processing Unit )、またはプロセッサといいます。CPU は、コ
ンピュータの頭脳にあたる重要な部分で、膨大な数のプログラムの命令を処理する
役割を担っています。CPU 内部には、レジスタと呼ばれる小容量で高速アクセス
可能な記憶装置があり、命令やデータなどを一時的に格納し、高速処理を実現して
います。

● CPU の命令実行サイクル
CPU は、膨大な数の命令を 1 つずつ処理しています。記憶装置に読み込まれた
プログラムから命令を 1 つずつ順番に取り出して解読し、必要なデータの格納場所
を調べて読み出し、実行するという一連の手順を命令ごとに繰り返しています。こ
の一連の流れを命令実行サイクルといいます。
CPU の命令実行サイクルは、次の5段階のステージで表されます。
命令を実行するには、命令のほかに処理対象となるデータが必要な場合もありま
す。例えば「1 + 2」のような加算処理を行う場合には、
「加算する」という命令だけ
でなく「1」や「2」といったデータが必要になります。そのため、命令は、命令部と
アドレス部から構成され、アドレス部には処理対象となるデータの格納場所が指定
されています。この処理対象となるデータをオペランドといい、オペランドの保存
場所を計算することを実効アドレス計算といいます。

022
1-2 CPU

第 章 ●
〈命令実行サイクル(5 段階)〉
主記憶 CPU 1

レジスタ

ハードウェア


命令部 アドレス部
①命令フェッチ
命令 ③実効アドレス計算

制御装置
??
オペランド
④オペランド 命令解読器
読出し
②命令の解読
オペランド
演算装置
オペランド
ALU
結果データ 結果データ
⑤命令の実行

①命令フェッチ
(Fetch) …………………………………命令を主記憶から取り出し、CPUの命令レジスタに取り込む
②命令の解読(Decode) …………………………………命令コードを解読する(デコード)
(Address Calculation)…命令対象となるオペランドの格納場所を計算して求める
③実効アドレス計算
④オペランド読出し(Read) ……………………………主記憶の実効アドレスにアクセスし、オペランドを読み出す

⑤命令の実行
(Execution) ……………………………命令を実行し、必要に応じて結果データを主記憶に書き込む

ココが
スキル
出る!
→命令が実行される段階と各サイクルの名前を覚えておこう。

●アドレス指定方式
主記憶にプログラムが読み込まれるとき、多くの場合、空いている番地が使われ
ます。そのため、対象データの保存場所を示すアドレス部も、プログラムの特性に
応じて計算して求められるように指定します。このアドレス部の指定方法をアドレ
ス指定方式といいます。
代表的なアドレス指定方式は、次の通りです。

023
●即値アドレス指定方式
アドレス部に、そのまま対象データの値が指定された方式です。
命令部 アドレス部

命令 100
命令部 アドレス部

命令
●直接アドレス指定方式 100
命令部 アドレス部 主記憶
アドレス部に、対象データが格納されたアドレスが指定されている方式です。
命令 20
命令部 アドレス部 主記憶
20番地 100
命令 20

20番地 100

●間接アドレス指定方式
アドレス部の値が指定するアドレス番地に、対象のデータの格納アドレスが記
憶されている方式です。

命令部 アドレス部 主記憶

命令 命令部 アドレス部
20 主記憶

命令 20 20番地 23

20番地 23

23番地 100

23番地 100

●指標アドレス指定方式
アドレス部に、指標レジスタ番号とアドレス定数を指定する部分があります。
指標レジスタ番号の示す先にある値を、アドレス定数の値に加えた値が、対象
データが格納されたアドレスとなる方式です。
命令部 レジスタ番号 アドレス定数 主記憶

命令 命令部 レジスタ番号
2 アドレス定数
100 主記憶

命令 2 100
レジスタ番号

レジスタ番号
0
1
0
2
1 50 150番地 100
3
2 50 150番地 100
3

024
1-2 CPU

第 章 ●
ココが
スキル
出る! 1
→対象データへのアクセス方法の違いから、どのアドレス指定
方式が使われているかを理解しておこう。

ハードウェア
● CPU の性能を表す指標
たくさんの仕事を速くこなせる人が優秀と言われるように、仕事が速い CPU を
もつコンピュータは性能がよいということができます。CPU の性能を評価するた
シーピーアイ ミップス
めの指標値には、クロック周波数、C PI、MIPS などがあります。

●クロック周波数
CPU の内部には演算装置や制御装置など、いろいろな装置が入っています。
そこで各装置の足並みを揃えるために、クロックと呼ばれる信号に合わせて仕
事をこなします。クロックは仕事のペースを表すので、同じ時間で比べると、
より多くのクロックを刻む CPU の方が仕事が速いといえます。1 秒間に刻む
ヘルツ
クロック数のことをクロック周波数といい、単位は Hz を使います。

〈クロック周波数〉

2Hz の場合 1000Hz の場合

仕事 1 仕事 2

仕事 1 仕事 3 仕事 4

仕事 5 仕事 6

仕事 2 … 1000!

● CPI
サイクルズ パ ー インストラクションズ
1 命令あたりの実行に必要なクロック数を CPI( Cycles Per Instructions )
といいます。同じ命令で比べた場合、より短いクロック数で実行できる CPU
の方が性能が高いといえます。

● MIPS
ミ リ オ ン インストラクションズ パ ー セ カ ン ド
1 秒間に実行できる命令数を MIPS( Million Instructions Per Second )と
いいます。命令数が大きくなるため百万単位で表します。同じ時間で比べた場
合、より多くの命令を実行する CPU の方が性能が高いといえます。

025
ココが
用語
出る!
[クロック周波数]:CPU が 1 秒間に刻むクロックの数
スキル
→ CPU の命令数や実行時間など必要な数値を使って、クロッ
ク周波数、CPI、MIPS などの指標値を計算できるようにして
おこう。

●コンピュータの数字の単位
クロック周波数の数値が大きいほど、CPU の性能がよいといえますが、最近の
CPU は 3,500,000,000Hz くらいが主流です。一方、1 命令あたりの実行時間
が 0.00000002 秒くらいと、非常に高速です。
このように、コンピュータの世界では非常に大きな数字や小さな数字がよく出て
きます。単位は「兆」
「億」
「万」という読み方を使わず、コンピュータの世界独自の
単位で表現するのが一般的です。

〈大きい数字の単位〉

単位 読み方 繰り上がり 数 指数表記

k キロ 1,000 103

M メガ 1M = 1,000k 1,000,000(100 万) 106

G ギガ 1G = 1,000M 1,000,000,000(10 億) 109

T テラ 1T = 1,000G 1,000,000,000,000(1 兆) 1012

〈小さい数字の単位〉

単位 読み方 繰り上がり 数 指数表記

m ミリ 0.001(千分の 1) 10 - 3

µ マイクロ 1 0.000001(100 万分の 1) 10 - 6


1 μ= ———— m
1000

n ナノ 1 0.000000001(10 億分の 1) 10 - 9
1n = ———— μ
1000

p ピコ 1 0.000000000001
(1兆分の1) 10 - 12
1p = ———— n
1000

コ ン ピ ュ ー タ の 世 界 の 単 位 を 使 用 す る と、 先 ほ ど の CPU の 処 理 速 度
3,500,000,000Hz は「3.5GHz 」と表記されます。

026
1-2 CPU

第 章 ●
1
問題文にギガやテラ、ナノといった単位が出てくるので、計算す
るときには正しく変換できるようにしておこう。

ハードウェア
基本情報技術者試験 平成 20 年春

主記憶へのアクセスを伴う演算命令を実行するとき、命令解読とオペランド
読出しの間に行われる動作はどれか。
ア:実効アドレス計算   
イ:入出力装置起動
ウ:分岐アドレス計算   
エ:割込み発生

 
CPU は命令解読後、演算対象となるオペランドを読出すために、
解説
実効アドレスを計算します。 解答:ア

基本情報技術者試験 平成 27 年春

主記憶のデータを図のように参照するアドレス指定方式はどれか。

命令部 アドレス部 主記憶


アドレス
20
・・・

20 25
・・・

25 データ
・・・

ア:間接アドレス指定   
イ:指標アドレス指定
ウ:相対アドレス指定   
エ:直接アドレス指定

027
間接アドレス指定方式は、アドレス部の値が指定するアドレスに、
解説
処理対象のデータの格納アドレスが記憶されている方式です。
解答:ア

基本情報技術者試験  平成 22 年秋

平均命令実行時間が 20 ナノ秒のコンピュータがある。このコンピュータの
性能は何 MIPS か。
ア:5  
イ:10  
ウ:20  
エ:50

 
平均命令実行時間が 20 ナノ秒のコンピュータが1秒あたりに実行
解説
する命令数は、
1(秒)
÷(20 ×10 -9(
)秒)
=0.05×10 9(命令数)。
MIPSは100万単位で命令を表すので、0.05×109 ÷106 =50
( MIPS )
               解答:エ

028
1-3 CPU の高速化技術
★ ★ ★
1
3

第 章 ●
CPU の高速化技術 1

ハードウェア
●並列処理による高速化
命令実行サイクル単位で、主記憶にある命令を 1 つずつ順番に実行する処理の方
ちくじ
法を、逐次制御方式といいます。1 つの命令が終わるまで、次の命令は実行されま
せん。

1命令単位
命令 1 F D A R E

命令 2 F D A R E

時間

そのため、ある装置が処理を実行している間、その前後の処理を担当する装置に
待ち状態が発生してしまいます。例えば、命令フェッチのステージでは制御装置は
使われますが、演算装置は待ち状態です。そこで、すべての装置が常に稼働状態に
あるように、命令の実行中に次の命令を開始することで処理の効率化を図り、高速
化する技術が使われます。代表的な高速化の方式には次の 3 つがあります。

●パイプライン処理
命令実行サイクルを各段階( ステージ単位)ごとに分け、独立させて実行し、
流れ作業的に、命令 1 のサイクルが終わる前に、次の命令 2 のサイクルの処理
を始める方式をパイプライン処理といいます。これにより、次々に命令を処理
することができ、全体の実行時間を短縮させることができます。

命令 1 F D A R E

命令 2 F D A R E

時間
各ステージ単位

●スーパパイプライン
パイプライン処理の各ステージをさらに細かく分割し、並行して実行すること

029
で、動作を高速化する方式をスーパパイプラインといいます。

命令 1 F1 F2 D1 D2 A1 A2 R1 R2 E1 E2

命令 2 F1 F2 D1 D2 A1 A2 R1 R2 E1 E2

時間
1ステージをさらに細分化

●スーパスカラ
複数のパイプライン処理を行う回路を設けることで、同時に複数の命令を処理
し、高速化する方式をスーパスカラといいます。

複数のパイプライン
命令 1 F D A R E

命令 2 F D A R E

命令 3 F D A R E

命令 4 F D A R E

時間

ココが
出る! 用語
[パイプライン処理]:命令をステージに分割し、ずらしながら
同時に実行
[ スーパパイプライン ]
:命令の各ステージをさらに細分化し
て、ずらしながら同時に実行
[ スーパスカラ ]:複数のパイプラインを使って、同時に複数
の命令を実行

● CPU の内部構造
CPU の内部構造がどのように設計されているかによって、高速化の実現方法は
異なります。CPU の設計方法には主に RISC と CISC の2つがあり、次のような特
徴をもっています。

030
1-3 CPU の高速化技術

リ ス ク リ デ ュ ー ス ド インストラクション セット コ ン ピ ュ ー タ
● RISC( Reduced Instruction Set Computer )

第 章 ●
RISC は、内部の構造を単純にした CPU です。構造を単純にすることで扱う 1
命令を単純にすることができ、命令の種類を少なくできます。複雑な命令は基
本的な命令の組合せによって実行します。ほとんどの命令実行時間が同じにな

ハードウェア
るので、パイプライン処理を実行すると、処理速度がかなり上がります。

シ ス ク コ ン プ レ ッ ク ス インストラクション セット コ ン ピ ュ ー タ
● CISC( Complex Instruction Set Computer )
CISC は、複雑な命令を内部で実行できるよう設計された CPU です。種類も
豊富なため、多種多様な演算をすることが可能ですが、命令ごとの実行時間が
異なり、パイプライン処理を実行しても、処理速度はあまり上がりません。

これも マルチコアプロセッサ

知っと マルチコアプロセッサは、1 つのパッケージに CPU の中核部
分(命令発行器や演算器など)であるコアを複数搭載した CPU
です。そのため、消費電力を抑えながら、プロセッサ全体の処
理機能を高めることができます。

基本情報技術者試験 平成 22 年秋

パイプライン制御の特徴はどれか。
ア:複数の命令を同時に実行するために、コンパイラが目的プログラムを生
成する段階で、それぞれの命令がどの演算器を使うかをあらかじめ割り
振る。
イ:命令が実行される段階で、どの演算器を使うかを動的に決めながら、複
数の命令を同時に実行する。
ウ:命令の処理をプロセッサ内で複数のステージに細分化し、複数の命令を
並列に実行する。
エ:命令を更に細かなマイクロ命令の組合せで実行する。

 
パイプライン制御では、命令の処理を細分化し、複数の命令を並列
解説
に実行します。                     解答:ウ

031
★ ★ ★
1
4 主記憶とキャッシュメモリ

しゅきおく ほじょきおく
●主記憶と補助記憶
しゅきおく
コンピュータで使うデータを記憶しておく記憶装置には、
メインとなる主記憶と、
ほじょきおく
主記憶を補助する補助記憶があります。主記憶はメインメモリ、またはメモリと呼
ぶこともあります。
主記憶は、直接 CPU とデータのやりとりができる高速な記憶装置です。ただし、
高価な部品でもあるため、たくさん使用することができません。そこで、比較的安
い補助記憶も一緒に使用することによってたくさんのデータを保存できるようにし
ています。

〈主記憶と補助記憶〉

速い 遅い
CPU 主記憶 補助記憶
データ データ

ラ ム ロ ム
●主記憶の種類は RAM と ROM
ラム ラ ン ダ ム ア ク セ ス メ モ リ ロム リ ー ド オンリー メ モ リ
主記憶には、RAM
(Random Access Memory)
とROM(Read Only Memory )
の 2 種類があります。どちらも半導体でできているので半導体メモリと呼ばれま
す。RAM はコンピュータの電源を切ったときに保存していたデータが消えてしま
きはつせい ふきはつせい
う揮発性メモリ、ROM はデータが消えない不揮発性メモリであるという違いがあ
ります。

〈 RAM と ROM 〉

電源を切ると
RAM 揮発性
データが消える

半導体メモリ

ROM データが消えない 不揮発性

032
1-4 主記憶とキャッシュメモリ
ディーラム エ ス ラ ム
● DRAM と SRAM

第 章 ●
ディーラム エスラム
RAM はさらに、DRAM と SRAM に分けられます。それぞれの特徴は次のとお 1
りです。

〈 DRAM と SRAM の違い〉

ハードウェア
種類 回路 価格 速度 容量 リフレッシュ 用途

DRAM コンデンサ 安い 低速 多い 必要 主記憶

SRAM フリップフロップ 高い 高速 少ない 不要 キャッシュメモリ

 
 
これも リフレッシュ

知っと リフレッシュとは、DRAM のデータが失われないように電荷
を補充することです。DRAM は、コンデンサに電荷を蓄える
ことでデータを保持していますが、放っておくと一定時間で放
電してデータが消えてしまいます。これを防ぐため、定期的に
リフレッシュを行う必要があります。

ココが
出る! 用語
[ DRAM ]:コンデンサで構成、安価、リフレッシュが必要、
主記憶で用いられる
[ SRAM ]
:フリップフロップで構成、高価、キャッシュメモ
リで用いられる

●キャッシュメモリ
主記憶として使われる DRAM は、補助記憶よりも読み書き速度は速いですが、
CPU に比べるとまだまだ遅いので、その差を埋めるために、CPU と主記憶の間に
高速な SRAM を介在させます。これをキャッシュメモリといいます。
CPU がデータを読み込むとき、キャッシュメモリにない場合は、主記憶から該
当データを転送し、キャッシュメモリに読み込みます。

033
〈キャッシュメモリ 〉

速い

CPU キャッシュメモリ 主記憶

遅い

これも
こ 1次キャッシュメモリと 2 次キャッシュメモリ
知っと
キャッシュメモリを複数使うことで、より高速化が図られます。
CPUがアクセスする順番に、1次キャッシュメモリ、2次キャッ
シュメモリといいます。

〈1次キャッシュメモリと 2 次キャッシュメモリ 〉



1次キャッシュ 2次キャッシュ
CPU 主記憶
メモリ メモリ

●実効アクセス時間
キャッシュメモリを使った場合の平均的なデータへのアクセス時間を実効アクセ
ス時間といいます。目的のデータは、主記憶かキャッシュメモリのいずれかに保存
されているため、それぞれのアクセス時間に、データが保存されている確率を乗じ

ることによって求めることができます。

目的のデータがキャッシュメモリに保存されている確率をヒット率といい、以下
CPU 1次キャッシュ 2次キャッシュ 主記憶装置
の式で実効アクセス時間を求めることができます。
メモリ メモリ


 《計算式:実効アクセス時間》

 実効アクセス時間=キャッシュメモリのアクセス時間×ヒット率
          +主記憶のアクセス時間×(1 -ヒット率)

034
1-4 主記憶とキャッシュメモリ

第 章 ●
ヒット率
1
CPU キャッシュメモリ 主記憶

ハードウェア
1−ヒット率

●主記憶への書込み
CPU がキャッシュメモリを使って主記憶にデータを書き込む方法には、次の 2
つの方式があります。

●ライトスルー方式
ライトスルー方式は、データを書き込むときに、キャッシュメモリと主記憶の
両方に同時に同じ内容を書き込みます。書込みは高速化できませんが、読出し
は速くなります。

〈ライトスルー方式〉

書込み 同時に
CPU キャッシュメモリ 主記憶
書込み

書込み 書込み
CPU キャッシュメモリ 主記憶
●ライトバック方式
ライトバック方式は、通常はキャッシュメモリにだけ書き込み、キャッシュメ
データがキャッシュメモリから追い出されるときに書込み

モリがあふれて上書きされるデータが発生した際に、そのデータを追い出し、
主記憶に書き込んで更新内容を反映します。データの書込みは高速化できます
書込み 同時に
が、読出しに時間がかかることがあります。
CPU キャッシュメモリ 主記憶
〈ライトバック方式〉 書込み

書込み 書込み
CPU キャッシュメモリ 主記憶

データがキャッシュメモリから追い出されるときに書込み

035
これも ディスクキャッシュ

知っと ハードディスクと主記憶の間に配置して、アクセス時間の差を
補い、処理を高速化するための装置をディスクキャッシュとい
います。

●メモリインタリーブ
主記憶を複数のバンクと呼ばれる領域に分けて、連続するアドレスを割り振り、
同時並行でアクセスできるようにする高速化技術をメモリインタリーブといいま
す。

連続アドレス領域に同時並行アクセス

CPU

アドレス  
0 1 2 3

主記憶
4 5 6 7

バンク0 バンク1 バンク2 バンク3

ココが
出る! 用語
[ キャッシュメモリ ]:CPU と主記憶の間に置いて処理を高速
化するメモリ
[ライトスルー]:キャッシュメモリと主記憶の両方に同時に書
き込む
[ ライトバック ]:キャッシュメモリにだけ書き込み、キャッ
命令 1 F Dシュメモリから当該データが追い出されるときに主記憶へ書き
A R E
込む 命令 2 F D A R E
[ メモリインタリーブ ]
:主記憶を複数のバンクに分割して高
時間
速化する技術

036
1-4 主記憶とキャッシュメモリ

第 章 ●
ココが
スキル
出る! 1
→ヒット率とキャッシュアクセス時間を使って、実効アクセス
時間を計算できるようにしておこう。

ハードウェア
● ROM の種類
ROM には、最初からデータが書き込まれていて内容が変更できないマスク
ロム ピーロム
ROM と、あとからデータを書き加えたり、消したりできる PROM があります。
PROM には、一度だけデータを書き込めるものや、何度でも書き込めるものがあ
ります。それぞれの特徴は次のとおりです。

〈 ROM の種類〉

種類 書込み 消去 特徴

マスクROM × × 製造時に書き込んだあとは、データの書込みも消去もでき
ない。出荷後の、プログラムの不正な書換えを防ぐ
イーピーロム
EPROM ○ ○ 紫外線を使ってデータを消去できる
イーイーピーロム
EEPROM ○ ○ 電圧をかけてデータを消去できる。フラッシュメモリは
EEPROM の一種

これまで出てきたメモリの種類をまとめてみました。どこが違うのか、注意しな
がら特徴を覚えておきましょう。

〈メモリの種類〉

DRAM 主記憶、コンデンサに電荷
RAM
SRAM キャッシュメモリ、フリップフロップ回路
揮発性

半導体メモリ
読出しのみ

マスクROM
ROM EPROM 紫外線で消去可能
PROM
不揮発性
EEPROM 電圧をかけて消去可能
書込み可能

フラッシュメモリ

037
ココが
出る! 用語
[マスク ROM ]:製造時に書込み、ユーザは読出しのみ
[ EPROM ]:紫外線でデータ消去
[ EEPROM ]:電圧をかけてデータ消去

基本情報技術者試験 平成 25 年秋

DRAM の説明として、適切なものはどれか。
ア:1 バイト単位でデータの消去及び書込みが可能な不揮発性のメモリであ
り、電源遮断時もデータ保持が必要な用途に用いられる。
イ:不揮発性のメモリで NAND 型又は NOR 型があり、SSD に用いられる。
ウ: メモリセルはフリップフロップで構成され、キャッシュメモリに用いら
れる。
エ:リフレッシュ動作が必要なメモリであり、PC の主記憶として用いられ
る。

 
アは EEPROM、イはフラッシュメモリ、ウは SRAM の説明です。
解説
解答:エ

038
1-4 主記憶とキャッシュメモリ

第 章 ●
基本情報技術者試験 平成 23 年秋

A~D を、主記憶の実効アクセス時間が短い順に並べたものはどれか。 1

キャッシュメモリ 主記憶

ハードウェア
有無 アクセス時間(ナノ秒) ヒット率(%) アクセス時間(ナノ秒)

A なし - - 15

B なし - - 30

C あり 20 60 70

D あり 10 90 80

ア:A、B、C、D  
イ:A、D、B、C  
ウ:C、D、A、B  
エ:D、C、A、B

実効アクセス時間は、キャッシュメモリのアクセス時間×ヒット率
解説
+主記憶のアクセス時間×
(1−ヒット率)で求めることができます。
A:15  
B:30  
C:20 × 0.6 + 70 × 0.4 = 40
D:10 × 0.9 + 80 × 0.1 = 17  
実効アクセス時間が短い順に並べると A→D→B→C となります。  
   解答:イ

039
★ ★
1
5 補助記憶

●補助記憶の種類
補助記憶にも、さまざまな種類があります。代表的なものは次のとおりです。

〈補助記憶の種類〉

種類 特徴 例

磁気ディスク 磁 性 体 を 塗 っ た 薄 い 円 盤( デ ィ ス ハードディスク
ク )に磁気の力を使って、データを
読み出したり書き込んだりする
シーディー ディーブイディー ビーディー
光ディスク 薄い円盤にレーザ光を当てることに C D 、D V D 、 BD
よって、データを読み出したり、書 (ブルーレイディスク )
き込んだりする
エスディー ユーエスビー
フラッシュメモリ 電気で書込みや消去を行う半導体メ S D カ ー ド、USB メ
エスエスディー
モリ。コンパクトでアクセス速度が モ リ、SSD、 コ ン パ
速い クトフラッシュ

●磁気ディスク
磁気ディスクは、薄い円盤に磁性体を塗った装置です。磁気ディスク装置は、複
数のディスクから構成されています。磁気ヘッドはデータの読み書きを行う部品、
アームは磁気ヘッドを磁気ディスクの特定箇所へと移動させるための部品です。磁
気ディスク装置は、アームの先端についている磁気ヘッドを移動させることで、磁
気ディスク上のデータを読み書きします。

磁気ヘッド
ディスク
アーム

040
1-5 補助記憶

●磁気ディスクの記録単位

第 章 ●
磁気ディスク装置は、セクタ、トラック、シリンダという単位で磁気ディスク 1
上のデータの位置を管理します。データを記録する最小単位がセクタです。セ
クタをつないで、ディスクをぐるりと1周した領域をトラックといいます。ト

ハードウェア
ラックは、磁気ヘッドを固定した状態で磁気ディスクを回転させたときの記録
領域単位です。さらに、各ディスクの中心から同じ距離にあるトラックを全部
まとめた領域をシリンダといいます。シリンダは、アームの位置を固定したと
きに同時にアクセスできる単位です。

セクタ トラック シリンダ

●データの読み書きに必要なディスク容量
磁気ディスクへデータを読み書きする際は、セクタ単位で行われます。サイズ
が大きいデータは、複数のセクタにまたがって書き込まれます。逆に、小さい
データだと、セクタ内に余った部分ができます。この余った部分には他のデー
タが書き込まれることはないため、無駄な領域となります。

〈セクタ単位での読み書き〉

余った部分は無駄な
領域になります
大きなデータは複数の
セクタにまたがります

これも ビットとバイト

知っと データの容量を表すときには、ビットやバイトという単位を使
います。ビットはコンピュータの扱う最小単位で、英語では
余った部分は無駄な
領域になります1 バイトと
「 bit 」と書きます。さらに、8 ビットのまとまりを
大きなデータは複数の
いい、単位は B または Byte と書きます(詳細は P82 参照)。
セクタにまたがります

041
例えば、セクタ長が 500 バイトのディスクに、200 バイト、1,300 バイト
の 2 つのデータを書き込む場合を考えてみます。セクタ単位で書き込むため、
200 バイトでも 1 セクタ分、1,300 バイトでは 3 セクタ分の領域、つまり全
部で500バイト×4セクタ=2000バイトのディスク領域が必要になります。

〈セクタ単位での書込み〉

セクタ セクタ セクタ セクタ

200バイトのデータ 1300バイトのデータ

4セクタ×500バイト=2000バイト 必要

これも ブロック単位での書込み

知っと 磁気ディスクが扱う最小単位はセクタですが、システムがファ
イルなどのデータを扱うときは、複数のセクタを 1 つとみなし
たブロック単位で書き込むことが一般的です。そのため、磁気
ディスクはブロック単位のデータをひとまとまりとして扱い、
複数のセクタに書き込みます。

ココが
スキル
出る!
→磁気ディスクが読み書きする単位を理解して、データを保存
するのに必要な容量が計算できるようにしておこう。

●磁気ディスクのアクセス時間
制御装置から磁気ディスクにデータの読み書きの指令が出てから、読み書きが
終わるまでの時間をアクセス時間といいます。アクセス時間が短いほど、高性
能な磁気ディスクといえます。
アクセスは、次の 3 つのステップで行われます。
①アームを動かし、データのあるトラックまで移動します。この時間を位置決
め時間(シーク時間)といいます。
②磁気ディスクを回転させ、データのあるセクタまで移動します。この時間を

042
1-5 補助記憶

回転待ち時間( サーチ時間)といいます。ヘッドが目的のデータ上にある場合

第 章 ●
は回転待ち時間はゼロですが、離れている場合は最大 1 回転分の時間がかかり 1
ます。そこで平均をとり、ディスクが 1/2 回転する時間を計算し、回転待ち
時間とします。

ハードウェア
③アクセスアームの先端についている磁気ヘッドからデータを読み書きしま
す。この時間をデータ転送時間といいます。

①アームを動かす ②ディスクを回転する ③データを読み書きする


 (位置決め時間)  (回転待ち時間)  (データ転送時間)

磁気ディスクのアクセス時間は次の計算式で求めることができます。

《計算式:磁気ディスクのアクセス時間》
 
 磁気ディスクのアクセス時間
 =①位置決め時間+②回転待ち時間+③データ転送時間

ココが
スキル
出る!
→磁気ディスク装置の位置決め時間、回転待ち時間、データ転
送時間をそれぞれ計算できるようにしておこう。

●光ディスク
光ディスクは、レーザ光を利用してデータの読み書きを行う記憶媒体です。代表
的な光ディスクに、CD や DVD、BD などがあります。記録方式の違いにより、デー
タを書き換えることができない再生専用型、一度だけ書込みができ、書き込んだデー

043
タは消去できない追記型、何度でも書き込んだり消去したりできる書換え型の 3 種
類があります。

〈代表的な光ディスク 〉

種類 特徴
シーディーロム シーディー リ ー ド
C D-ROM( C D-R ead 再生専用型の CD。ディスク上の細かい穴にレーザ光線
オンリー メ モ リ
Only Memory ) をあてて、反射光によってデータを読み取る
シーディーアール
CD-R 追記型の CD。記録面に有機色素が塗られていて、その
シ ー デ ィ ー レ コ ー ダ ブ ル
( CD-Recordable ) 色素にレーザ光をあて、ピットと呼ばれる焦げ跡を作っ
てデータを書き込む
シーディーアールダブリュー
CD-RW 書換え型の CD。記録面の金属を結晶化させることで
シーディーリライタブル
( CD-Rewritable ) データを書き込む

DVD 大容量の光ディスクで、動画など大きなデータの記録
に使われる。片面または両面にデータを記録する
ディーブイディーロム
DVD-ROM CD-ROM 同様、再生専用型
ディーブイディーアール
DVD-R 一度だけ書き込める追記型
ディーブイディーラム
DVD-RAM/ 書込み・消去が可能
ディーブイディーアールダブリュー
DVD-RW
ブ ル ー レ イ ディスク
BD( Blu-ray Disc ) 青紫色のレーザ光線を使ってデータを記録する。DVD
よりも高密度な記録が可能で、ハイビジョン映像など、
さらに大容量のデータを記録できる

ココが
出る! 用語
[ CD-ROM ]
:再生専用型
[ CD-R ]
:追記型
[ CD-RW ]
:書換え型

●フラッシュメモリ
フラッシュメモリは、書込み、消去を電気的に行い、電源を切っても内容を保持
できる半導体メモリです。アクセス速度が速いうえにコンパクトで、書込み回数に
制限はあるものの、何度もブロック単位でデータを書き換えることができるため、
広く使われています。それぞれの特徴は以下のとおりです。

044
1-5 補助記憶

第 章 ●
〈代表的なフラッシュメモリ 〉

種類 特徴 1
エスディー
S D カード 携帯電話やディジタルカメラの
ミ ニ エスディー
miniS D カード データを保存するのに使われる。

ハードウェア
マイクロエスディー
microSD カード カード型にパッケージされている
SD mini
SD
micro
SD

ユーエスビー
USB メモリ パソコンの USB ポートに差し込
んで使う。簡単に抜き差しできる

エスエスディー
SSD 衝撃に強いため、ハードディスク
の代わりとしてノートパソコンな
どに利用されている。高速に読み
書きできるが、書込み回数に上限
があり、少々値段が高い

ココが
出る! 用語
[ フラッシュメモリ ]:書込み、消去を電気的に行う半導体メ
モリ。回数に制限はあるが、ブロック単位で書換え可能

基本情報技術者試験 平成 27 年春

回転数が 4,200 回/分で、平均位置決め時間が 5 ミリ秒の磁気ディスク装


置がある。この磁気ディスク装置の平均待ち時間は約何ミリ秒か。ここで、
平均待ち時間は、平均位置決め時間と平均回転待ち時間の合計である。
ア:7   イ:10   ウ:12   エ:14

まず、回転数から 1 回転するのにかかる時間を計算します。
解説
1 回転あたりの時間= 60 秒÷ 4200 回≒ 0.014 秒= 14 ミリ秒
1
平均回転待ち時間は  — 回転の時間とするため、1 回転あたりの時間÷ 2
2
で計算します。
平均回転待ち時間=1回転あたりの時間÷2=14ミリ秒÷2=7ミリ秒。
よって、平均待ち時間は 5 + 7 = 12 ミリ秒となります。   解答:ウ

045
基本情報技術者試験 平成 21 年秋

500 バイトのセクタ 8 個を 1 ブロックとして、ブロック単位でファイルの


領域を割り当てて管理しているシステムがある。2,000 バイト及び 9,000
バイトのファイルを保存するとき、これら二つのファイルに割り当てられる
セクタ数の合計は幾らか。ここで、ディレクトリなどの管理情報が占めるセ
クタは考慮しないものとする。
ア:22  
イ:26  
ウ:28  
エ:32

 
1 ブロックの長さを求めると、500 × 8 = 4,000(バイト )になり
解説
ます。2,000 バイトのファイルを保存するために必要なブロック
数は、2,000 ÷ 4,000 = 0.5 となり、小数を切り上げて 1 ブロックで
す。同様に 9,000 バイトのファイルを保存するために必要なブロック数
は、9,000 ÷ 4,000 = 2.5 となり、同じく小数を切り上げて 3 ブロック
です。1 + 3 = 4 ブロックが必要となるので、セクタ数に変換すると 4 ×
8 = 32(セクタ )となります。             解答:エ

基本情報技術者試験 平成 26 年春

フラッシュメモリに関する記述として、適切なものはどれか。
ア:高速に書換えができ、CPU のキャッシュメモリなどに用いられる。
イ:紫外線で全内容の消去ができる。
ウ:周期的にデータの再書込みが必要である。
エ:ブロック単位で電気的に内容の消去ができる。

 
フラッシュメモリは EEPROM の一種で、電気的に書込み、消去を
解説
行う半導体メモリです。ブロック単位でデータを消去でき、ディジ
タルカメラなどに用いられています。 解答:エ

046
1-6 入出力装置
★ ★
1
6

第 章 ●
入出力装置 1

ハードウェア
●入力装置の種類
コンピュータにデータを入力する入力装置には、以下のようなものがあります。

〈入力装置の種類〉

種類 特徴

キーボード キーを押して文字の入力を行う

マウス 動かした方向と距離を画面上の
カーソルの移動に反映させる

ペンタブレット ペン型の装置で専用のボード上か
ら書き込むように入力する。CAD
システムの図形入力や、イラスト
の描画などで使われる

イメージスキャナ 絵や写真、文字などを、画像デー
タとして読み取る

タッチパネル 指や専用のペンで画面に直接触れ
て操作する。触れた部分の表面電
荷の変化から位置を検出する静電
容量方式などがある。電子辞書や
タブレット端末に使われている

バーコードリーダ 光をあててバーコードを読み取る。
コンビニやスーパーのレジで使わ
れている

047
●出力装置の種類
出力装置であるプリンタとディスプレイには、以下のようなものがあります。

〈プリンタの種類〉

種類 特徴

インクジェットプリンタ インクの粒子を紙に吹き付けて印刷する。低価格でカ
ラー印刷もできるので、個人用としてよく使われる

レーザプリンタ レーザ光を利用し、紙にトナーを転写して印刷する。
ディーピーアイ
1 インチ(2.54cm )あたりの印刷精度( d p i )と、1
分間に印刷できるページ数で性能が決まる。高速なの
でビジネス用によく使われている

〈ディスプレイの種類〉

種類 特徴 形状
シーアールティー
C R T ディスプレイ 内部の電子銃から発射 厚みがある
し た 電 子 ビ ー ム を、 画
面内側の蛍光体にあて
て 発 光 さ せ、 画 像 を 表
示 す る。 安 価 で 見 や す
いが、大きくて重い

液晶ディスプレイ 液晶に電圧をかけて色
を 変 え、 バ ッ ク ラ イ ト
などを用いて画像を表
示 す る。 薄 く て 省 電 力
だ が、 斜 め か ら は 見 え
にくい
薄型
プラズマディスプレイ ガラスの間にネオンな
どのガスを入れ、電圧を
かけることによって発
光させ画像を表示する。
どの角度からでも見や
すく大型化できるので、
どちらかというとテレ
ビ向き
イーエル
有機 E L ディスプレイ 電圧を加えると自ら光
る有機物を利用して画
像 を 表 示 す る。 消 費 電
力が低い

048
1-6 入出力装置

●ディスプレイの解像度

第 章 ●
ディスプレイは、さまざまな文字や画像を、非常に小さい点の集まりによって表 1
現しています。この 1 つ 1 つの点をドット、画素、またはピクセルといい、画素の
個数を画素数といいます。

ハードウェア
〈画素〉

画素

ディスプレイの画面など特定の範囲の中に、この画素が何個表示できるかを表し
た数値を解像度といいます。画面における画素の密度で、画像の粗さやきめ細やか
さを表します。同じ画素数の画像でも、ディスプレイの解像度を上げて表示すると、
その分小さく見えます。

〈解像度〉

画素数= 4 画素数= 4
解像度= 4×5 解像度= 6×8

画像が小さくなる

ブ イ ラ ム ビ デ オ ラ ム
● VRAM( Video RAM )
ブイラム
VRAM はディスプレイに表示する内容を一時的に保持している表示専用のビデ
オメモリです。VRAM の容量が大きければ大きいほど、ディスプレイの解像度が
上がり、表示できる色数は増えます。
VRAM の容量が 1 ビットしかないと、ディスプレイで表示できる色数はたった
2 色です。昔のコンピュータは、1 ドット当たりに使用できるビット数が 1 ビット
の VRAM を搭載していたため、白黒表示でした。VRAM が 2 ビットになると 4 色、
8 ビットになると 256 色、16 ビットになると 65,536 色が表示できます。

049
〈 VRAM の容量と色数〉

1 ドットあたりのビット数 表現できる色数

1 ビット 2 色(21)

8 ビット 256 色(28)

16 ビット 65,536 色(216)

24 ビット 16,777,216 色(224)

ココが
出る! 用語
[タブレット ]:専用のペンとボードを使って入力
[タッチパネル ]:指や専用のペンで画面を直接操作して入力
[静電容量方式タッチパネル ]
:タッチした部分の表面電荷の
変化から位置を検出
[液晶ディスプレイ ]:バックライトや外部の光を使って表示
[プラズマディスプレイ ]:ガス放電に伴う発光で表示
[有機 EL ディスプレイ ]
:電圧を加えると発光ダイオードのよ
うな物質が自ら光って表示する
スキル
→ディスプレイの解像度を変更した場合に、文字や画像の大き
さがどのように変化するかを理解しておこう。また、色数に応
じた画面のデータ量を計算できるようにしておこう。

050
1-6 入出力装置

第 章 ●
基本情報技術者試験 平成 24 年春

プラズマディスプレイの説明として、適切なものはどれか。 1
ア:ガス放電によって発生する光を利用して、映像を表示する。
イ:自身では発光しないので、バックライトを使って映像を表示する。

ハードウェア
ウ: 電極の間に挟んだ有機化合物に電圧をかけると発光することを利用し
て、映像を表示する。
エ:電子銃から発射した電子ビームを管面の蛍光体に当てて発光させ、文字
や映像を表示する。

 
プラズマディスプレイは、ガス放電に伴う発光で表示します。イは
解説
TFT 液晶ディスプレイ、ウは有機 EL ディスプレイ、エは CRT ディ
スプレイの説明です。 解答:ア

基本情報技術者試験 平成 24 年秋

96dpi のディスプレイに 12 ポイントの文字をビットマップで表示したい。


正方フォントの縦は何ドットになるか。ここで、1 ポイントは 1/72 イン
チとする。
ア:8   
イ:9   
ウ:12   
エ:16  

 
1 ポイントが 1/72 インチのとき、12 ポイントの文字の大きさは、
解説
1/72 × 12 = 1/6 インチとなります。このとき、1 インチあた
りのドット数が 96 のディスプレイに表示すると、ドット数は 96 × 1/
6 = 16 になります。 解答:エ

051
★ ★ ★
1
7 入出力インタフェース

●インタフェースとは
CPU などのようにコンピュータ内部にあるのではなく、外からコンピュータに
つなげて使うディスプレイやキーボードなどのハードウェアを周辺機器といいま
す。コンピュータと周辺機器をつなぐケーブルの接続口( コネクタ )の形やデータ
をやりとりする方法は、どのメーカで作られた機器でもちゃんと接続して使えるよ
うに、共通の決まりに従って作られています。この共通の決まりのことを規格とい
い、コンピュータと周辺機器をつなぐ規格をインタフェースといいます。

〈インタフェース 〉

規格が異なる 規格が同じ

接続できない 接続できる

●インタフェースの種類
インタフェースにはいくつか種類がありますが、代表的なものは以下のとおりです。
規格が異なる 規格が同じ
〈インタフェースの種類〉

種類 特徴
ユーエスビー かい
USB 一番よく使われているインタフェース。USB ハブを介してツ
リー状にすれば、最大 127 台まで周辺機器を接続できる。電
源を入れたまま抜き差しできるホットプラグ機能に対応
アイトリプルイーイチサンキュウヨン 接続できない 接続できる
IEEE1394 形状と特徴は USB に似ているが、USB よりも伝送速度が速
いので、データ量の多いディジタルカメラ、ビデオなどで利
用される。最大 63 台接続でき、ホットプラグ機能に対応
エーティーエー
シリアル ATA 磁気ディスクや光ディスクなどの内蔵周辺機器と PC を接続
する高速なインタフェース。接続されている機器の電源を入
れたまま交換できるホットスワップ機能に対応している

052
1-7 入出力インタフェース

第 章 ●
種類 特徴
スカジー
SCSI
エイチディーディー
外付けのハードディスクドライブ( H D D )や、プリンタな
1
どの周辺機器を PC と接続するインタフェース。今はあまり
使われない

ハードウェア
アイディーイー シーディーロム
IDE コンピュータ内蔵の HDD や CD-ROM 装置の接続に使うイン
タフェース

これも デイジーチェーン接続とスター型接続

知っと IEEE1394 や SCSI など、複数の機器を数珠つなぎに接続す
る配線方法をデイジーチェーン接続といいます。USB ハブな
ど、中心となる 1 台の機器にまとめて接続する配線方法をス
ター型接続といいます。

●ワイヤレスインタフェース
インタフェースには、ワイヤレス方式で接続するものもあります。ワイヤレス方
式とは、ワイヤ( コード )+レス(無い)、つまりコードを使わずに接続する無線方
式です。代表的なワイヤレスインタフェースは、以下のとおりです。

〈ワイヤレスインタフェースの種類〉

種類 特徴
ブ ル ー ト ゥ ー ス
Bluetooth 免許不要の 2.4GHz 帯の電波を使ってデータを転送する。数
十メートルの比較的短い距離でのデータ転送に使うことがで
き、PC 間の通信や、携帯電話や家庭用ゲーム機のコントロー
ラに利用されている
アイアールディーエー
IrDA 赤外線を使ってデータを転送する。携帯電話同士など、ごく
近い距離のデータ通信に使われる

ココが
出る! 用語
[ USB ]
:ハブを使って最大 127 台まで接続可能。ホットプ
ラグ対応
[ IEEE1394]
:USB よりも速い。ホットプラグ対応

053
ココが
出る! 用語
[ シリアル ATA ]
:内蔵の磁気ディスクや光ディスクの接続に
利用。ホットスワップ対応
[ IDE ]
:内蔵の HDD や CD-ROM 装置の接続に利用
[デイジーチェーン接続]:複数の機器を数珠つなぎに接続する
配線方法
[ Bluetooth ]
:ワイヤレスインタフェース。データの転送に
免許不要の 2.4GHz 帯の電波を使う
[ IrDA ]
:ワイヤレスインタフェース。データの転送に赤外線
を使う

基本情報技術者試験 平成 21 年秋

USB の説明はどれか。
ア:PC に内蔵される CD-ROM 装置、DVD 装置などを接続するためのパラ
レルインタフェースである。
イ:磁気ディスク、プリンタなどをデイジーチェーンで接続するパラレルイ
ンタフェースである。
ウ:ハブを介してツリー状に機器を接続できるシリアルインタフェースで
ある。
エ:プリンタなどに赤外線を使ってデータを転送するシリアルインタフェー
スである。

 
キーワードは「 ハブを介してツリー状に機器を接続」です。アは
解説
IDE、イは SCSI、エは IrDA です。          解答:ウ

054
1-7 入出力インタフェース

第 章 ●
基本情報技術者試験 平成 20 年春

携帯電話同士でアドレス帳などのデータ交換を行う場合に使用される、赤外 1
線を用いるデータ転送の規格はどれか。
ア:IEEE 1394

ハードウェア
イ:IrDA
ウ:PIAFS
エ:RS-232C

赤外線を用いたデータ転送規格は、IrDA です。IEEE1394 は、高


解説
速シリアルインタフェース規格です。PIAFS は、
PHS にコンピュー
タをつないで高速データ通信( ディジタル 64kbps )をするための規格で
す。RS-232C は、パソコンとモデムの接続に使用される規格です。 
                   解答:イ

055
ソフトウェア
★ ★ ★
2
1 ソフトウェアとOS

●ソフトウェアの分類
この章ではコンピュータを構成する要素のうち、ソフトウェアについて説明して
いきます。
ソフトウェアは、コンピュータ内で果たす役割によって、基本ソフトウェア、応
用ソフトウェア、ミドルウェアの 3 つに分けることができます。

〈ソフトウェア分類〉

応用ソフトウェア

ミドルウェア

基本ソフトウェア

ハードウェア

●基本ソフトウェア
基本ソフトウェアは、ハードウェアを制御したり、様々なソフトウェアの動作
を管理するなど、コンピュータを動作させるための基本機能を提供するソフト
ウ ィ ン ド ウ ズ マ ッ ク オーエス ユニックス オーエス
ウェアです。Windows や Mac OS、UNIX などの OS( オペレーティングシ
ステム )は基本ソフトウェアです。

●応用ソフトウェア
基本ソフトウェアの上で動くソフトウェアが、応用ソフトウェアです。私たち
の仕事を直接助けてくれるソフトウェアで、アプリケーション(ソフトウェア )
ワ ー ド エクセル
ともいいます。ワープロソフトの Word、表計算ソフトの Excel などは応用ソ
フトウェアです。

●ミドルウェア
ミドルウェアは、応用ソフトウェアと基本ソフトウェアの中間に位置し、多く
の応用ソフトウェアが共通に利用する専門的な機能を提供するソフトウェアで

058
2-1 ソフトウェアと OS

す。特定分野で多くの応用ソフトウェアが必要とする機能、例えば、データ
ベースの管理機能を提供します。このミドルウェアをデータベース管理システ
ディービーエムエス
ム(D BMS )
(「8-6 データベース管理システム 」を参照)といいます。応用ソ
フトウェアは、DBMS を呼び出すことで、複雑な手続きなしにデータベース

第 章 ●
を使うことができます。
2

これも エーピーアイ ア プ リ ケ ー シ ョ ン プ ロ グ ラ ム インタフェース


こ A P I( Application Program Interface )

ソフトウェア
知っと
アプリケーションから、OS が用意する各種機能を利用するた
めの仕組みを API といいます。例えば Windows などの OS は、
アプリケーション向けに「 ウィンドウを表示する」といったよく
使う機能を API として提供しています。開発者は必要な機能の
API を使ってプログラミングすればよいため、開発の効率が上
がります。

ココが
出る! 用語
[ API ]
:応用ソフトウェアから、OS が用意するいろいろな機
能を利用するための仕組み

●基本ソフトウェアの構成
基本ソフトウェアは、制御プログラム、言語プロセッサ、サービスプログラムの
3 つのソフトウェアで構成されています。

〈基本ソフトウェア 〉

制御プログラム(狭義のOS)
基本ソフトウェア
言語プロセッサ
(広義のOS)
サービスプログラム

059
●制御プログラム
制御プログラムは、基本ソフトウェアの核となる部分で、コンピュータのハー
ドウェアやソフトウェアの動作を制御するソフトウェアです。主な機能にジョ
ブ管理やタスク管理などがあります。この制御プログラムだけを OS と呼ぶこ
ともあります。

●言語プロセッサ
ジ ャ バ シー
言語プロセッサは、Java や C などのプログラム言語で書かれたプログラムを、
コンピュータが理解し、実行できる機械語に変換するソフトウェアです(
「5-6
プログラミング 」参照)。

●サービスプログラム
サービスプログラムは、利用者のサポートやシステムの定期作業など補助的に
さまざまな機能を提供するソフトウェアです。例えば、文字のみのファイルを
作成したり編集したりするテキストエディタなどがあります。

● OS の役割
OS(オペレーティングシステム )は、応用ソフトウェアやミドルウェアが効率的
にコンピュータを利用するために、以下のような役割をこなしています。

●ハードウェアを管理する
シーピーユー
C PU や主記憶など、限られたハードウェアの資源を効率よく使えるよう、う
まく仕事を割り振ります(「2-2 タスク管理」
「2-3 記憶管理」参照)

〈ハードウェア資源の管理〉

CPU
計 算を
 やって 出力装置
ちょっと
待ってて
主記憶 OS

タ出し
デー

060
2-1 ソフトウェアと OS

●ファイルを管理する
データの入れ物であるファイルを作ったり、ファイルが間違った使われ方をし
ないように管理します(「2-4 ファイル管理」参照)

第 章 ●
●周辺機器を管理する
マウスやプリンタなどの周辺機器を、ユーザがスムーズに使えるよう手助けし 2
ます。新しい周辺機器を接続したときには、周辺機器をアプリケーションから
操作できるようにするためのソフトウェアであるデバイスドライバを OS にイ

ソフトウェア
ンストールする必要があります。

基本情報技術者試験 平成 20 年春

OS における API( Application Program Interface )の説明として、適切


なものはどれか。
ア:アプリケーションがハードウェアを直接操作して、各種機能を実現する
ための仕組みである。
イ:アプリケーションから、OS が用意する各種機能を利用するための仕組
みである。
ウ:複数のアプリケーション間でネットワークを介して通信する仕組みで
ある。
エ:利用者の利便性を図るために、各アプリケーションのメニュー項目を統
一する仕組みである。

 
API は、OS が用意したいろいろな機能を、アプリケーションから
解説
呼び出して利用するための仕組みです。        解答:イ

061
★ ★ ★
2
2 タスク管理

●タスク管理の役割
コンピュータは、私たちがアプリケーションで行う操作を、細かい仕事単位で
あるタスクに分解して、処理しています。タスクはコンピュータから見た仕事の
オーエス
単位です。システムによってはプロセスとも呼ばれます。OS は、コンピュータ
シーピーユー
のあちこちで無駄な空き時間が出ないように、タスク単位で細かく CPU や主記憶
を割り当て、コンピュータ全体として効率的な処理が行われるように制御してい
ます。

〈コンピュータの仕事の単位〉

利用者 コンピュータ

お願い はいよ !!
タスク
分解
アプリ
タスク
ケーション

タスク
CPU

●タスクの状態遷移
OS は、CPU の使用権を適切に割り当てるために、タスクを次の 3 つの状態に
分けて管理します。

〈タスクの 3 つの状態〉

状態 概要

実行可能状態 タスクが CPU が使えるようになるのを待っている状態

実行状態 タスクが CPU を使って実行している状態

待ち状態 自分が要求した入出力動作が終わるのを待っている状態

タスクの状態遷移は次のようにして行われます。

062
2-2 タスク管理

〈タスクの状態遷移図〉

タスク生成 タスク消滅
CPUの割当て

第 章 ●
実行可能状態 実行状態
2

④ ③

ソフトウェア
入出力完了 待ち状態 入出力要求

①実行可能状態から実行状態へ
タスクが生成されると、まず実行可能状態となります。いくつものタスクがこ
の状態で待っています。自分の番が来て CPU が使えるようになると、実行状
態へ移ります。

②実行状態から実行可能状態へ
割り当てられた CPU の使用時間を使い切ったときや、実行中に別のタスクか
ら CPU の使用権を奪われた場合、実行状態のタスクは一時中断し、再び実行
可能状態になります。

③実行状態から待ち状態へ
実行状態中に入出力動作が発生すると、自分が要求した入出力処理が終わるま
で待ち状態となります。

④待ち状態から実行可能状態へ
入出力処理が終了すると、再び実行可能状態になります。

ココが
スキル
出る!
→それぞれのタスクの状態と、どんな条件によって状態が変化
するかを、状態遷移図と一緒に覚えておこう。

063
●タスクのスケジューリング方式
タスクがいくつも存在している場合、どういう順番でタスクを実行すべきかを決
める必要があります。この方法をタスクスケジューリング方式といい、主に次の 2
つがあります。

〈タスクのスケジューリング方式〉

方式 説明

優先度方式 プライオリティ方式ともいう。優先度の高いタスクから順番に
実行する方式

タイムスライス 複数のタスクに対して、均等に CPU 処理時間を割り当て、順


方式 番通りに次々と実行する方式。ラウンドロビン方式ともいう

これも ノンプリエンプティブなスケジューリング方式

知っと OS がタスクを切り替えるのではなく、実行状態のタスクがみ
ずから待ち状態に遷移するか終了するまで、他のタスクが実行
状態に遷移しない方法をノンプリエンプティブなスケジューリ
ング方式といいます。反対に、OS が強制的にタスクを切り替
える方法は、プリエンプティブなスケジューリング方式です。

●マルチプログラミング
タイムスライス方式では、非常に小さな時間単位でタスク処理を実行していくた
め、まるで複数のタスクが同時並行で処理されているように見えます。見かけ上、
いくつものプログラムが同時に実行されているように見える OS の働きをマルチプ
ログラミングといいます。マルチタスク、多重プログラミングとも呼ばれます。

●割込み処理
実行中のタスクを一時中断して、別のタスクの処理に切り替える仕組みを割込み
処理といいます。割り込んだタスクの処理が終わると、割り込まれたタスクの処理
が再開されます。割込みは、その理由によって内部割込みと外部割込みに分けられ
ます。

064
2-2 タスク管理

〈内部割込み〉

割込みの種類 説明

プログラム割込み 桁あふれやゼロによる除算(
「3-5 誤差」参照)など、プ
ログラム上のエラーによって発生する割込み

第 章 ●
エスブイシー
S V C 割込み プログラム内部から入出力装置を使うときなど、監視プ
ログラム( SVC:SuperVisor Call )を呼び出すときに発 2
生する割込み

ソフトウェア
〈外部割込み〉

割込みの種類 説明

マシンチェック割込み ハードウェアの誤動作や故障により発生する割込み

入出力割込み 入出力動作が終了したときに発生する割込み

タイマ割込み プログラムの実行時間が割り当てられた時間を超えたと
きに、指定された時間が経過したらその旨を通知するイ
ンターバルタイマによって発生する割込み

これも スプーリング

知っと
タスクを実行する CPU の処理速度に比べると、入出力装置の
処理速度は極端に遅くなります。そのため、タスクの実行結果
である出力データを一時的に高速な補助記憶装置に蓄えること
で、印刷など出力までの待ち時間を減らす方法をスプーリング
といいます。

〈スプーリング 〉

早く!! 待って!

CPU どんどん プリンタ


出して 1つずつ
ゆっくり
補助記憶 やってね

タスクを一時保管

065
ココが
用語
出る!
[ ノンプリエンプティブ ]
:実行状態のタスクがみずから待ち
状態に遷移するか終了するまで、他のタスクが実行状態に遷移
しない
[ スプーリング ]
:低速な装置への出力データを一時的に高速
な補助記憶装置に蓄え、待ち時間を減らす
スキル
→それぞれの割込みが、内部割込みか外部割込みのどちらに分
類されるかを理解しておこう。

基本情報技術者試験 平成 23 年秋

図はマルチタスクで動作するコンピュータにおけるタスクの状態遷移を表し
たものである。実行状態のタスクが実行可能状態に遷移するのはどの場合か。

実行状態

実行可能状態 待ち状態

ア:自分より優先度の高いタスクが実行可能状態になった。
イ:タスクが生成された。
ウ:入出力要求による処理が完了した。
エ:入出力要求を行った。

 
実行状態のタスクが実行可能状態に遷移するのは、より優先度の高
解説
いタスクに CPU 使用権を奪われたときや、CPU 割当て時間を使い
切ったときです。 解答:ア

066
2-2 タスク管理

基本情報技術者試験 平成 26 年秋

内部割込みに分類されるものはどれか。
ア:商用電源の瞬時停電などの電源異常による割込み
イ:ゼロで除算を実行したことによる割込み

第 章 ●
ウ:入出力が完了したことによる割込み
2
エ:メモリパリティエラーが発生したことによる割込み

 
内部割込みは、プログラムの中で入出力装置を使うときやプログラ

ソフトウェア
解説
ムの誤りによって起こる割込みです。 解答:イ

基本情報技術者試験 平成 27 年春

スプーリングの説明として、適切なものはどれか。
ア:キーボードからの入力データを主記憶のキューに一旦保存しておく。
イ:システムに投入されたジョブの実行順序を,その特性や優先順位に応じ
て決定する。
ウ:通信データを直接通信相手に送らず,あらかじめ登録しておいた代理に
送る。
エ:プリンタなどの低速な装置への出力データを一旦高速な磁気ディスクに
格納しておき,その後に目的の装置に出力する。

 
スプーリングは、低速な装置への出力データを一時的に高速な補助
解説
記憶装置に蓄えることで、印刷など出力までの待ち時間を減らす方
法です。 解答:エ

067
★ ★ ★
2
3 記憶管理

●記憶管理の役割
主記憶装置は価格も高く、容量も限られています。限られた主記憶装置の容量を
効率的に使用するために、OS は記憶管理を行います。記憶管理には、主記憶その
じつきおくかんり
ものを効果的に使用するための実記憶管理と、補助記憶の一部をあたかも主記憶を
かそうきおくかんり
使っているかのように見せかける仮想記憶管理があります。

●実記憶管理
同時に複数のプログラムを実行することができるマルチプログラミング( マルチ
タスクともいう)では、複数のプログラムを主記憶に読み込みます。主記憶の容量
は限られているので、複数のプログラムをできるだけ無駄がないように主記憶に配
置する必要があります。主記憶を有効活用するための方法には、区画方式、スワッ
ピング方式などがあります。

●区画方式
区画方式は、主記憶をいくつかの区画に分割して、プログラムに割り当てる方
法です。
固定区画方式(固定長方式)では、決まったサイズに区画を分割します。プロ
グラムに割り当てた区画の中に余った領域ができても、他のプログラムは使用
できないため無駄が発生しますが、メモリの獲得や返却などの処理時間は一定
です。
一方、可変区画方式(可変長方式)は、プログラムのサイズに合わせた大きさ
で区画を分割し、割り当てる方法です。区画のサイズは必要に応じて変えられ
るため、無駄が出ません。余った領域を使用でき効率的ですが、処理手順が複
雑になるため遅くなります。

068
2-3 記憶管理

〈固定区画方式と可変区画方式〉

固定区画方式 可変区画方式

プログラムのサイズで分割
同じサイズに分割
プログラム A プログラム A

第 章 ●
余った領域
プログラムB 2
プログラムB プログラムC

プログラムC

ソフトウェア
余った領域

無駄が出る 無駄が出ない

ココが
出る! 用語
[固定区画方式]:主記憶の使用効率は悪いが、処理時間は一定
で速い
[可変区画方式]:主記憶の使用効率はよいが、処理速度は不定
で遅い

●スワッピング方式
OS がプログラムを読み込もうとした際に主記憶の容量が足りないとき、優先
度の低いプログラムを一時的に中断して補助記憶に退避させ、優先度の高いプ
ログラムを実行させる OS の機能をスワッピング方式といいます。スワッピン
グとは、プログラムを補助記憶に待避させたり(スワップアウト )
、主記憶に戻
したり(スワップイン )することを指しています。

〈スワッピング方式〉
①スワップアウト

優先度の低い
プログラム

優先度の高い
プログラム
②スワップイン
主記憶装置 補助記憶装置

069
これも メモリリーク

知っと OS やアプリケーションのバグが原因で、動作中に確保した主
記憶が解放されないことをメモリリークといいます。メモリリー
クが発生すると、主記憶中の利用可能な部分が減少します。

●仮想記憶管理
コンピュータで実行するプログラムのサイズは年々大きくなり、また同時に実行
するプログラムの数も増えています。しかし、主記憶の容量不足に対して、これま
で見てきたような主記憶の効率的な使い方だけでは限界があります。そこで考えら
れたのが、補助記憶の一部を主記憶であるかのように見せかけて、実際の主記憶よ
りもはるかに大きな記憶領域を仮想的に作り出す方法です。これを仮想記憶システ
ムといいます。主記憶であるかのように見せかけた補助記憶上の領域を仮想記憶と
いいます。主記憶と仮想記憶をうまく連携させることで、大きなプログラムや多く
のプログラムを実行します。

〈仮想記憶管理〉

見た目は主記憶

実記憶 仮想記憶

主記憶装置 補助記憶装置

●ページング方式
仮想記憶システムにおけるメモリ割当ての代表的な方式は、ページング方式で
す。ページング方式とは、主記憶と補助記憶をそれぞれ決まった大きさのペー
ジに分割し、対応づけて管理する方法です。処理に必要なページを動的に主記
憶に割り当てることによって、主記憶を効率的に使用できます。ページングと
は、命令の実行中、主記憶上に必要なページがない(ページフォールト )場合に、
不要なページを補助記憶へ追い出したり( ページアウト )、必要なページを主
記憶に読み込んだり( ページイン )することを指しています。ページングは次
のような流れで実行されます。

070
2-3 記憶管理

〈ページングの流れ〉

①「6」を参照したいのに主記憶装置上
にない(ページフォールト)

③「1」をページアウト

第 章 ●
②このページを 1 4 7 A
 置き換えよう
2 5 8 B
2
3 6 9 C
④参照したい「6」を
 ページイン

ソフトウェア
主記憶装置 補助記憶装置

ページアウトするページを決定する方法には、次のようなものがあります。

〈ページ置換えアルゴリズム 〉

方式名 方法
ファイフォ
FIFO 方式 ページが読み込まれた順にページアウトする方式。FIFO は
ファーストイン フ ァ ー ス ト ア ウ ト
First-In First-Out(先入れ先出し)の略
エルアールユー
LRU 方式 最 後 に 参 照 さ れ た 時 間 が 古 い 順 に ペ ー ジ ア ウ ト す る 方 式。
リ ー ス ト リーセントリー ユーズド
LRU は Least Recently Used(一番昔に使われた)の略
エルエフユー
LFU 方式 参照された回数が少ない順にページアウトする方式。LFU は
リ ー ス ト フリークエントリー ユーズド
Least Frequently Used(使われた回数が一番少ない)の略

これも スラッシング

知っと 仮想記憶システムにおいて、プログラムが過大なメモリを要求
したためページングが頻繁に発生し、システム性能が低下する
ことをスラッシングといいます。

071
ココが
出る! 用語
[メモリリーク ]:OS などのバグが原因で、動作中に確保した
主記憶が解放されない
[仮想記憶]:補助記憶の一部を主記憶に見せかけて、実際の主
記憶容量よりも大きな記憶空間を使用できる
[ ページング方式]
:主記憶と補助記憶をページ単位で区切り、
対応づけて管理する方式
[ページイン ]:必要なページを主記憶に読み込む
[ページアウト ]:不要なページを補助記憶へ追い出す
[ページフォールト ]:主記憶上に必要なページがない
[ FIFO 方式]:一番古くから存在するページを置き換える方式
[ LRU 方式]:最後に参照されてから経過時間が最も長いペー
ジを置き換える方式
[ LFU 方式]:最も参照回数が少ないページを置き換える方式
[ スラッシング ]:ページングが頻繁に発生し、システム性能
が低下
スキル
→ページングの流れについて、主記憶に存在しないページにア
クセスした場合の処理手順を理解しておこう。

072
2-3 記憶管理

基本情報技術者試験 平成 24 年春

様々なサイズのメモリ資源を使用するリアルタイムシステムのメモリプール
管理において、可変長方式と比べた場合の固定長方式の特徴として、適切な
ものはどれか。

第 章 ●
ア:メモリ効率が良く、獲得及び返却の処理速度は遅く一定である。
2
イ:メモリ効率が良く、獲得及び返却の処理速度は遅く不定である。
ウ:メモリ効率が悪く、獲得及び返却の処理速度は速く一定である。

ソフトウェア
エ:メモリ効率が悪く、獲得及び返却の処理速度は速く不定である。

 
固定長方式ではアルゴリズムが単純で、処理速度が速く一定です。
解説
また、区画に未使用領域が発生するため、メモリ効率が悪くなります。
                             解答:ウ

基本情報技術者試験 平成 25 年秋

メモリリークの説明として、適切なものはどれか。
ア:OS やアプリケーションのバグなどが原因で、動作中に確保した主記憶
が解放されないことであり、これが発生すると主記憶中の利用可能な部
分が減少する。
イ:アプリケーションの同時実行数を増やした場合に、主記憶容量が不足し、
処理時間のほとんどがページングに費やされ、スループットの極端な
低下を招くことである。
ウ:実行時のプログラム領域の大きさに制限があるときに、必要になったモ
ジュールを主記憶に取り込む手法である。
エ:主記憶で利用可能な空き領域の総量は足りているのに、主記憶中に不連
続で散在しているので、大きなプログラムをロードする領域が確保でき
ないことである。

 
メモリリークとは、動作中に利用可能な主記憶がだんだん減ってい
解説
く現象です。OS やアプリケーションが占有した主記憶領域を、バ
グなどが原因で解放しないで放置するために起きます。 解答:ア

073
基本情報技術者試験 平成 20 年秋

ページング方式の仮想記憶において、主記憶に存在しないページをアクセス
した場合の処理や状態の順番として、適切なものはどれか。ここで、主記憶
には現在、空きのページ枠はないものとする。
ア:置換え対象ページの決定 → ページイン → ページフォールト → ページ
アウト
イ:置換え対象ページの決定 → ページフォールト → ページアウト → ペー
ジイン
ウ:ページフォールト → 置換え対象ページの決定 → ページアウト → ペー
ジイン
エ:ページフォールト → 置換え対象ページの決定 → ページイン → ページ
アウト

 
主記憶に存在しないページをアクセスすると、ページフォールトが
解説
発生します。そこで置換え対象ページを決定し、主記憶で不要なペ
ージを仮想記憶に戻します(ページアウト )
。その後、仮想記憶から必要な
ページを読み込みます(ページイン )
。 解答:ウ

基本情報技術者試験 平成 25 年春

仮想記憶管理におけるページ置換えの方式のうち、LRU 制御方式はどれか。
ア:各ページに参照フラグと変更フラグを付加して管理し、参照なしかつ変
更なしのページを優先して置き換える
イ:主記憶にある全てのページを同一の確率でランダムに選択し、置き換
える
ウ:最も長い間参照されていないページを置き換える
エ:最も長い間主記憶にあったページを置き換える

 
LRU( Least Recently Used )方式は、最後に使われてから最も
解説
長い時間が経過したページを置き換える方式です。 解答:ウ

074
2-3 記憶管理

基本情報技術者試験 平成 27 年春

仮想記憶方式のコンピュータシステムにおいて、処理の多重度を増やしたと
ころ、ページイン、ページアウトが多発して、システムの応答速度が急激に
遅くなった。 このような現象を何というか。

第 章 ●
ア:オーバレイ
2
イ:スラッシング
ウ:メモリコンパクション

ソフトウェア
エ:ロールアウト

 
仮想記憶方式のシステムにおいて、ページングが頻繁に発生し、シ
解説
ステム性能が低下する現象をスラッシングといいます。 解答:イ

075
★ ★
2
4 ファイル管理

オーエス
● OS のファイル管理
ここでは、OS の仕事の 1 つであるファイル管理の仕組みについて説明します。
コンピュータは、文書、音声、画像、動画などのさまざまな種類のデータを扱いま
す。OS は、これらのデータをファイルという単位で管理しています。ファイルは、
カテゴリごとにフォルダという入れ物を使って整理するとすっきりします。

●ディレクトリ
フォルダはディレクトリともいいます。ディレクトリの中には、ファイルだけで
なく他のディレクトリも入れることができ、図にすると以下のようになります。こ
かいそうこうぞう
のように、上から下に段々になっている形を階層構造といいます。

〈ディレクトリとファイル 〉

サブディレクトリ A ルートディレクトリ

現在操作中

B D カレントディレクトリ

C a b

階層構造の一番上にあるディレクトリをルートディレクトリ、下にあるディレク
トリをサブディレクトリと呼びます。また、現在操作の対象となっているディレク
トリをカレントディレクトリといいます。

076
2-4 ファイル管理

これも ホームディレクトリ

知っと 複数の利用者が1つのコンピュータを使用する OS では、利用
者ごとに専用のディレクトリが用意されます。各利用者がファ
イルの保存などに使用できる最上位のディレクトリをホーム

第 章 ●
ディレクトリといいます。 2

ソフトウェア
●パスの指定
コンピュータでは、どこかのディレクトリに保存されている目的のファイルにた
どりつくまでの道順を示さなければならないことがよくあります。その道順のこと
をパスといいます。
パスの表し方には、ルートディレクトリからたどった場合の道順で示す絶対パス
そうたい
と、カレントディレクトリからたどった場合の道順で示す相対パスがあります。ど
ちらも、決められた記号を使って表します。
例えば、今デパートの 5 階にいるとします。13 階にある紳士服売り場への行き
方を教えるときに、基点となる 1 階入口からの道順を教えるのが絶対パスです。今
現在いる 5 階からの行き方を教えるのが相対パスです。

〈パスで使う記号〉

記号 意味

「 / 」または「¥」 ディレクトリの区切りの記号。パスの先頭に使うときは、ルー
トディレクトリを意味する

「 .. 」 1 つ上の階層に移動。相対パスの指定でしか使われない

「.」 カレントディレクトリ

パスで使用する記号については、試験問題の文中に説明があるの
で、必ず暗記しなければいけないものではありません。ただし、
本番で迷わないためにも、どのようなものがあるかはきちんと確
認しておきましょう。

077
●絶対パス
絶対パスでは、ルートディレクトリから目的のディレクトリやファイルまでの道
順をすべて記載します。例えば下の図で、「物理レポート 」というファイルまでの
絶対パスは次のように表現します。

〈絶対パス 〉

1つ下
ルート

[¥物理]
物理 数学
1つ下

[¥物理¥物理レポート] 物理 数学
レポート 物理資料 レポート

●相対パス
相対パスは、現在作業中のディレクトリであるカレントディレクトリから目的の
ディレクトリやファイルまでの道順を記載します。例えば下の図で、カレントディ
レクトリが「物理」ディレクトリである場合、「数学レポート 」というファイルまで
の相対パスは次のように表現します。

〈相対パス 〉

[ .. ]
1つ上
ルート 1つ下

[..¥数学]
カレントディレクトリ 物理 数学

1つ下

物理 数学
レポート 物理資料 レポート [..¥数学¥数学レポート]

ココが
出る! 用語
[絶対パス名]:ルートディレクトリから対象ファイルへのパス

078
2-4 ファイル管理

ココが
スキル
出る!
→絶対パスや相対パスの読み方が分かるようにしておこう。

第 章 ●
2
基本情報技術者試験 平成 21 年春

絶対パス名¥a¥a¥b¥c をもつディレクトリがカレントディレクトリである
とき、相対パス名 .¥..¥..¥a¥b¥file をもつファイルを、絶対パス名で表現

ソフトウェア
したものはどれか。ここで、ディレクトリ及びファイルの指定方法は、次の
規則に従うものとする。
〔ディレクトリ及びファイルの指定方法〕
(1)ファイルは、
“ディレクトリ名¥…¥ディレクトリ名¥ファイル名”のよう
に、経路上のディレクトリを順に“¥”で区切って並べた後に“¥”とファイル
名を指定する。
(2)カレントディレクトリは“ . ”で表す。
(3)1 階層上のディレクトリは“ .. ”で表す。
(4)始まりが“¥”のときは、左端にルートディレクトリが省略されているも
のとする。
(5)始まりが“¥”、
“ . ”、
“ .. ”のいずれでもないときは、左端にカレントディ
レクトリ配下であることを示す“ .¥”が省略されているものとする。
ア:¥a¥b¥file       イ:¥a¥a¥b¥file
ウ:¥a¥a¥a¥b¥file   エ:¥a¥a¥b¥a¥b¥file

 
ルート
解説

a b
絶対パス
¥a¥a¥a¥b¥file
b c カレントディレクトリ

 
                              
file
相対パス
.¥..¥..¥a¥b¥file
 解答:ウ

079
基本情報技術者試験 平成 26 年秋

ファイルシステムの絶対パス名を説明したものはどれか。
ア:あるディレクトリから対象ファイルに至る幾つかのパス名のうち、最短
のパス名
イ:カレントディレクトリから対象ファイルに至るパス名
ウ:ホームディレクトリから対象ファイルに至るパス名
エ:ルートディレクトリから対象ファイルに至るパス名

 
絶対パス名は、ルートディレクトリから対象ファイルへの道順を表
解説
したパス名です。 解答:エ

080
コンピュータで
扱うデータ
★ ★ ★
3
1 2 進数

●コンピュータ内部で扱うデータ
私たちユーザは、コンピュータに文字や数字などを入力し、処理させています。
しかし、コンピュータ自身は、実はオンとオフの 2 つの状態しか表現できません。
そのため、コンピュータ内部ではオフを意味する「0」とオンを意味する「1」の 2 つ
の数字をいくつも組み合わせることで、あらゆるデータを表現します。
例えば、「 A 」という文字を入力すると、コンピュータは「01000001」という
数字に置き換えて解釈します。コンピュータにとっては、その方が分かりやすく、
また、処理を単純化できるのです。
ここからは、コンピュータ内部で扱っているデータについて学習していきます。

● 2 進数→10 進数の変換
私たちが使う 10 個の数字で表す数を 10 進数、コンピュータが使う 2 個の数字
で表す数を 2 進数といいます。
2 進数は、桁が多いほど、より多くの情報を表現できます。2 進数の 1 桁、つ
まり 0 か 1 のいずれかで表現できる情報は 2 種類だけなのに対し、2 桁では 00、
01、10、11 の 4 種類の情報を表現できます。
10 進数の数字は、1 加算するたびに 0、1、……9 と増えていき、9 に 1 加算す
ると、桁が 1 つ上がって 10 になりますが、2 進数の場合は 1 加算するたびに 0、1、
と増えていき、1 に 1 加算すると、すぐに桁が 1 つ上がって 10 になります。

〈10 進数と 2 進数〉

桁が上がる

10 進数 0 1 2 3 4 5 6 7 8 9 10

2 進数 0 1 10 11 100 101 110 111 1000 1001 1010

桁が上がる 桁が上がる 桁が上がる

2 進数を 10 進数に変換する場合、重みを使って計算すると便利です。

082
3-1 2 進数

例えば 10 進数の「1234」という数字は、ばらばらにすると「
(1 × 1000)+(2
× 100)+(3 × 10)+(4 × 1)」と表すことができます。各桁の数字に掛けてい
る 1000、100、10、1 のことを重みといいます。

〈重み〉 1 2 3 4

掛ける

第 章 ●
重み: 1000 100 10 1
3
( 10 3 ) ( 10 2 ) ( 10 1 ) ( 10 0 )

上図のように、重みはすべて 10 の累乗で表されます。この重み付けの基本とな

コンピュータで扱うデータ
る 10 のことを基数といいます。
2 進数の場合、基数は 2 となります。重みは、小数点から左に向かって「20、
21、22、……」と増えていき、小数点以下は左から右へ「2 - 1、2 - 2、2 - 3、……」
と減っていきます。各桁の数字にこの重みを掛ければ、2 進数を 10 進数に変換で
きます。

〈2 進数→10 進数の変換〉

2 進数: 1 1 0 1 ・ 0 1

掛ける

重み: 23 22 21 20 2 −1 2 −2

10 進数: 1 1
1× 2 3 + 1× 2 2 + 0 × 21 + 1× 2 0 + 0 ×̶̶ + 1× ̶̶2
21 2
= 8 + 4 + 0 + 1 +
1
0 + ̶̶
4
= 13.25

これも 2 進数の書き方

知っと 2 進数の「1101」は、そのまま「1101」と書くと 10 進数の
数値と区別がつかないので、2 進数であることを表すために
そえじ
「(1101)2」と数値をカッコで囲んで後ろに「2」を小さく添字
で付けます。同様に、8 進数であれば「8」を、16 進数であれ
ば「16」と添字を付けて表記します。

083
●10 進数→2 進数の変換
今度は逆に、10 進数を 2 進数に変換してみましょう。例えば、10 進数の「13」
を 2 進数に変換する場合、「13」を 2 進数の基数である「2」でひたすら商が 0 にな
るまで割っていき、その余りを逆から順に並べると、2 進数になります。

〈10 進数→2 進数の変換〉

余り
2 13
2 6 1
逆から順に並べる
2 3 0
2 1 1
商が0になったので
0 1
終わり
( 1 1 0 1 )2

小数部分の変換については、手順が異なりますので別々に計算して求めます。例
えば、10 進数の小数「0.25」を 2 進数に変換する場合、
「0.25」を 2 進数の基数で
ある「2」でひたすらかけ算していき、その結果の整数部分を取り出します。これを、
小数部分が 0 になるまで繰り返し、取り出した整数部分を小数第 1 位から順に並べ
ると、2 進数に変換することができます。

〈小数部分の計算
(10 進数→2 進数)〉

0.2 5 0.5
× 2 × 2

0.5 1. 0 小数部分が 0 に
なったので終わり

(0. 0 1 )2

これも 有限小数と無限小数

知っと 有限小数とは小数部が有限のもの、無限小数とは小数部が無限
のものです。例えば、10 進数の「0.1」は有限小数ですが、1
÷ 3 の計算結果である「0.333……」は無限小数です。
10 進数の有限小数を 2 進数に変換する場合、2 進数は無限小
数になることがあります。例えば、10 進数の「0.1」を 2 進数
に変換すると、
「0.000110011……」と無限小数になります。
反対に、2 進数の有限小数を 10 進数に変換すると必ず有限小
数になります。

084
3-1 2 進数

● 8 進数と16 進数
10 進数と 2 進数のほかにも、8 進数や 16 進数などが使われます。8 進数は、0、
1、…7 で桁が 1 つ上がって 10 となります。16 進数は少し注意が必要です。0、1、
…9 のあと、10 進数でいう「10~15」はアルファベットの「 A~F 」で表します。

〈8 進数と 16 進数〉
桁が上がる 桁が上がる

10 進数 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

8 進数 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20

第 章 ●
16 進数 0 1 2 3 4 5 6 7 8 9 A B C D E F 10
3

桁が上がる 桁が上がる

コンピュータで扱うデータ
8 進数と 16 進数も、2 進数⇔ 10 進数と同じ手順で変換することができます。

● 8 進数、16 進数→ 10 進数
8 進数の「512」と 16 進数の「1FB 」を 10 進数に変換します。

〈8 進数、16 進数→10 進数の変換〉

8 進数: 5 1 2 16 進数: 1 F B

基数は 基数は
重み: 82 81 80 8 重み: 16
2
16 1 16 0 16

10 進数: 5 × 64 + 1× 8 + 2 × 1 = 330 10 進数: 1× 256 + 15×16 +11×1 = 507


(F) (B)

変換後の 10 進数が分数になる場合もあります。例えば、16 進小数の「 A.3C 」


を 10 進数に変換します。
16 進数: A . 3 C

0
基数は
重み: 16 16 −1 16 −2 16

1 1 655
10 進数:10 × 1+ 3×̶̶ + 12×̶̶2 = ̶̶̶
16 16 64
(A) (C)

085
● 10 進数→ 8 進数、16 進数
10 進数の「330」を 8 進数に、
「507」を 16 進数に変換します。

〈10 進数→ 8 進数、16 進数の変換〉


余り 余り
8 330 16 507
8 41 2 16 31 B(11)
8 5 1 16 1 F(15)
0 5 0 1
( 5 1 2 )8 ( 1 F B )16

● 2 進数を8 進数、16 進数に変換


● 2 進数→ 8 進数、16 進数
2 進数の 3 桁は、23 = 8 であるため 8 進数では 1 桁で表すことができます。
そのため、2 進数の数字は、3 桁ずつ区切って変換すると 8 進数になります。
例えば、「1010.01」という 2 進数を 3 桁ずつ区切る場合、小数点を基準にし
て左側と右側でそれぞれ区切ります。また、桁が足りない場合には「0」を補い
ます。よって、
「001 010.010」となります。

< 2 進数→ 8 進数>

2 進数: 1 0 1 0 . 0 1

3 桁ずつ区切ります
基準
0 0 0

0 0 1 0 1 0 . 0 1 0

0 1 1 各桁に重みを
1×2 1×2 1×2
掛けます

8 進数: 1 2 . 2

同様に、2進数の4桁は、24 =16であるため16進数の1桁に対応しています。
そのため、2 進数の数字は、4 桁ずつ区切って変換すると 16 進数になります。

086
3-1 2 進数

< 2 進数→16 進数> 

2 進数: 1 0 1 0 . 0 1

基準
4 桁ずつ区切ります 0 0

1 0 1 0 . 0 1 0 0

各桁に重みを

第 章 ●
3 1 2
1×2 +1×2 1×2
掛けます

16 進数: A . 4
3

コンピュータで扱うデータ
● 8 進数、16 進数→ 2 進数
前述の逆を考えます。8 進数の 1 桁を 2 進数の 3 桁に、16 進数の 1 桁を 4 桁
ずつ 2 進数に変換します。

< 8 進数→2 進数>

8 進数: 1 2 . 2

それぞれの桁を3桁の2進数に

0 0 1 0 1 0 . 0 1 0

両端の余分な0をとる

2 進数: 1 0 1 0 . 0 1

<16 進数→2 進数>

16 進数: A . 4

それぞれの桁を4桁の2進数に

1 0 1 0 . 0 1 0 0

両端の余分な0をとる

2 進数: 1 0 1 0 . 0 1

087
ココが
スキル
出る!
→ 2 進数、8 進数、16 進数⇔ 10 進数の変換ができるように
しておこう。
→小数や分数の形で出題されても変換できるようにしてお
こう。

●ビットとバイト
2 進数の 1 桁をビットといい、ビットを複数並べたものをビット列といいま
す。2 桁は「2 ビット 」、8 桁は「8 ビット 」のビット列です。逆に、「4 ビット 」と
いえば、4 桁の 2 進数を指します。例えば、10 進数の 5 を 8 ビットで表すと、
00000101 です。
1 ビットでは 0 か 1 の 21=2 通りを、2 ビットでは 00、01、10、11 の 22=4
通りのビットパターンを表すことができます。つまり、n ビットでは、2n 通りです。
さらに、8 ビットのまとまりを 1 バイトといい、単位は B または Byte と書きます。
ちなみにビットは英語で「 bit 」と書きます。ビットとバイト、紛らわしいので、間
違わないように気をつけてください。

ココが
スキル
出る!
→ビット⇔バイトの変換ができるようにしておこう。

基本情報技術者試験 平成 26 年秋
1
—— を 16 進数の小数で表したものはどれか。
10 進数の分数  
32

ア:0.01   イ:0.02   ウ:0.05   エ:0.08

1 1
解説 アは、————
    × ————
1 =       
2
16 256

1 2 1
————
イは、    × ———— = ————
2 =    
16 2 256 128

088
3-1 2 進数

1 5
————
ウは、    × ————
5 =    
16 2 256

1 8 1
————
エは、    × ———— = ———
8 =    
16 2 256 32

1
——— 16 進数の小数で表したものはエです。
よって、10 進数の分数   を
32
解答:エ

第 章 ●
3
基本情報技術者試験 平成 22 年春

16 進小数 2A.4C と等しいものはどれか。

コンピュータで扱うデータ
ア:25 + 23 + 21 + 2 - 2 + 2 - 5 + 2 - 6
イ:25 + 23 + 21 + 2 - 1 + 2 - 4 + 2 - 5
ウ:26 + 24 + 22 + 2 - 2 + 2 - 5 + 2 - 6
エ:26 + 24 + 22 + 2 - 1 + 2 - 4 + 2 - 5

 
16 進 小 数 2A.4C を 2 進 数 に 変 換 す る と 0010 1010.0100
解説
1100 になります。これを 10 進数で表すと、各桁の重みを掛けて
2 + 23 + 21 + 2 - 2 + 2 - 5 + 2 - 6 になります。
5
解答:ア

基本情報技術者試験 平成 26 年秋

32 ビットで表現できるビットパターンの個数は、24 ビットで表現できる
個数の何倍か。
ア:8   
イ:16   
ウ:128   
エ:256

32
32 ビットで表現できるビットパターンの個数は、2 通り。24
解説 24
ビットで表現できるビットパターンの個数は、2 通り。よって、
32 24 32 − 24 8
2 ÷2 = 2 = 2 = 256 解答:エ

089
★ ★ ★
3
2 負数の表現

●負数の表現方法
コンピュータの内部では、0 と 1 しか扱うことができないため、負の数を扱うと
きには、マイナス符号(-)が使えません。そのため、負の数を扱う場合には、符
号を区別する必要があります。
そこで、最上位ビットを符号ビットとして、0 ならば正、1 ならば負と決めてお
き、それ以下のビット列で数字を表します。符号用ビットがあることから、符号あ
りデータと呼びます。
一方、正の数だけを扱う場合には、符号を区別する必要がないため、すべてのビッ
ト列を使って数字を表します。符号用ビットがないことから、符号なしデータと呼
びます。

ビット列の表現方法 値の例

符号なしデータ ・・・ 0,1,2・・・ (正の数)

符号ありデータ ・・・ 0,1,−1・・・ (正負の数)

符号ビット
正:0
負:1

符号ありデータは、次の 2 種類の表し方があります。

●絶対値表現
正数、負数ともに数字の絶対値を 2 進数で表し、最上位の符号ビットには、正な
らば 0、負ならば 1 をセットします。ただし、この表現方法では、0 に対しても符
号ビットを付けることになるため、正のゼロと負のゼロの 2 種類が存在します。

090
3-2 負数の表現

絶対値表現 ・・・

符号ビット
正:0 絶対値を表すビット
負:1

●補数表現
補数とは、ある数に対して「基準となる数」から引いた値のことです。2 進数には、

第 章 ●
1 の補数と 2 の補数がありますが、現在のコンピュータの多くが 2 の補数を使って
います。2 の補数は、ある数に対して「1 つ上の桁の一番小さい数」から引いて求め 3
ます。
10 進数の「- 5」を、8 ビットの 2 の補数で表現する手順は次の通りです。

コンピュータで扱うデータ
1.「5」を 2 進数に変換する
  「101」
2. 8 ビットのデータなので、空いているビットに 0 を入れる
  「00000101」
3. 基準となる数(9 ビットの一番小さい数)から引き算する
  「100000000」-「00000101」=「11111011」

よって、
「- 5」を、2 の補数では「11111011」と表します。

2 の補数の求め方には、もっと簡単な方法があります。元のビット列を反転
させて、1 を足すというやり方です。反転とは、すべての 0 を 1 に、1 を 0 に置
き換えることです。例えば、10 進数の「- 5」を表す場合、8 ビットで表現した
「00000101」を反転させて 1 を足すと「11111011」となり、上の手順と同じ
結果が得られます。

< 2 の補数>

5 0 0 0 0 0 1 0 1

ビット列を反転
1 1 1 1 1 0 1 0
1を足します
−5 1 1 1 1 1 0 1 1

091
2 の補数を使うと、引き算の計算を、負の数を足し算することで処理できます。
例えば、5 - 5 = 5 +(- 5)として計算します。実際に、足して 0 になることを確
認してみましょう。

  00000101
+ 11111011
  100000000 = 0 ←最上位は無視

 そのため、多くのコンピュータは、負の数を表すのに 2 の補数を使っています。

● 8 ビットで表現できる数値の範囲
コンピュータでよく使われる 8 ビットで表せるデータの範囲は、以下のとおり
です。

<8ビットで表せるデータの範囲>

種類 2 進数 10 進数

符号なしデータ 00000000~11111111  0~255

符号ありデータ 00000000~01111111(正の数)  0~127


(2の補数) 11111111~10000000(負の数) − 1~− 128

ココが
スキル
出る!
→2の補数を求められるようにしておこう。

基本情報技術者試験 平成 20 年秋

2 の補数で表された負数 10101110 の絶対値はどれか。


ア:01010000   イ:01010001
ウ:01010010   エ:01010011

 
2 の補数で表された負数 10101110 の絶対値は、2 の補数を求め
解説
ることでわかります。各ビットを反転させ、1 を足せばよいので、
01010001 + 1 = 01010010 となります。       解答:ウ

092
3-2 負数の表現

基本情報技術者試験 平成 17 年秋

多くのコンピュータが、演算回路を簡単にするために補数を用いている理由
はどれか。
ア:加算を減算で処理できる。   
イ:減算を加算で処理できる。
ウ:乗算を加算の組合せで処理できる。
エ:除算を減算の組合せで処理できる。

第 章 ●
補数を用いる理由は、減算を加算で処理できるからです。元の数と
解説
絶対値の等しい負数を表す 2 の補数を用いることが多いです。   3
                             解答:イ

コンピュータで扱うデータ

093
★ ★ ★
3
3 シフト演算

●シフト演算の体系
ここでは、コンピュータがかけ算、割り算をどのように計算するかを説明します。
コンピュータはビット列を左右にずらすことでかけ算や割り算を計算します。左
にずらせばかけ算、右にずらせば割り算です。2 進数では、左に 1 つビットをずら
せば 2 倍に、右に 1 つビットをずらせば 2 で割ることになります。ビットを左右
にずらすことで、かけ算や割り算をする方法を、シフト演算といいます。
「シフト 」
は「ずらす」という意味です。
シフト演算には、符号を考慮しない論理シフト、符号を考慮する算術シフトがあ
ります。論理シフトは、符号なしの 2 進数を扱うのに適しています。算術シフトは
符号付き 2 進数を扱うのに適しています。

〈シフト演算の体系〉

論理左シフト

論理シフト

(符号を考慮しない) 論理右シフト

シフト演算

算術左シフト

算術シフト

(符号を考慮する) 算術右シフト

●論理シフト
論理シフトとは、符号を考慮しないシフト演算です。かけ算や割り算をするとき
は、2 進数のビット列を左または右にずらします。ずらすことでビット列からあふ
れてしまったビットは捨てられ、空いたビットには 0 が入ります。

●論理左シフト
2 進数のビット列を n ビット左に移動すると、元の数の 2n 倍になります。

094
3-3 シフト演算

〈論理左シフト 〉

左へ2ビット
ずらす
0 0 0 0 1 0 0 0 8

2 2 = 4倍

0 0 0 0 1 0 0 0 0 0 32

0 0

第 章 ●
●論理右シフト 3
2 進数のビット列を n ビット右にずらすことで、元の数の 2 − n 倍になります。

コンピュータで扱うデータ
〈論理右シフト 〉
右へ2ビット
ずらす
0 0 0 0 1 0 0 0 8

1
2 −2 =   倍
4
0 0 0 0 0 0 1 0 0 0 2

0 0

●算術シフト
算術シフトでは符号を考慮します。符号は一番左のビットで表します。一番左の
ビットが 0 のときは、正の数か 0 であることを表し、一番左のビットが 1 のときは、
負の数であることを表します。
算術シフトを行うときは、一番左の符号ビットはそのままの位置に固定したまま
動かさず、それより右にある他のビット列の範囲を左または右にずらします。左シ
フトと右シフトでは、空いたビットを埋める方法が異なります。

●算術左シフト
符号ビットは固定したまま動かさず、他のビットを左にずらします。左のあふ
れたビットは捨てられ、右の空いたビットには 0 が入ります。

095
〈算術左シフト 〉

左へ2ビット
ずらす
1 1 1 1 0 0 0 0 −16

2 2 = 4倍

1 1 1 1 0 0 0 0 0 0 −64

0 0
符号ビットは
固定

●算術右シフト
同じく符号ビットは固定したまま動かさず、他のビットを右にずらします。右
のあふれたビットは捨てられ、左の空いたビットには符号ビットと同じ数が入
ります。

〈算術右シフト 〉 右へ2ビット
ずらす
1 1 1 1 0 0 0 0 −16

1
2 −2 =   倍
4
1 1 1 1 1 1 0 0 0 0 −4

1 1
符号ビットは
固定

●シフト演算と加算の演算
シフト演算では、2n 倍や 2 − n 倍のかけ算・割り算しか計算できません。それ以
外の値でかけ算・割り算する場合は、シフト演算と足し算を組み合わせて計算する
ことになります。
「22 + 21 + 1」
例えば 7 倍のかけ算をしたい場合には、7 を 2 のべき乗で分解して
と表して、シフト演算する部分と加算部分を区別して計算します。

x × 7 = x ×(22 + 21 + 1)
   =( x × 22)+( x × 21)+( x × 1)

096
3-3 シフト演算

つまり、x を 2 ビット左にシフト演算したもの(= 22 倍)、x を 1 ビット左にシ


フト演算したもの、そして x の 3 つの値を足し合わせることで、x の 7 倍の値を求
めることができる、というわけです。

ココが
スキル
出る!
→いろいろなシフト演算ができるようにしておこう。

第 章 ●
3

基本情報技術者試験 平成 21 年春

コンピュータで扱うデータ
数値を 2 進数で格納するレジスタがある。このレジスタに正の整数 x を設定
した後、
“レジスタの値を2ビット左にシフトして、x を加える”操作を行うと、
レジスタの値は x の何倍になるか。ここで、シフトによるあふれ( オーバフ
ロー)は、発生しないものとする。
ア:3   イ:4   ウ:5   エ:6

2
x を 2 ビット左にシフトすると 2 x になります。その後 x を加える
解説 2
ので、操作後の値は 2 x + x = 5x です。つまり、元の値 x の 5 倍
となります。                        解答:ウ

基本情報技術者試験 平成 24 年秋

8 ビ ッ ト の 2 進 数 11010000 を 右 に 2 ビ ッ ト 算 術 シ フ ト し た も の を、
00010100 から減じた値はどれか。ここで、負の数は 2 の補数表現によ
るものとする。
ア:00001000   イ:00011111   
ウ:00100000   エ:11100000

11010000 を 右 に 2 ビ ッ ト 算 術 シ フ ト す る と、11110100
解説
になります。引き算は、2 の補数に変換した数を足し算すれば求
め る こ と が で き ま す。00010100 - 11110100 = 00010100 +
00001100 = 00100000 解答:ウ

097
★ ★
3
4 小数の表現

●固定小数点表示と浮動小数点表示
小数点を含む数のことを小数といいます。コンピュータ内部で扱えるデータは 0
と 1 だけなので、小数点を表す手段がありません。そこで、小数点を使わずに小数
を表すための方法として、固定小数点表示と浮動小数点表示があります。

〈固定小数点表示〉          〈浮動小数点表示〉

0.00000015    0.15 × 10 − 6

どちらも同じ値を表しますが、左側のように、小数点の位置を「一番左の 0 の右側」
のように固定する方法を固定小数点表示といいます。ただし、この方法だと、小数
点以下の 0 が多くなればなるほど、桁もたくさん必要になってきます。

〈固定小数点表示〉

小数点の位置を固定

一方、右側のように、指数を使う方法を浮動小数点表示といいます。
これがなぜ
「浮
動」なのかというと、指数を増やしたり減らしたりすることで、小数点の位置が動
くからです。例えば、0.15 × 10 - 6 は、指数− 6 を増減させて、別の書き方もで
きます。
0.015 × 10 - 5
0.15 × 10 - 6
1.5 × 10 - 7
15 × 10 - 8

浮動小数点表示を使うと、0 の桁を省略することができるので、広い範囲の数
値を少ない桁数で表現できます。これはできるだけビットの数を節約したいコン
ピュータに向いている表示方法です。

098
3-4 小数の表現

●浮動小数点数の書き表し方
浮動小数点表示をもう少し詳しく見ていきましょう。浮動小数点表示は、

かすう きすう
 仮数 × 基数 指数

という書き表し方をします。
例えば、10 進数で 3 桁の数値を表す場合、固定小数点表示で表現可能な最大値
は 999 です。

第 章 ●
これに対して、浮動小数点表示では、あらかじめ基数を 10 にするという約束を
しておき、3 桁のうち 2 桁を仮数、1 桁を指数に割り当てれば、最大 99 × 109 ま 3
で表現可能です。
ま た、 指 数 部 を、 符 号 あ り デ ー タ と し て 負 数 も 扱 え る よ う に す れ ば、

コンピュータで扱うデータ
0.000000001 のような絶対値の小さな値も表現できます。
浮動小数点表示では、下図のように符号部と仮数部、指数部にそれぞれビットを
割り当てます。基数はあらかじめ決めるのでビットの割当てはありません。一般的
なコンピュータでは 2 進数の「2」や 16 進数の「16」が基数とされています。

〈浮動小数点表示〉

± 仮数 × 基数 指数

・・・ ・・・

符号部 指数部 仮数部

これも 有効桁数
(有効数字)

知っと 有効桁数とは、数値全体の桁数のことで、0 以外の数字がある
一番上の桁から、一番下の桁の数字(0 も含む)までの桁数を
指します。42195 の有効桁数は 5 桁、42.195 も 5 桁ですが、
0.015の有効桁数は2桁、9.70は3桁、0.01500は4桁です。

099
●浮動小数点数の正規化
浮動小数点表示において、仮数と指数の組合せは、

0.015 × 10 - 5
0.15 × 10 - 6
1.5 × 10 - 7
15 × 10 - 8

このように何通りもありますが、小数点のすぐ右に 0 以外の数字が来るように書
くことを正規化といいます。

〈浮動小数点数の正規化〉 ① 0.0015 × 10 −4
正規化

② 0.15 × 10 −6

仮数部を 0.数字 で表現する

①も②も同じ数を表していますが、②のように桁の大小はできるだけ指数部で表
現したほうが、仮数部で誤差なく、より詳しい数値を表すことができます。
例えば、0.00153265 という数を浮動小数点表示で表したい場合、仮数部の
有効桁数が 4 桁ならば、①では 0.0015 までしか表せませんが、②では 0.1532
とより詳しく表すことができます。
正規化を行うには、「0.15」のように小数点のすぐ右に 0 以外の数字が来るよう
に指数を変更します。正規化を行えば、限られたビット数で有効数字の桁数を最大
に保ち、より詳しい数値表現ができるようになります。

ココが
出る! 用語
[正規化]:有効数字の桁数を最大にすることで、より詳しい数
値を表せる

100
3-4 小数の表現

基本情報技術者試験 平成 21 年秋

実数 a を a = f × r と表す浮動小数点表示に関する記述として、適切なもの
e

はどれか。
ア:f を仮数、e を指数、r を基数という。
イ:f を基数、e を仮数、r を指数という。
ウ:f を基数、e を指数、r を仮数という。
エ:f を指数、e を基数、r を仮数という。

第 章 ●
浮動小数点表示では、仮数×基数指数という書き表し方をします。
解説
  解答:ア 3

コンピュータで扱うデータ
基本情報技術者試験 平成 23 年秋

10 進数- 5.625 を、8 ビット固定小数点形式による 2 進数で表したもの


はどれか。ここで、小数点位置は 3 ビット目と 4 ビット目の間とし、負数に
は 2 の補数表現を用いる。

7 6 5 4 3 2 1 0

小数点の位置

ア:01001100  イ:10100101
ウ:10100110  エ:11010011

10 進数- 5.625 を2進数に変換します。整数部分を変換すると、


解説
5 →(101)
2、小数部分を変換すると、0.625 →(0.101)
2 となり

ます。よって、10 進数 5.625 →(101.101)


2 となります。小数点位置が

3ビット目と4ビット目の間になるように0を追加して位置を合わせます。

101.101 → 0101.1010

負数は2の補数表現を用いるので、0101.1010 をビット反転して1を
加えると、1010.0110 となります。 解答:ウ

101
★ ★ ★
3
5 誤差

●誤差とは
コンピュータの内部では、2 進数のあらかじめ決められた桁数で値を表現するた
め、実際の値を正確に表せない場合があります。そのため、正確に表せない値は、
決められた桁数の中で表現できる近似値に置き換えられてしまいます。このように、
実際の値とコンピュータが取り扱う値に生じる差のことを誤差といいます。誤差に
は、発生原因によっていくつかの種類があります。

●丸め誤差
ししゃごにゅう
丸め誤差は、限られた桁数の範囲で数値を表す際に、四捨五入や切上げ、切捨て
などを行うことで発生する誤差です。
例えば、10 進数の 0.1 を 2 進数で表そうとすると、0.000110011…となり、
限られた桁数に収めることができません。例えば、小数点以下 8 桁まで扱う処理で
は 0.00011001 となり、9 桁目以降が切り捨てられてしまいます。ここで生じ
る 0.000110011…と 0.00011001 の差が、丸め誤差です。

●打切り誤差
打切り誤差は計算を途中で打ち切ることによって生じる誤差です。
例えば、円周率を求める場合、3.1415926535…といつまでも計算が続くの
で、あらかじめ決めておいた桁数で処理を途中で打ち切って、計算結果を 3.14 と
して扱う場合があります。ここで生じる 3.1415926535…と 3.14 の差が、打
切り誤差です。

●情報落ち
情報落ちとは、絶対値の大きな値と絶対値の小さな値の足し算や引き算を行った
ときに、小さな値の桁情報が無視されてしまい、計算結果に反映されないために発
生する誤差です。コンピュータで扱う浮動小数点数では、仮数部に保持できる桁

102
3-5 誤差

数があらかじめ決められています。そのため、大きな値と小さな値の足し算や引き
算をすると、有効な数字をもった桁が多くなりすぎるため、正規化する際に下部の
桁が切り捨てられてしまうのです。
例えば、数値を扱うときに有効桁数が 4 桁のプログラムで、4.567 × 103 +
4.567 × 10 − 2 という足し算をしてみます。まず、実際の値を計算してみると、
4567 + 0.04567 = 4567.04567 となります。しかし、プログラムでは、指
数部を揃えて計算するので、4.567 × 103 + 0.00004567 × 103 = 4.567 ×
103 と仮数部の下部の桁が切り捨てられてしまい、実際の値と 0.04567 の誤差

第 章 ●
が生じます。これが情報落ちです。
3

●桁落ち

コンピュータで扱うデータ
桁落ちは、絶対値のほぼ等しい 2 つの数の引き算を行ったときに、有効桁数が減
少するために発生する誤差です。
例えば、数値を扱うときに有効桁数が 4 桁のプログラムで、1.234 ×10 −1 −
1.233×10−1という引き算をしてみます。0.1234−0.1233=0.0001となり、
有効桁数が 4 桁から 1 桁に減少してしまいます。このように有効桁が減る
(落ちる)
ことを桁落ちといいます。有効桁数が減ると、もともとの有効桁数より値の精度が
下がってしまうため誤差の原因となります。

●桁あふれ
桁あふれは、計算結果の桁数がコンピュータが扱えるビット数を超えることに
よって発生する誤差です。ビット数の最大値を上回る桁あふれをオーバフロー、最
小値を下回る桁あふれをアンダフローといいます。

ココが
出る! 用語
[丸め誤差]:切捨て、切上げ、四捨五入などで生じる誤差
[打切り誤差]:計算を途中で打ち切ることで生じる誤差
[情報落ち]:小さな数の桁情報が計算結果に反映されず生じる
誤差

103
ココが
出る! 用語
[桁落ち]:ほぼ等しい値の引き算で有効桁数が減るために発生
する誤差
[桁あふれ]:表現できる範囲を超えることで発生する誤差

基本情報技術者試験 平成 27 年春

桁落ちの説明として、適切なものはどれか。
ア:値がほぼ等しい浮動小数点数同士の減算において、有効桁数が大幅に
減ってしまうことである。
イ:演算結果が、扱える数値の最大値を超えることによって生じるエラーの
ことである。
ウ:浮動小数点数の演算結果について、最小の桁よりも小さい部分の四捨五
入、切上げ又は切捨てを行うことによって生じる誤差のことである。
エ:浮動小数点数の加算において、一方の数値の下位の桁が結果に反映され
ないことである。

桁落ちは、絶対値のほぼ等しい2つの数の引き算を行ったときに、
解説
有効桁数が減少することです。 解答:ア

基本情報技術者試験 平成 20 年秋

浮動小数点演算において、絶対値の大きな数と絶対値の小さな数の加減算を
行ったとき、絶対値の小さな数の有効けたの一部又は全部が結果に反映され
ないことを何というか。
ア:打切り誤差   
イ:けた落ち
ウ:情報落ち    
エ:絶対誤差

絶対値の小さな数が演算結果に反映しない誤差は、情報落ちです。
解説
                          解答:ウ

104
3-6 論理演算と論理回路
★ ★ ★
3
6 論理演算と論理回路

●論理演算とは
コンピュータでは、さまざまな計算や処理を行いますが、それらは算術演算か論
理演算によって実行されています。算術演算とは、これまで説明してきたような足

第 章 ●
し算や引き算などです。
もう一方の論理演算とは、
「ある事柄が○か×か」を判断することです。ここでも、 3
コンピュータは 0 と 1 しか理解できないので、○のときは 1、×のときは 0 を代わ
りに使います。

コンピュータで扱うデータ
●論理回路と表記法
コンピュータの中には論理演算を行うための論理回路が組み込まれています。回
路は電気信号を使って演算をする装置で、コンピュータは異なる種類の論理回路を
組み合わせることで複雑な処理を行います。論理回路はひと目で分かりやすいよう
ミル
に、MIL 記号と呼ばれる記号を使って図にします。また条件と答えを一覧にした
しんりちひょう
真理値表や、当てはまる部分に色を塗って図で表すベン図も使われます。

〈 MIL 記号〉       〈真理値表〉         〈ベン図〉

X Y X+Y X Y
0 0 0
X
Y 0 1 1

1 0 1

1 1 1

● 3 つの基本回路
ろんりわ オア ろんりせき アンド
論理演算のもっとも基本的な演算ルールが、論 理和( OR )、論 理積( AND )、
ひてい ノット
否定( NOT )の 3 つの論理演算です。

●論理和( OR )
論理和は、X か Y のどちらか一方が 1 ならば、答えが 1 になる論理演算です。

105
逆に言えば、どちらも 0 のときだけ、答えは 0 になります。
「+」記号を使って、
X と Y の論理和は「 X + Y 」というふうに書きます。

〈論理和〉
いずれか一方でも1の場合、1

X Y X+Y X Y

0 0 0 OR 演算
0 1 1
1 0 1
X
1 1 1 Y OR 回路

真理値表の読み方を説明しておきましょう。一番上の行は「 X が 0 で、Y が 0
なら、論理和である X+Y は 0」となることを表しています。
同様に、2 行目は「 X が 0 で、Y が 1 なら、X + Y は 1」
、3 行目は「 X が 1 で、
Y が 0 なら、X + Y は 1」、4 行目は「 X が 1 で、Y が 1 なら、X + Y は 1」です。

●論理積( AND )
論理積は、X と Y が、どちらも 1 だった場合に、答えが 1 になる論理演算です。
どちらかが 0 だったり、どちらも 0 だったりすると、答えは 0 になります。論
理積は「・」記号を使って書き表します。

〈論理積〉
どちらも1の場合、1

X Y X・Y X Y

0 0 0 AND 演算
0 1 0
1 0 0
1 1 1
X
Y
AND 回路

●否定( NOT )
否定は、X が 0 であれば、答えは反対の 1 になり、逆に X が 1 であれば、答え
は 0 になる論理演算です。否定は「-」記号を使って書き表します。

106
3-6 論理演算と論理回路

〈否定〉
1でない場合、1

X X X

0 1 NOT 演算
1 0

X NOT 回路

●基本回路の組合せ

第 章 ●
論理和、論理積、否定の 3 つが基本的な論理演算ですが、これらを組み合わせた 3
論理演算に次のようなものがあります。

コンピュータで扱うデータ
はいたてきろんりわ エックスオア
●排他的論理和( XOR )
排他的論理和は、X と Y が異なるときに答えが 1 になり、同じときには 0 にな
る論理演算です。排他的論理和は「+」記号を使って書き表します。

〈排他的論理和〉
一致しない場合、1

X Y X+Y X Y

0 0 0 XOR 演算
0 1 1
1 0 1
X
1 1 0 Y XOR 回路

ノ ア
●否定論理和( NOR )
否定論理和は、X と Y のどちらか一方でも 1 のときに、答えが 0 になる論理演
算です。論理和と否定の組合せですので、記号も「+」と「-」を組み合わせて
書き表します。

〈否定論理和〉
いずれか一方でも1の場合、0

X Y X+Y X Y

0 0 1 NOR 演算
0 1 0

1 0 0
X
1 1 0 NOR 回路
Y

107
ナ ン ド
●否定論理積( NAND )
否定論理積は、X と Y がどちらも 1 の場合に答えが 0 になる論理演算です。論
理積と否定の組合せですので、記号も「・」と「-」を組み合わせて書き表します。

〈否定論理積〉
どちらも1の場合、0

X Y X・Y X Y

0 0 1 NAND 演算
0 1 1

1 0 1

1 1 0
X
Y
NAND 回路

●ド・モルガンの法則
論理演算の公式の中でも特に重要なもので、論理式を変形するときに用いられま
す。覚えておくと、ベン図を書かずに短時間で試験問題に解答することができます。

<ド・モルガンの法則>

X・Y = X+Y 論理積全体の否定は、それぞれの否定の論理和

X+Y= X・Y 論理和全体の否定は、それぞれの否定の論理積

ココが
出る! 用語
[論理和( OR )]:どちらか一方が 1 であれば、答えが 1
[論理積( AND )]:両方が 1 のときだけ、答えが 1
[否定( NOT )]:0 ならば 1、1 ならば 0
[排他的論理和( XOR )]:異なっていれば、答えが 1
[否定論理和( NOR )]
:論理和の否定で、どちらか一方でも 1
であれば、答えが 0
[否定論理積( NAND )]
:論理積の否定で、
両方が 1 のときだけ、
答えが 0

108
3-6 論理演算と論理回路

ココが
スキル
出る!
→論理回路にデータを入力した場合、どんなデータが出力され
るか理解しておこう。
→ド・モルガンの法則を使って、論理式を変換できるようにし
ておこう。

第 章 ●
基本情報技術者試験 平成 26 年秋
3
図の論理回路と等価な回路はどれか。

コンピュータで扱うデータ
A
Y
B

ア:     
A
Y  イ:      
A
Y
ウ:     
A   エ:
Y
A
Y
B B B B

A と B それぞれに 0 と 1 を入力した場合、論理回路上の①~③およ
解説
び Y の出力は以下のとおりです。

A

Y
B

A B ①( A NAND B ) ②( A NAND ①) ③(① NAND B ) Y(② NAND ③)

0 0 1 1 1 0
0 1 1 1 0 1

1 0 1 0 1 1

1 1 0 1 1 0

Y の結果から、同じ出力となる等価回路は、ウの XOR 論理回路です。


解答:ウ

109
基本情報技術者試験 平成 21 年秋

二つの入力と一つの出力をもつ論理回路で、二つの入力 A、B がともに 1 の


ときだけ、出力 X が 0 になるものはどれか。

A
X
B

ア:AND 回路
イ:NAND 回路
ウ:OR 回路
エ:XOR 回路

A と B がどちらも 1 の場合に答えが 0 になる論理回路は、NAND 回


解説
路です。                      解答:イ

基本情報技術者試験 平成 23 年特別

( A +B      と等しいものはどれか。
論理式   )
・( A +C ) ここで、・は論理積、+
は論理和、X はX の否定を表す。
ア:A・B + A・C      
イ:A・B + A・C
( A +B )
ウ: ・( A +C )   
エ:( A +B )
・( A +C )

ド・モルガンの法則を利用して論理式を変換します。
解説

( A+B )・( A+C )=( A+B )+( A+C )

=  A・B  +  A・C

=  A・B  +  A・C


解答:ア

110
3-7 半加算器と全加算器
★ ★
3
7 半加算器と全加算器

●加算器とは
シーピーユー
コンピュータの足し算は、CPU の中にある加算器という回路によって計算され
ます。

第 章 ●
加算器には、1 桁の 2 進数を足し算する半加算器と、2 桁以上の 2 進数を足し算
する全加算器の 2 種類があります。 3

コンピュータで扱うデータ
●半加算器
半加算器は、2 進数 1 桁の足し算をする回路です。1 桁の足し算は、次の 4 つの
パターンの計算があります。

〈半加算器のイメージ 〉

① ② ③ ④
0 0 1 1
+ 0 + 1 + 0 + 1

0 1 1 10

①から③の計算パターンでは、合計の値が 1 桁ですみますが、④のときは桁上が
りして、2 桁になります。半加算器で④の計算結果を記録するためには、下の図の
ように合計値( S )の 1 桁目の値と、桁上がりした 2 桁目の値( C )の 2 つの値を記
サ ム
録しておかなくてはなりません。ちなみに、S は英語で「合計」を表す「 Sum 」の頭
キャリー
文字で、C は英語で「桁上がり」を表す「 Carry 」の頭文字です。

〈半加算器の計算パターン 〉

X 入力 出力 X Y
+Y ① 0 0
X C
半加算器 ② 0 1
CS Y S
③ 1 0
④ 1 1
桁上がり 合計値

111
つまり、X と Y を足し算した合計を、2 桁の数字 C(2 桁目)と S(1 桁目)で表すと、
① 0 + 0 = 0 のときは、X が 0、Y が 0、答えである C も S も 0 となります。④ 1
+ 1 = 10 のときは、X が 1、Y が 1 で、答えである C は 1、S は 0 ということに
なります。
このように X と Y の加算結果を C と S で表した一覧を、3-6 で学んだ真理値表に
すると、下のようになります。

〈半加算器の真理値表〉

入力 出力 X Y C S

① 0 0 0 0
X C
半加算器 ② 0 1 0 1
Y S
③ 1 0 0 1

④ 1 1 1 0

  AND XOR

ア ン ド
桁上がりの値である C を見ると、これは X と Y の論理積( AND )になっています。
エックスオア
また、1桁目の値であるSは、XとYの排他的論理和( XOR )になっています。そこで、
半加算器は、CPU の中の論理積の回路と排他的論理和の回路を組み合わせて利用
することで、2 進数 1 桁の計算を行っています。半加算器の回路を MIL 記号を使っ
て図にすると、このようになります。

 〈半加算器の回路〉

AND

X
C
Y

XOR

●全加算器
2 桁以上の 2 進数を足し算すると、2 桁目以上の桁では、下の桁からの桁上がり
を足さなければならない場合があります。下の桁からの桁上がりを加算できる加算
器を全加算器といいます。1 桁目には桁上がりがありませんので半加算器を使い、
全加算器は 2 桁目以上の桁の足し算に使われます。

112
3-7 半加算器と全加算器

〈2 桁以上の足し算の桁上がり〉

足し算は下位の桁からの
桁上がりを考慮する必要
1 1 がある

1 1
+ 1 1

1 1 0

第 章 ●
全加算器 半加算器 3
最下位以外で使われる 最下位で使われる

コンピュータで扱うデータ
1 桁目の X と Y がどちらも 1 だと、合計が 10 となって 2 桁目に桁上がりします。
この下の桁から桁上がりした「1」が、Z として 2 桁目の足し算に加えられるのです。
1 桁目の足し算は半加算器に任せるので、ここでは考えません。全加算器では 2
桁目以上専門です。
2 桁目の X と Y に、1 桁目からの桁上がりである Z を足した合計値を S、2 桁目
の足し算で桁上がりが出たら、その桁上がりを C とします。

〈全加算器の桁上がり〉

下位からの桁上がり
1 Z
1 1 X X
+ 0 1 + Y Y

1 0 0 C S S

上位への桁上がり 合計値

全加算器の計算パターン全部をまとめて、真理値表で表してみましょう。

113
〈全加算器の真理値表〉
X Y Z C S

入力 出力 0 0 0 0 0

0 1 0 0 1
X 1 0 0 0 1
C
Y 全加算器 1 1 0 1 0
S
Z 0 0 1 0 1

0 1 1 1 0

1 0 1 1 0

1 1 1 1 1

全加算器の論理回路は、半加算器と論理和の回路を組み合わせたものになります。
ミ ル
全加算器の回路を MIL 記号を使って図にすると、このようになります。

〈全加算器の回路〉
OR

X
半加算器 C
Y

半加算器
Z S

ココが
出る! 用語
[半加算器]:上位への桁上がりのみ考慮。最下位の桁で用いら
れる
[全加算器]:下位からの桁上がりと上位への桁上がりを考慮、
最下位以外の桁で用いられる
スキル
→半加算器、全加算器の計算方法について理解しておこう。

114
3-7 半加算器と全加算器

基本情報技術者試験 平成 23 年特別

図に示す 1 けたの 2 進数 x と y を加算し、z(和の 1 けた目)及び c(けた上げ)


を出力する半加算器において、A と B の素子の組合せとして、適切なものは
どれか。

x
A z(和の1けた目)
y

B c(けた上げ)

第 章 ●
3
A B
ア 排他的論理和 論理積
イ 否定論理積 否定論理和 半加算器の 1 けた目は x と

コンピュータで扱うデータ
解説
ウ 否定論理和 排他的論理和 y の排他的論理和、けた上
エ 論理積 論理和 がりは論理積です。  解答:ア

基本情報技術者試験 平成 21 年秋

図は全加算器を表す論理回路である。図中の x に 1、y に 0、z に 1 を入力


したとき、出力となる c(けた上げ数)、s(和)の値はどれか。

x C
y 全加算器
z S

c s
ア 0 0
イ 0 1
ウ 1 0
エ 1 1

s は x + y + z を足し算したときの 1 けた目の値、c はけた上がり


解説
の値になります。x =1、y =0、z =1 のとき、加算すると 1 + 0 +
1=10(2 進数)となり、1 けた目の値、つまり和が 0 で、けた上がりが 1。
よって、c = 1、s = 0 となります。            解答:ウ

115
★ ★
3
8 文字データの表現

●文字コードの種類
コンピュータ内部ではすべてのデータを 0 と 1 だけで表現しており、例えば「 A
という文字は 01000001 という数字で扱っている」という話はすでにしました。
しかし、「 A 」を表す数字が「01000001」であるかどうかは、使っているコン
オーエス
ピュータや OS が、どのような文字コードを採用しているかによって異なります。
文字コードとは、文字 1 つ 1 つに異なるコード(番号)を割り振った一覧表のこと
です。つまり、文字コードが異なれば、「 A 」が「01000001」でない場合もある
わけです。
コンピュータで使われている代表的な文字コードは以下のとおりです。

〈文字コードの種類〉

種類 特徴
ア ス キ ー
ASCII コード 米国規格協会が制定した 7 ビットの文字コード。半角
英数字は表現できるが、漢字は表現できない
ジ ス
シフト JIS コード 漢字やひらがなを表現できる。日本のパソコンで最も
使われている文字コード
イーユーシー ユニックス
EUC UNIX コンピュータで使用される文字コード。UNIX
上で漢字を扱える
ジ ス
JIS コード 電子メールのやりとりに使用される文字コード
ユ ニ コ ー ド アイエスオー
Unicode 国際標準化機構( ISO )で規格化されたあらゆる言語
の文字をまとめて表現できる文字コード

●フォントの種類
コンピュータの内部では文字コードを使いますが、画面表示や印刷のときには、
人間が読める文字の形に変換する必要があります。文字コードにどんな形の文字を
表示するかを決めた書体データをフォントといいます。
データ形式により、フォントは大きく 2 種類に分けられます。

116
3-8 文字データの表現

〈フォントの種類〉

種類 特徴 特徴

ビットマップ 文字の形を画素ごとに0と1で表示  
フォント 拡大・縮小で形が崩れる
小さい文字なら、データ量が少なく表示も速い

アウトライン 文字の輪郭を線のデータとして保持  
フォント 拡大・縮小に適している

第 章 ●
輪郭データと大きさから計算して表示する分、
時間がかかる 3

コンピュータで扱うデータ
ココが
用語
出る! ア ス キ ー
[ ASCII コード ]:半角英数字を表現できる
ジ ス
[シフト JIS コード ]:漢字を表現できる
イーユーシー
[ EUC ]:UNIX で使用される
ジ ス
[ JIS コード ]:電子メールで使用される
ユ ニ コ ー ド
[ Unicode ]
:あらゆる言語を表現できる
スキル
→ビットマップフォントとアウトラインフォントの特徴から、
それぞれ利用に向くケースを理解しておこう。

基本情報技術者試験 平成 19 年春

UCS-2( Unicode )を説明したものはどれか。


ア:JIS から派生したコード体系であり、英数字は 1 バイト、漢字は 2 バイ
トで表現する。
イ:主に UNIX で使用するコード体系であり、英数字は 1 バイト、漢字は 2
バイトで表現する。
ウ:すべての文字を 1 バイトで表現するコード体系である。
エ:すべての文字を 2 バイトで表現するコード体系であり、多くの国の文字
体系に対応できる。

117
アはシフト JIS コード、イは EUC コード、ウは ASCII コードの説
解説
明です。                      解答:エ

基本情報技術者試験 平成 18 年春

次の表は JIS コード表の一部である。二つの文字“ A ”と“2”をこの順に


JIS コードで表したものはどれか。

0 0 0 0
0 0 0 1
0 1 1 0
1 0 1 0
b 8 b7 b 6 b 5 b4 b 3 b 2 b1 行 列 1 2 3 4

0 0 0 1 1 1 A

0 0 1 0 2 2 B

0 0 1 1 3 3 C

ア:00010100 00100011
イ:00110010 01000001
ウ:01000001 00110010
エ:01000010 00110010

コード表の b の添字はビット列のけたを表すので上位ビットから降
解説
順 b8~b1 で並べます。A は 01000001、2 は 00110010 とな
ります。 解答:ウ

118
3-8 文字データの表現

基本情報技術者試験 平成 27 年春

ビットマップフォントよりも、アウトラインフォントの利用が適しているケ
ースはどれか。
ア:英数字だけでなく、漢字も表示する。
イ:各文字の幅を一定にして表示する。
ウ:画面上にできるだけ高速に表示する。
エ:文字を任意の倍率に拡大して表示する。

第 章 ●
アウトラインフォントは、文字の輪郭を線のデータとして保持して
解説 3
いるため、拡大表示に適しています。 解答:エ

コンピュータで扱うデータ

119
★ ★
3
9 マルチメディア

●マルチメディアとは
コンピュータでは、文字データのほかにも画像や動画、音声など、さまざまな種
類のデータを扱うことができます。複数の種類のデータをひとまとめに扱ったもの
をマルチメディアといいます。インターネット上の Web サイトなどは、まさにマ
ルチメディアです。

〈 Web サイト 〉

画像 T IT L E

音声
動画

●データの圧縮
文字データに比べ、画像データや音声データはとても情報量が多いため、データ
量が大きくなってしまいます。そのため、データ量を小さくする圧縮の技術が進ん
でいます。
かぎゃくあっしゅく
圧縮には、圧縮したあとにもとの状態に戻せる可逆圧縮と、もとの状態には戻せ
ひかぎゃくあっしゅく
ない非可逆圧縮があります。

これも アーカイバ

知っと データのバックアップや配布のために、複数のファイルを 1 つ
にまとめたり元に戻したりするソフトウェアをアーカイバとい
います。ファイルをまとめる際、圧縮機能をもつものが一般的
です。

120
3-9 マルチメディア

●データ形式
マルチメディアのデータ形式にはさまざまな種類があります。データ量が大きい
ので、圧縮したデータ形式もたくさんあります。

〈データの種類〉

種類 データ形式 特徴
ビットマップ
画像 BMP Windows が標準でサポートしている画像形式。基本的に
圧縮していないので、データ量が大きい
ジフ、ギフ
GIF 256 色しか表現できないので、あまり多くの色を使わない

第 章 ●
イラストや、小さい画像に使われる。可逆圧縮
ピング、ピーエヌジー 3
PNG Web サイトなどで使用されている。可逆圧縮
ジェイペグ
JPEG たくさんの色を表現できるので、写真を扱うディジタルカ

コンピュータで扱うデータ
メラなどで使われている。非可逆圧縮
エ ム ペ グ ディーブイディービデオ
動画 MPEG ディジタル放送や DVD-Video で利用されている。非可逆
エ ム ペ グ ワン エ ム ペ グ ツー
圧 縮。MPEG-1 は Video CD、MPEG-2 は DVD-Video、
エ ム ペ グ フォー
MPEG-4 は携帯電話や電話回線などの通信速度の低い回線
用として使われている
エムピースリー
音声 MP3 インターネット上での音楽データ配信やポータブルプレー
ヤで利用されている。非可逆圧縮
ミ デ ィ
MIDI 音楽データに使われている。実際の音データは含まれず、
音楽の演奏情報だけなので、ファイルサイズが非常に小さ
くなる

●コンピュータアニメーションの技法
コンピュータを使って動画を作成するには、さまざまな技法があります。
そのうち、2つ以上の画像が滑らかに変化していく様子を表現するために、その
中間を補うための画像を複数作成する技法をモーフィングといいます。
また、センサやビデオカメラなどを用いて人間や動物の自然な動きを取り込み、
そのデータをもとにリアルな動きをもつ画像を複数作成する技法をモーションキャ
プチャといいます。

121
ココが
出る! 用語
[ アーカイバ ]
:バックアップや配布のために、複数のファイ
ルを 1 つにまとめたり元に戻したりする
[ GIF ]:画像の圧縮形式で、表現できるのは 256 色(可逆)
[ JPEG ]
:画像の圧縮形式で、表現できる色が多い(非可逆)
[ MP3]
:音声の圧縮形式(非可逆)
[ MPEG ]
:動画の圧縮形式(非可逆)。MPEG-4 は携帯電話
などの低速回線用
[ モーフィング ]
:複数画像の中間を補い連結して滑らかに変
化させる技法
[モーションキャプチャ]:センサやビデオカメラで人間や動物
の自然な動きを取り込む技法

基本情報技術者試験 平成 26 年春

アニメーションの作成過程で、センサやビデオカメラなどを用いて人間や動
物の自然な動きを取り込む技法はどれか。
ア:キーフレーム法        
イ:ピクセルシェーダ  
ウ:モーションキャプチャ     
エ:モーフィング

モーションキャプチャでは、実際の自然な動きをディジタルデータと
解説
して収集し、そのデータをもとに画像を複数作成します。    
  解答:ウ

122
アルゴリズムと
データ構造
★ ★ ★
4
1 アルゴリズム

●アルゴリズムとは
コンピュータに処理させたい内容はプログラムに記述しますが、複雑なプログラ
ムになると、処理の手順は何通りもあります。処理の手順をうまく工夫することで、
無駄がなく、処理時間が短い、効率的なプログラムを作成することができます。プ
ログラムの処理手順のことをアルゴリズムといいます。

●流れ図(フローチャート)
アルゴリズムで最も重要なのは処理手順の順番です。アルゴリズムを頭の中だけ
で整理しようとすると、混乱してしまいがちですので、流れ図( フローチャート )
を作成し、処理手順を 1 手順ずつ、上から下に並べて視覚化します。

〈流れ図の例〉

開始

処理①

処理②

終了

流れ図に使う記号は以下のとおりです。

〈流れ図に使われる記号〉

記号 記号名 役割

端子記号 流れ図の開始と終了を表す。開始の端子記号
は中に「開始」、終了の端子記号は中に「終了」
と書き入れる

流れ線 上の処理と下の処理を結んで、処理の順番を
表す。処理の方向をはっきりさせるために矢
印にする場合もある

124
4-1 アルゴリズム

記号 記号名 役割

判断記号 条件によって、後の処理が 2 つ以上に分岐す


る場合に、判断する内容を書き入れる

処理記号 判断以外の処理を表す。処理の内容を書き入
れる

ループ記号 繰返して行われる処理( ループ )の始まりと終


わりを表す

入出力記号 データの入出力を表す

第 章 ●
●流れ図の処理パターン
4
流れ図で使う処理の流れには、順次・選択・繰返しの 3 つのパターンがあります。

〈順次〉         〈選択〉               〈繰返し〉

アルゴリズムとデータ構造
 

処理 1 No
条件 処理 1

処理 2 Yes
No
処理 1 処理 2 条件
処理 3
Yes

上の処理から順番に 条件によって異なる 条件が満たされるまで


実行されます 処理が選択されます 処理が繰り返されます

●流れ図の処理の表し方
流れ図の処理記号には、プログラムに近い表現で処理を記述するため変数が使
われます。変数とは、プログラムで扱う文字や数値を記憶しておくための入れ
物です。名前をつけて区別することで、複数の変数をプログラムの中で扱うこ
とができます。
変数にデータを入れる処理を代入といいます。3という値を変数 a に代入する
処理は、「3 → a 」と記述します。また、変数に入っているデータ同士を比較す
るときには、変数をコロンで区切って「 a:b 」と記述します。

125
〈変数を使った流れ図の例〉

3をaに代入
3→a 2をbに代入
2→b

aとbを比較


a:b

処理1 処理2

●トレース
アルゴリズムが正しく書かれているかをチェックするには、変数の値が処理の過
程でどのように変化していくかを確認します。変数の値の変化を追ってチェックし
ていくことをトレースといいます。プログラムが正しく動作するようにアルゴリズ
ムの内容をチェックするためには、トレース作業が重要です。具体的には、流れ図
の経路を追いながら変数の値をトレース表に書いていくことで、処理の過程を確認
していきます。

〈トレース 〉

開始

① 50 → a
② 20 → b


a−b → a ⑤ b−a → b

> <
a:b


aを出力

終了

126
4-1 アルゴリズム

〈トレース表〉

手順 a b

① 50

② 50 20 50−20 を a に代入

③ 30 20
30−20 を a に代入
④ 10 20

⑤ 10 10
20−10 をb に代入

ココが
スキル
出る!
→流れ図の記号と変数や処理内容の意味を理解し、処理をト
レースできるようにしておこう

第 章 ●
4
●擬似言語

アルゴリズムとデータ構造
流れ図と同じく、アルゴリズムを記述する方法に擬似言語があります。擬似言語
は、流れ図のような図形は使わずに、主に文章や記号などによって、アルゴリズム
を記述します。プログラム言語によるプログラムの記述に見た目が似ているので、
擬似言語と呼ばれています。擬似言語の記述は以下のように表します。

〈擬似言語の記述形式〉

記述形式 説明

○ 手続き、変数名、型などを宣言する

・変数←式 変数に式の値を代入する

▲ 条件式 選択処理を示す。条件式が満たされるときは処理 1 を
  ・処理 1 実行し、満たされないときは処理 2 を実行する
  ・処理 2

■ 条件式 前判定繰返し処理を示す。条件が満たされる間、処理
  を繰返し実行する
処理

■ 後判定繰返し処理を示す。処理を実行し、条件が満た
  される間、処理を繰返し実行する
処理

■ 条件式

127
基本情報技術者試験の午後の必須問題「 データ構造及びアルゴリ
ズム 」では、擬似言語を使った問題が出題されます。擬似言語で
記述されたアルゴリズムからも処理の流れを理解できるようにし
ておきましょう。

基本情報技術者試験 平成 23 年特別

次の流れ図は、1から 100 までの整数の総和を求め、結果を変数 x に代入


するアルゴリズムを示したものであるが、一部誤りがある。どのように訂正
すればよいか。
開始

① 1→ x

1→ i

② >
i :100

③ x+ i → x

④ i+ 1 → i

終了

ア:①の処理を“0 → x ”にする。
イ:②の条件判定を“ i : 99”にする。
ウ:③の処理を“ x + i → i ”にする。
エ:④の処理を“ x + 1 → x ”にする。

流れ図の各変数が、どのような用途で使われているかを確認します。
解説
i は繰返し処理の回数を表し、1 から 100 まで変化します。x は、
繰返し回数分の i の総和(1+2+・・・100)を表しています。そのため、
x の初期値は 0 でなければなりません。 解答:ア

128
4-2 配列
★ ★ ★
4
2 配列

●データ構造
処理をするには、扱うデータをどこかに保持しておく必要があります。扱うデー
タをどのような方法で保持するかを決めたものが、データ構造です。例えば住所録
は、郵便番号、住所、氏名といった個々のデータをばらばらに扱うのではなく、ひ
とまとまりの集合体として保持することで、効率よく処理できます。主なデータ構
造には、配列、キュー、スタック、リスト構造、木構造などがあります。どのデー
タ構造を用いるかによって、処理の効率が大きく変わるため、それぞれの特徴を理

第 章 ●
解して適切なデータ構造を選ぶことが大切です。
4

●配列

アルゴリズムとデータ構造
整数なら整数だけ、文字なら文字だけなど、同じ型のデータの集まりを順番に並
べたデータ構造を配列といいます。コインロッカーのように、1 つ 1 つデータが格
納される場所が用意されていて、目的のデータが「何番目にあるか」を指定するこ
とで、データを取り出すことができます。そのため、配列はデータを整列したり探
そえじ
したりするときによく使われます。データの場所を表す数を添字( インデックス )
といい、配列中の各変数を要素といいます。添字は C や JAVA 言語などでは 0 か
ら始まり、COBOL 言語などのように 1 から始まるものもあります。
配列には、添字を 1 種類しか使わない 1 次元配列や、添字を 2 種類使う 2 次元
配列があります。2 次元配列の添字は、行方向と列方向にそれぞれ指定し、
[行 , 列]
の順で表します。

〈1次元配列〉
添字

0 1 2 3 4
A 3 7 4 5 2

A[2]= 4

1次元配列A の添字 2の要素


には「4」が入っている

129
〈2 次元配列〉
列方向
0 1 2 3 4
0,0 0,1 0,2 0,3 0,4
B 0

1,0 1,1 1,2 1,3 1,4


1

2,0 2,1 2,2 2,3 2,4


2

3,0 3,1 3,2 3,3 3,4


3
行方向

4,0 4,1 4,2 4,3 4,4


4
5

B[4,2]= 5

2 次元配列B の行 4、列 2 の
要 素 には「 5」が入っている

ココが
スキル
出る!
→ 1 次元配列、2 次元配列において、添字から配列内の各デー
タ要素を特定し、代入などの操作ができるようにしておこう。

基本情報技術者試験 平成 25 年秋

次の規則に従って配列の要素 A[0]、A[1]、… 、A[9]に正の整数 k を格


納する。k として 16、43、73、24、85 を順に格納したとき、85 が格
納される場所はどこか。ここで、x mod y は、x を y で割った剰余を返す。
また、配列の要素は全て 0 に初期化されている。
〔規則〕
(1)A[ k mod 10]= 0 ならば、k を A[ k mod 10]に格納する。
(2)
(1)で格納できないとき、A[( k + 1)mod 10]= 0 ならば、k を A[

k + 1)mod 10]に格納する。
(3)
(2)で格納できないとき、A[( k + 4)mod 10]= 0 ならば、k を A

( k + 4)mod 10]に格納する。
ア: A[3]   イ: A[5]   
ウ: A[6]   エ: A[9]

130
4-2 配列

16、43、73、24、85 を順に格納して、配列の要素がどう変化
解説
するかを確認していきます。
16 の格納場所を計算すると、A[16 mod 10]= A[6]から、
16 を A[6]
に入れます。
43 の格納場所を計算すると、A[43 mod 10]= A[3]から 43 を A[3]
に入れます。
73 の格納場所を計算すると、A[73 mod 10]= A[3]となります。A
[3]は 0 ではなく値 43 が入っているので、規則(2)より、A[
(73 + 1)
mod 10]= A[4]となり、73 を A[4]に入れます。
24 の格納場所を計算すると、A[24 mod 10]= A[4]となります。A[4]
には値 73 が入っているので、規則(2)より、A[(24 + 1)mod 10]=

第 章 ●
A[5]となり、24 を A[5]に入れます。
4
85 の格納場所を計算すると、A[85 mod 10]= A[5]となります。A[5]
には値 24 が入っているので、規則(2)より、A[85+1 mod 10]= A[6]

アルゴリズムとデータ構造
となります。A[6]にも値 16 が入っているので、規則(3)より、A[(85
+ 4)mod 10]= A[9]となり、85 を A[9]に入れます。よって、85
が格納される場所は A[9]となります。

0 1 2 3 4 5 6 7 8 9
A 0 0 0 =
0 =
0 =
0 =
0 0 0 =
0

43 73 24 16 85

解答:エ

131
★ ★ ★
4
3 キューとスタック

●キュー
一時的に保持しておいたデータを格納したり、取り出すときの手順が決まってい
るデータ構造に、キューとスタックがあります。
キューは「列」という意味ですが、まさに待ち行列が前から順番にさばけていく
ように、1 次元配列で 1 列に格納されたデータを、入れた順番に取り出すデータ構
ファイフォ ファーストイン フ ァ ー ス ト ア ウ ト
造です。このようなデータの出し入れのしかたを FIFO( First-In First-Out:先入
れ先出し)といいます。また、データを入れることをエンキュー、取り出すことを
デキューといいます。
キューは、ディスクの入出力や OS のタスク実行などで使われています。

〈キュー〉

1  2  3  4 1  2  3  4
4 3 2 1
の順に入れる の順に取り出す
(エンキュー) (デキュー)

●スタック
スタックは「積み重ね」という意味です。スタックも、キューと同じく、1 次元
配列で格納されたデータですが、キューとは逆に、最後に入れたデータから先に取
り出す、つまり常に一番新しいデータから順番に使う構造になっています。このよ
ライフォ ラ ス ト イ ン ファーストアウト
うなデータの出し入れのしかたを LIFO( Last-In First-Out:後入れ先出し)といい
ます。データを入れることをプッシュ、取り出すことをポップといいます。
スタックは、プログラムの実行中にほかの関数( プログラム中で繰返し利用され
る手続きを 1 つにまとめたもの)を呼び出すときなどに使われています。

〈スタック 〉
1  2  3  4 4  3  2  1
の順に入れる の順に取り出す
( プッシュ) 4 ( ポップ)

132
4-3 キューとスタック

ココが
用語
出る!
[キュー]:最初に入れたデータから先に取り出す( FIFO )
[スタック ]:最後に入れたデータから先に取り出す( LIFO )
スキル
→どのような処理のときに、キューやスタックが適しているか
を理解しておこう。

基本情報技術者試験 平成 27 年春

キューに関する記述として、最も適切なものはどれか。
ア:最後に格納されたデータが最初に取り出される。

第 章 ●
イ:最初に格納されたデータが最初に取り出される。 4
ウ:添字を用いて特定のデータを参照する。
エ:二つ以上のポインタを用いてデータの階層関係を表現する。

アルゴリズムとデータ構造
キューでは、最初に格納されたデータが最初に取り出されます。  
解説
解答:イ

基本情報技術者試験 平成 22 年秋

A、B、C、D の順に到着するデータに対して、一つのスタックだけを用い
て出力可能なデータ列はどれか。
ア A、D、B、C   
イ B、D、A、C
ウ C、B、D、A   
エ D、C、A、B

スタックは最後に入れたデータから先に取り出す方法なので、それ
解説
ぞれの選択肢について確認すると、ウのデータ列のみ出力可能です。
出力の過程は以下のとおりです。

133
  
①A ②B ③C ④ C

C
B B B
A A A A

⑤ B ⑥D ⑦ D ⑧ A

D
A A A

解答:ウ

基本情報技術者試験 平成 26 年秋

加減乗除を組み合わせた計算式の処理において、スタックを利用するのが適
している処理はどれか。
ア:格納された計算の途中結果を、格納された順番に取り出す処理
イ:計算の途中結果を格納し、別の計算を行った後で、その計算結果と途中
結果との計算を行う処理
ウ:昇順に並べられた計算の途中結果のうち、中間にある途中結果だけ変更
する処理
エ:リストの中間にある計算の途中結果に対して、新たな途中結果の挿入を
行う処理

 
スタックでは、最後に格納されたデータが最初に取り出されます。
解説
そのため、計算途中で別の計算に移り、それらの結果を計算すると
きに適しています。 解答:イ

134
4-4 リスト構造
★ ★
4
4 リスト構造

●リスト構造とは
リスト構造は、データの格納場所が書かれたポインタを使って、離れた場所にあ
るデータ同士をつないで順番に並べたデータ構造です。線形リスト、連結リストと
もいいます。リスト構造では、データとポインタをセットにして扱い、先頭から順
にポインタをたどることで、各データにアクセスします。そのため参照や更新には
時間がかかりますが、データの追加や削除はポインタを変更するだけで処理できる
という特徴があります。

第 章 ●
〈リスト構造〉
4
データ ポインタ

Null

アルゴリズムとデータ構造
●リスト構造の種類
リスト構造は、どのようなポインタをもっているかによって、単方向連結リスト、
双方向連結リストに分けられます。

●単方向連結リスト
単方向連結リストは、データの後ろにポインタを 1 つだけもつリスト構造です。
ポインタは次のデータの場所を指し示すので、データをたどる方向は一方向に
なります。最後尾にあるポインタには、
「次の場所はない」ということを示す値
ヌ ル
( Null、または 0)を指定します。

〈単方向連結リスト 〉

Null

●双方向連結リスト
双方向連結リストは、前後のデータへのポインタをもつリスト構造です。それ
ぞれのポインタは、前のデータと後ろのデータの場所を指し示すので、データ

135
をたどる方向は前後両方向になります。一番前、および一番後ろにあるポイン
タは、
「次の場所はない」ということを示す値を指定します。

〈双方向連結リスト 〉

Null Null

●データの追加や削除
リスト構造では、データ間をポインタでつなげるので、データの追加や削除がポ
インタの書換えだけですみ、短時間で処理できるという特長があります。
例えば、次の単方向連結リストを見てみましょう。このリストでは「社員 A 」
「社
員 K 」「社員 T 」の順につながっています。新入社員である「社員 G 」は、まだリス
トには連結していません。図中の「 アドレス 」はメモリ内の住所であるアドレスを
指しています。

〈単方向連結リスト(例)と連結イメージ 〉

アドレス データ ポインタ

100 社員A 300 100 社員A 300 300 社員K 200 200 社員T 0

200 社員T 0
ポインタは次のデータのアドレスを指す
300 社員K 200
400 社員G
400 社員G

連結していない

ここで、リストの「社員 A 」と「社員 K 」の間に「社員 G 」を追加してみます。どの


ポインタを書き換えるかに注目してください。

〈「社員 G 」を追加〉

追加

400
100 社員A 300 400 社員G 300 300 社員K 200 200 社員T 0

社員Aのポインタの値を 社員Gのポインタに「300」
「400」に書き換える を入れて、社員Kにつなぐ

このように、リスト構造では、ポインタの値を書き換えるだけで、データの追加
や削除ができます。

136
4-4 リスト構造

ココが
用語
出る!
[連結リスト ]
:データの場所を示すポインタを使ってデータ
をつなぐデータ構造。ポインタの値を書き換えるだけで、デー
タの追加や削除ができる
[双方向連結リスト ]
:前後のデータへのポインタをもつ連結
リスト
スキル
→データを追加・削除するするときに、どのポインタを変更す
るかがわかるようにしておこう

第 章 ●
基本情報技術者試験 平成 21 年春 4
配列と比較した場合の連結リストの特徴に関する記述として、適切なものは
どれか。

アルゴリズムとデータ構造
ア:要素を更新する場合、ポインタを順番にたどるだけなので、処理時間は
短い。
イ:要素を削除する場合、削除した要素から後ろにあるすべての要素を前に
移動するので、処理時間は長い。
ウ: 要素を参照する場合、ランダムにアクセスできるので、処理時間は短い。
エ:要素を挿入する場合、数個のポインタを書き換えるだけなので、処理時
間は短い。

連結リスト、すなわちリスト構造は、データ間をポインタで関連付
解説
けるので、データの追加や削除ではポインタを書き換えるだけです
みます。                         解答:エ

137
★ ★
4
5 木構造

きこうぞう
●木構造とは
データ同士に階層的な親子関係や主従関係をもたせたデータ構造を、木(ツリー)
構造といいます。OS がファイルを管理するフォルダ構成も木構造です。
木構造を図に書き表すと、下の図のように、樹木を逆さにしたような形になりま
す。木構造の各データを節(ノード、節点)と呼びます。また、逆さにすると木の根っ
こにあたる一番上の部分を根(ルート )、一番下の部分を葉といいます。各データは、
枝でつながっています。

〈木構造〉


木構造ではデータは親子関係になっており、枝で結ばれた上の節を親、下の節を
子と呼びます。子の節はその下に節がつけば、その節の親になります。また、親の
ひだりぶぶんぎ
左の子についている枝、節、葉をまとめて左部分木といい、右の子についている枝、
みぎぶぶんぎ
節、葉を右部分木といいます。

〈親子関係〉


子 子

左部分木 右部分木

138
4-5 木構造

木構造には、枝や節のつき方によって、さまざまな種類があります。代表的なも
のを見ていきましょう。

● 2 分木
根やそれぞれの節から出る枝が、すべて 2 本以下の木を 2 分木といいます。

〈2 分木〉 枝が 2 本以下

2 分木ではない

第 章 ●
4
2 分木の中でも、根から葉までの枝の数がすべて一緒の 2 分木を、完全 2 分木と
いいます。

アルゴリズムとデータ構造
〈完全 2 分木〉

どの葉からも
根までが一緒

2分木のデータ構造をもう少し詳しく見てみましょう。2分木のそれぞれの節は、
左ポインタ部、データ部、右ポインタ部の 3 つの要素によって構成されています。
データ部にはデータが格納され、親となっている節のポインタには、子の節の場所
が格納されています。

〈2 分木のデータ構造〉
左ポインタ部 データ部 右ポインタ部

A A

B C B null C null

D E null D null null E null

139
にぶんたんさくぎ
● 2 分探索木
2 分木のうち、どの節においても、常に「親のデータが左部分木のデータより大
きく、右部分木のデータよりも小さい」(左部分木のデータ<親<右部分木のデー
タ )という条件を満たした状態の木を 2 分探索木といいます。2 分探索木では、親
より左には小さいデータ、右には大きいデータしかないので、必要なデータを探索
するときに少ない回数で行うことができるという特徴があります。

〈2 分探索木〉

8 3 < 8 < 10

1< 3 < 5 3 10 9 < 10 < 15

1 5 9 15 13 < 15

13

上 の 図 で は、1、3、5、8、9、10、13、15 の 8 つ の 要 素 が あ り ま す。 親
である根「8」に対して、左部分木(1、3、5)<親(8)<右部分木(9、10、13、
15)という関係が成り立ちます。また、左部分木における節 3 を親とした場合
も、左部分木(1)<親(3)<右部分木(5)という関係が成り立ちます。同様に、節
10、節 15 についてもこの関係が成り立っています。

● 2 分探索木のデータ探索
2 分探索木の中にあるデータを最短の手順で探し出すには、まず探している
データと根の値を比較します。例えば、9 というデータを見つけたい場合、根
である 8 と探索データ 9 を比較します。すると「根(8)<探索データ(9)
」とな
るので、探索データは右部分木にあることが分かります。次に節 10 と比較す
ると「探索データ(9)<節(10)」となるので、左に進みます。すると節 9 を見
つけることができます。このように、データが見つかるか、データが見つから
ず進む節がなくなるまで比較を繰り返すことで、データを探索できます。

140
4-5 木構造

〈2 分探索木のデータ探索〉

※9 を見つける場合
8 8 < 9 なので右へ

3 10 9 < 10 なので左へ

1 5 9 15

一致 !
13

●節の追加や削除による 2 分探索木の再構成

第 章 ●
新たな節を追加する場合も、データ検索と同様の手順で行うことにより、正し
4
い位置に追加できます。例えば、節 11 を追加する場合には、まず根の値 8 と
比較します。すると「根(8)<追加の節(11)」となるので、右部分木に置くこ

アルゴリズムとデータ構造
とになります。ここから先も同様に比較を繰り返すことで、新しい節の追加位
置を決めます。

〈節の追加〉
※11を追加する場合
8 8 < 11なので右へ

10< 11なので右へ
3 10

1 5 9 15 11< 15 なので左へ

13 11< 13 なので左へ

左へ追加 11

反対に、2 分探索木から節を削除する場合は、節の削除によって 2 分探索木の


性質を損なわないよう、2 分探索木を再構成する必要があります。例えば、節
10 を削除した場合は、左部分木の最大値をもつ節 9 か、右部分木の最小値を
もつ節 13 を、削除した節 10 の位置に移動して、
「左部分木<親<右部分木」
という性質が成り立つようにします。

141
〈節の削除〉 8
※10 を削除する場合
3 10 削除

1 5 9 15

左部分木の 右部分木の
13
最大値 最小値

8 8

3 9 3 13

1 5 15 1 5 9 15

13

「9」を移動して再構成した場合 「13」を移動して再構成した場合

どちらも2分検索木の特徴を維持

ココが
スキル
出る!
→2分探索木を構成できるようにしておこう

●ヒープ
2 分木のうち、すべての節で「親<子」、または「親>子」の関係が成り立つ状態
にした木をヒープといいます。ヒープでは、根がすべての要素の中で最小値(
「親
<子」の場合)、または最大値(「親>子」の場合)をとります。

〈ヒープ 〉
すべての節で親<子の
1 最小値
関係が成り立つ

1< 2 2 3 1< 3

2<5 5 6 4 7 3<7

2<6 3<4

142
4-5 木構造

ココが
スキル
出る!
→ 2 分探索木やヒープに新しく節を追加する場合に、性質を保
持した状態に再構成できるようにしておこう

基本情報技術者試験 平成 20 年秋

親の節の値が子の節の値より小さいヒープがある。このヒープへの挿入は、
要素を最後部に追加し、その要素が親よりも小さい間、親と子を交換するこ
とを繰り返せばよい。次のヒープの*の位置に要素 7 を追加したとき、A の
位置に来る要素はどれか。
9

第 章 ●
9
11 14
A
4
11 14
24 25 19 28
A
24 25 29 19 34 * 28

アルゴリズムとデータ構造
29 34 *
ア:7   イ:11   ウ:24   エ:25
9 9

9 9
解説 11 14 11 14
A A
11 14 11 14
24 25 19 28 24 7 19 28
A A
24 25 29 19 34 28 24 7 29 19 34 28
7 25

29 34 7 29 34 25
親の25の方が大きいので 親の11の方が大きいので
7と25を入替え 7と11を入替え
親の25の方が大きいので 親の11の方が大きいので
7と25を入替え 7と11を入替え
9 7

9 7
7 14 9 14
A A
7 14 9 14
A 24 11 19 28 A 24 11 19 28

24 11 29 19 34 28 24 11 29 19 34 28
25 25

29 34 25 29 34 25
親の9の方が大きいので 再構成完了
9と7を入替え Aには11が入る
親の9の方が大きいので 再構成完了
9と7を入替え Aには11が入る
解答:イ

143
★ ★ ★
4
6 探索アルゴリズム

●探索とは
大量にあるデータの中から必要なデータを探したり、データを並べ替えたりする
には、それぞれのデータ構造の特徴に合ったアルゴリズムを使う必要があります。
ここからは、さまざまなアルゴリズムの種類について紹介します。
たくさんのデータの中から、目的のデータを見つけることを探索( サーチ )とい
います。例えば、机に積み上げられた書類の山から必要な資料を見つけることも探
索です。コンピュータも、主記憶や補助記憶装置にあるデータやファイルを探索し、
更新や削除などの処理を行っています。
代表的な探索アルゴリズムに、線形探索法や 2 分探索法、ハッシュ探索法があり
ます。

ちくじ
●線形探索法(逐次探索法)
線形探索法は、先頭から順番に目的のデータと比較し、一致するデータを探し
ていくアルゴリズムです。一致するデータが見つかった時点で探索は終了です。
整列されていない状態で、目的のデータを探索するのに向いていますが、総当
たり戦となるため、大量のデータを探索するには不向きです。

〈線形探索法〉

配列 A から探索データ「3」を探します

A[1] A[2] A[3] A[4] A[5]

配列 A 4 1 3 5 2

1回目 2 回目 3 回目 先頭のデータから探索データと
比較して、一致したら終了

線形探索法では、n 個のデータの中から目的のデータを探索するまでに、最小
で 1 回、最大で n 回、目的のデータと対象となるデータの比較を行う必要があ
ります。したがって、平均比較回数は( n + 1)/2 回となります。

144
4-6 探索アルゴリズム

〈線形探索法の平均比較回数〉

A[1] A[2] A[3] A[4] A[5] A[n]

(最小の場合) 1 4 5 3 2 6 回数 = 1

1回目 平均すると
探索データが「1」のときは、1回で済む!
n+1
2
A[1] A[2] A[3] A[4] A[5] A[n]

(最大の場合) 1 4 5 3 2 6 回数 = n

1回目 2 回目 3 回目 4 回目 5 回目 n 回目

第 章 ●
探索データが存在
しないときは 4
デ ー タの 個 数=比 較 回 数

アルゴリズムとデータ構造
なお、線形探索法で配列構造のデータを探索する場合、探索する前にあらかじ
め最後のデータの後ろに目的のデータ(下図では「10」)を入れておくことがありま
ばんぺい
す。これを番兵といいます。番兵を使うと、配列の最後で必ずデータが一致するの
で、データ比較前に配列の範囲内かどうかを確認する処理を省くことができます。

〈番兵〉

番兵
A[1] A[2] A[3] A[4] A[5] A[6]

配列 A 4 5 1 3 2 10

探索データ「10」が 最後の比較 番兵でデータが一致するの


存在しない場合でも で、配列の 最後に必ず処 理
が終わる

145
番兵を使った線形探索法のアルゴリズムを流れ図で示すと次のようになりま
す。処理の流れを確認しておきましょう。

〈番兵を使った線形探索法の流れ図〉

開始 x :探索データ
A:探索対象の配列
1→i n:配列のデータ数
i :探索中のデータ位置
x → A[n+1] 配列の一番後ろに番兵を入れる

ループ(比較) 探索データと一致したらループを抜ける
x = A[ i ]

i +1 → i 隣へ移動

ループ(比較) 一致したデータが、配列の途中か最後の番兵かを判断


i:n


探索成功 探索データなし

終了

ココが
用語
出る!
[線形探索法の平均比較回数]:( n + 1)/2 回
スキル
→線形探索法のアルゴリズムについて、先頭から順に比較する
処理の流れを理解しておこう。

146
4-6 探索アルゴリズム

● 2 分探索法
2 分探索法は、あらかじめデータが小さい順もしくは大きい順に整列されてい
る場合に使われるアルゴリズムです。まずデータを 2 等分し、探索範囲の中央
の値と探索データを比較します。探索データの方が小さければ、目的データの
ありかを前半部分に絞り込みます。次に絞り込んだ前半部分のデータを 2 等分
し、同じ手順を繰り返していきます。こうして、探索する範囲を半分ずつに狭
めていくことで、探索データを見つける方法が、2 分探索法です。

〈2 分探索法〉

配列 A から探索データ「 5」を探します

A[1] A[2] A[3] A[4] A[5]

配列 A 3 5 7 9 11 全体 A[1]∼[5]が探索範囲

第 章 ●
中央値

1回目 4
(中央値より小さい)→ 左半分にあるはず

配列 A 3 5 7 9 11

アルゴリズムとデータ構造
中央値

2 回目
(中央値より大きい)→ 右半分にあるはず

配列 A 3 5 7 9 11
中央値

3 回目
(中央値と一致)→ 探索終了

2 分探索法では、1 回探索するごとに探索範囲を半分に絞っていくことができ
ます。n 個のデータがある場合の平均比較回数は、log2n で求めることができ
ます。
log2n とは、2 を n にする指数のことです。見方を変えると、n=2x と X =
log2n は同じ意味です。例えば、探索範囲として 8 個のデータがある場合、平
均比較回数は log28 となります。8=23 なので、log28 = 3 回です。
2 分探索法のアルゴリズムを流れ図で示すと次のようになります。処理の流
れを確認しておきましょう。

147
〈2 分探索法のアルゴリズム 〉
      
開始

1 → lo
n → hi

ループ(比較)
lo > hi
中央を
( lo + hi )/2 求める
→k
中央値
と比較
A(k):x

< > =
k + 1 → lo k −1 → hi 探索成功

探索範囲を
探索範囲を ループ(比較) 左半分に
x :探索データ
右半分に
A :探索対象の配列

探索データなし n :配列のデータ数
k :中央
lo :左端(lowの略)
終了 hi :右端(highの略)

ココが
用語
出る!
[2 分探索法の平均比較回数]: log2n 回
スキル
→ 2 分探索法のアルゴリズムについて、整列されたデータ列を
半分ずつに絞って探す処理の流れを理解しておこう。

●ハッシュ探索法
データの格納場所のアドレス値を、あらかじめ関数を使った計算で決めておく
アルゴリズムをハッシュ探索法( ハッシュ法)といい、格納先を決めるために
用いられる関数をハッシュ関数、ハッシュ関数によって求められるアドレス値
をハッシュ値といいます。ハッシュ探索法を使ってデータを探索するときは、

148
4-6 探索アルゴリズム

ハッシュ関数を計算してハッシュ値を求めることで、格納場所を割り出しま
す。ハッシュ探索法を使うと、衝突が発生しない限り、探索データは必ず 1
回で見つかります。

〈ハッシュ探索法〉

メモリ

データ

ハッシュ関数 例:mod 関数

ハッシュ値
(アドレスを計算)

例えば、5 けたの数「 x 1 x 2 x 3 x 4 x 5 」を、ハッシュ探索法を使って配列 A に格

第 章 ●
納してみます。このとき、ハッシュ関数を mod( x1 + x2 + x3 + x4 + x5,17)
4
とします。mod( a,b )は、a を b で割った余りを表します。つまり、各けたの
数を足した総数を 17 で割った余りを、格納場所とするということです。

アルゴリズムとデータ構造
56789 の格納先アドレスを計算すると、(5+6+7+8+9)÷ 17 の余りなの
で、1 となります。そこで配列 A[1]に格納します。この後、例えば 98765
というデータを同じようにハッシュ法を使って格納しようとすると問題が起き
ます。というのは、ハッシュ値が 1 となり、配列 A[1]にはすでに 56789 が
格納されているため、衝突(シノニム )が起こってしまうのです。

〈衝突
(シノニム )

配列 A
0
56789 98765
1 56789
2 衝突
(シノニム)
mod 関数 mod 関数

15
ハッシュ値「1」 ハッシュ値「1」
16

衝突が起こった場合には、配列の各要素をリスト構造にして、
新しい場所にデー
タを格納します。

149
これも 一様分布

知っと ハッシュ探索法において,衝突の確率がもっとも低くなるのは
ハッシュ値が一様分布にあるときです。一様分布とは、サイコ
ロの目の出る確率など、すべての事象の起こる確率が等しい現
象です。

ココが
用語
出る!
[ハッシュ探索法の平均比較回数]:1 回
[一様分布]:事象の発生確率が等しい。ハッシュ値の衝突確率
がもっとも低くなる状態
スキル
→ハッシュ関数を使ってハッシュ値を計算して、データの格納
場所を求められるようにしておこう。

基本情報技術者試験 平成 26 年秋

2 分探索に関する記述のうち、適切なものはどれか。
ア:2 分探索するデータ列は整列されている必要がある。  
イ:2 分探索は線形探索よりも常に速く探索できる。   
ウ:2 分探索は探索をデータ列の先頭から開始する。   
エ:n 個のデータの 2 分探索に要する比較回数は、n log2n に比例する。

2 分探索では、あらかじめ整列されたデータ列を半分ずつに絞って
解説
探します。検索データが最初の方にある場合、線形探索のほうが速
く検索できます。 解答:ア

150
4-6 探索アルゴリズム

基本情報技術者試験 平成 25 年春

10 進法で 5 桁の数 a1 a2 a 3 a4 a5 を、ハッ


シュ法を用いて配列に格納したい。ハッシュ 位置 配列
0
関数を mod( a1 + a2 + a3 + a4 + a5 ,13)
1
とし、求めたハッシュ値に対応する位置の
2
配列要素に格納する場合、54321 は配列の


どの位置に入るか。ここで、mod( x,13)は、
x を 13 で割った余りとする。 11

ア:1   12

イ:2   
ウ:7   
エ:11

第 章 ●
4
mod(5+4+3+2+1,13)= mod(15,13)= 2
解説
解答:イ

アルゴリズムとデータ構造

151
★ ★ ★
4
7 整列アルゴリズム

●整列とは
続いて、大量にあるデータを使いやすいように並べ替えるアルゴリズムを紹介し
ます。データを小さい順または大きい順に並べることを整列(ソート )といいます。
小さい順に並び替えることを昇順、大きい順に並び替えることを降順といいます。

〈昇順と降順〉

1 2 3 4 5 昇順

5 3 1 4 2

5 4 3 2 1 降順

整列アルゴリズムには、交換法、選択法、挿入法などがあります。

●交換法(バブルソート )
交換法は、隣同士のデータの大小を比較して、その大小の順番が逆であれば交
換していくアルゴリズムで、バブルソートとも呼ばれます。これを繰り返すこ
とによって、データを並び替えます。交換法のデータ比較回数は、
( n - 1)+( n
- 2)+…+ 1 = n( n - 1)/2 回です。

〈交換法〉

配列 A 5 3 1 4 2

昇順に並べ替える

1回目 A
[1]∼A[5]の範囲で比較
隣同士を比較
5 3 1 4 2 交換

5 3 1 2 4 そのまま

5 3 1 2 4 交換

5 1 3 2 4 交換

A
[1]が確定 1 5 3 2 4

2 回目 A
[2]∼A[5]の範囲で比較
152
1 5 3 2 4 そのまま
5 3 1 2 4 交換

5 1 3 2 4 交換
4-7 整列アルゴリズム
A
[1]が確定 1 5 3 2 4

2 回目 A
[2]∼A[5]の範囲で比較

1 5 3 2 4 そのまま

1 5 3 2 4 交換

1 5 2 3 4 交換

A
[2]が確定 1 2 5 3 4

3 回目 A
[3]∼A[5]の範囲で比較 4 回目 A[4]∼A[5]の範囲で比較

1 2 5 3 4 そのまま 1 2 3 5 4 交換

1 2 5 3 4 交換 A[4]、A[5]が確定
1 2 3 4 5
A
[3]が確定
1 2 3 5 4

第 章 ●
4
交換法のアルゴリズムを流れ図で示すと次ページのようになります。処理の流れ
を確認しておきましょう。

アルゴリズムとデータ構造
アルゴリズムの種類はたくさんありますが、午前問題ではその特
徴を問われる問題がほとんどです。一方、午後問題では、流れ図
の空欄埋め問題などの出題が多く出題されます。効率的に問題を
解くために、各アルゴリズムの処理手順をしっかりと理解してお
きましょう。

153
〈交換法のアルゴリズム 〉

   トレース表(※の比較時点)
開始
i j j−1 A [j ]:A[j−1]

1→i 1 5 4 2<4 交換

4 3 2>1 そのまま
ループ(選択) 3 2 1<3 交換
i > n −1
2 1 1<5 交換

n→j 2 5 4 4>2 そのまま


4 3 2<3 交換
ループ(交換) 3 2 2<5 交換
j < i +1
隣同士を比較 3 5 4 4>3 そのまま

※ ≧ 4 3 3<5 交換
A[j ]
:A[j −1]
4 5 4 4<5 交換


A[j ]
→x そのまま
A[ j −1]→A[j ]
交換
x → A[j −1]

j −1 → j 交換するデータを
1つずらす

ループ(交換)

配列の選択範囲を
i +1 → i
1つずらす
n :データの個数(例では5)
A :整列対象の配列
ループ(選択)
i :確定させる左端のデータの位置
j :整列中の比較位置
終了 x :交換するときの待避場所

●選択法(選択ソート )
選択法は、未整列のデータから最小値(最大値)を探して順に並べていくアル
ゴリズムです。まず、先頭から順にデータの値を比べていき、
最小値を探します。
最小値が見つかったら、1 番目にあるデータと入れ替えます。これで、1 番目
は確定です。次に 2 番目に来るデータを探します。残りのデータから最小値を
探し、2 番目にあるデータと入れ替えます。これを繰り返して、データを並

154
4-7 整列アルゴリズム

び替えます。選択法のデータ比較回数は、
( n - 1)+( n - 2)+…+ 1 = n( n
- 1)/2 回です。

〈選択法〉

配列 A 5 3 1 4 2
昇順に並べ替える

1回目 A
[1]∼A
[5]の範囲で最小値を選ぶ

5 3 1 4 2 A[2]が最小値

5 3 1 4 2 A[3]が最小値

5 3 1 4 2 A[3]が最小値

5 3 1 4 2 A[3]が最小値 確定

第 章 ●
最小値は A[3]なのでA[1]と交換 1 3 5 4 2
4
2 回目 A
[2]∼A
[5]の範囲で最小値を選ぶ

1 3 5 4 2 A[2]が最小値

アルゴリズムとデータ構造
1 3 5 4 2 A[2]が最小値

1 3 5 4 2 A[5]が最小値

最小値は A[5]なのでA[2]と交換

3 回目 A
[3]∼A
[5]の範囲で最小値を選ぶ

1 2 5 4 3 A[4]が最小値

1 2 5 4 3 A[5]が最小値 確定

最小値は A[5]なのでA[3]と交換 1 2 3 4 5

4 回目 A
[4]∼A
[5]の範囲で最小値を選ぶ

1 2 3 4 5 A[4]が最小値 確定 確定

最小値は A[4]なので 交換なし 1 2 3 4 5

選択法のアルゴリズムを流れ図で示すと次のようになります。処理の流れを確認
しておきましょう。

155
〈選択法のアルゴリズム 〉

トレース表(※の比較時点)
開始
i k j A[ k ]
:A[ j]
1→i
1 1 2 5 >3
ループ(交換) 2 3 3 >1
i≧n
3 4 1<4
i→k
3 5 1<2
i+1 → j
2 2 3 3<5
ループ(選択) 比較して
j>n 2 4 3<4
最小値を調べる
2 5 3 >2
※ ≦
A[k]
:A[j ] 3 3 4 5 >4
> 4 5 4 >3
j→k 4 4 5 4<5

j +1 → j 最小値のある配列
位置をkとする

ループ(選択)

Yes
i=k

No
A[i]→x
確定させる左端データの
A[k] → A[i]
位置に最小値を入れる
x → A[k]

最小値を入れる
i +1 → i n :データの個数(例では5)
位置を1つずらす
A :整列対象の配列
ループ(交換) i :確定させる左端データの位置
k :最小値の配列の位置
終了 j :比較するデータの位置

156
4-7 整列アルゴリズム

●挿入法(挿入ソート )
挿入法は、未整列データの中から 1 つずつデータを取り出して、すでに整列
ずみであるデータ列の適切な場所に挿入していくアルゴリズムです。これを
繰り返すことでデータを並び替えます。

〈挿入法〉

配列 A 5 3 1 4 2
昇順に並べ替える

まず、A
[1]を整列済みであるとします
5 3 1 4 2

1回目 A
[2]の値 3 を適切な位置に入れます

第 章 ●
5 ③ 1 4 2 交換
4
A
[2]の値 3 の位置が確定 ③ 5 1 4 2

アルゴリズムとデータ構造
2 回目 A
[3]の値 1を適切な位置に入れます

3 5 ① 4 2 交換

3 ① 5 4 2 交換

A
[3]の値 1の位置が確定 ① 3 5 4 2

3 回目 A
[4]の値 4 を適切な位置に入れます 4 回目 A[5]の値 2 を適切な位置に入れます

1 3 5 ④ 2 交換 1 3 4 5 ② 交換

1 3 ④ 5 2 そのまま 1 3 4 ② 5 交換

ここはすでに整列済みのため、 1 3 ② 4 5 交換
比較は必要ない
1 ② 3 4 5 そのまま
A
[4]の値 4 の位置が確定
1 3 ④ 5 2 A[5]の値 2 の位置が確定
1 ② 3 4 5

挿入法のアルゴリズムを流れ図で示すと次のようになります。処理の流れを確認
しておきましょう。

157
〈挿入法のアルゴリズム 〉

トレース表(※の比較時点)
開始
i j j+1 A[ j]
:A[ j+1]

2→i 2番目のデータ
2 1 2 5>3 交換
から挿入する
3 2 3 5>1 交換
ループ(選択) 1 2 3>1 交換
i>n
4 3 4 5>4 交換

i −1 → j 2 3 3<4 そのまま

5 4 5 5>2 交換
ループ(交換) 3 4 4>2 交換
j<1 整列済みの
データと比較 2 3 3>2 交換

※ ≦ 1 2 1<2 そのまま
A[j ]
:A[j +1]


A[j ]→x
A[j +1] →A[j ]
交換
x → A[j +1]

j −1 → j 0→j

ループ(交換) これ以上交換する
必要がなくなったら
ループを抜ける
i +1 → i

n :データの個数(例では5)
ループ(選択)
i :挿入するデータの位置
j :整列済みデータの比較位置
終了 x :交換するときの待避場所

●シェルソート
シェルソートは挿入法を改良したもので、ある一定間隔おきに取り出したデー
タからなる部分列をそれぞれ整列し、さらに間隔を詰めて同じ操作を行うアル
ゴリズムです。最後に間隔が 1 になるまで繰り返してデータを並び替えていき
ます。部分的に整列しておくことで、挿入の際に整列済の要素をずらす作業を
減らすことができ、処理が速くなります。

158
4-7 整列アルゴリズム

〈シェルソート 〉

5 3 6 1 2 4
昇順に整列

① 2 間隔おきに部分列を作る

部 分 列 で並べ 替 え た
5 3 6 1 2 4 ことで、次に挿入する
比較 ときのデータをずらす
作業が少なくなる!
②部分列ごとに挿入法で整列

5 6 2 2 5 6
2 1 5 3 6 4
3 1 4 1 3 4

③ 1間隔おきに挿入法で整列

第 章 ●
2 1 5 3 6 4 1 2 3 4 5 6
4

アルゴリズムとデータ構造
●クイックソート
クイックソートでは、まず基準となる値を決め、それよりも小さい値のグルー
プと大きい値のグループに分けます。次に、それぞれのグループの中で同じ処
理を繰り返して、分割できなくなるまで繰り返すことで、データを並び替えて
いくアルゴリズムです。

〈クイックソート 〉

7 3 6 2 4 1 9 5 8

昇順に整列する
基準値

① 基準値を決めます 7 3 6 2 4 1 9 5 8
 (今回は中央のデータを使います)

② 基準値より小さな値のグループと 3 2 1 4 7 6 9 5 8
 大きな値のグループに振り分けます

③ 同様に分割できなくなるまで 1 2 3 4 7 6 5 8 9
  繰り返します

1 2 3 4 5 6 7 8 9

1 2 3 4 5 6 7 8 9

159
●ヒープソート
ヒープソートは、未整列のデータをヒープ(「4-5 木構造」を参照)に構成した後、
ヒープの根から最小値または最大値を取り出して整列済みの部分列に移すこと
を繰り返してデータを整列するアルゴリズムです。ヒープの根を最大値と決め
ると、各節には「親>子」の関係が成り立ちます。ヒープの各要素を配列で構
成しておき、データを並び替えていきます。

〈ヒープソート 〉

5 入れ替え

3 7

2
未整列のデータをヒープに構成

最大値を取り出し
7
根のデータを取り出す
根に入れる 3 5

2 7
末尾の要素を根に入れる

2 入れ替え

5
残った要素をヒープに再構成

根のデータを取り出す
最大値を取り出し 5 根に入れる

3 2 5 7
末尾の要素を根に入れる

入れ替え 2

3
残った要素をヒープに再構成

最大値を取り出し 根のデータを取り出す
3
根に入れる
2 3 5 7
末尾の要素を根に入れる
根のデータを取り出す
2 2 3 5 7

最後に残った根を取り出す

160
4-7 整列アルゴリズム

ココが
スキル
出る!
→問題文中に提示される処理内容が、どの整列アルゴリズムか
を答えられるようにしておこう。

基本情報技術者試験 平成 20 年春

データの整列方法に関する記述のうち、適切なものはどれか。
ア:クイックソートでは、ある一定間隔おきに取り出した要素から成る部分
列をそれぞれ整列し、更に間隔を詰めて同様の操作を行い、間隔が 1 に
なるまでこれを繰り返す。
イ:シェルソートでは、隣り合う要素を比較して、大小の順が逆であれば、

第 章 ●
それらの要素を入れ替えるという操作を繰り返して行う。 4
ウ:バブルソートでは、中間的な基準値を決めて、それよりも大きな値を集
めた区分と小さな値を集めた区分に要素を振り分ける。

アルゴリズムとデータ構造
エ:ヒープソートでは、未整列の部分を順序木に構成し、そこから最大値又
は最小値を取り出して既整列の部分に移す。これらの操作を繰り返して、
未整列部分を縮めていく。

アはシェルソート、イはバブルソート、ウはクイックソートの説明
解説
です。                       解答:エ

161
★ ★ ★
4
8 再帰アルゴリズム

●再帰アルゴリズムとは
これまで探索アルゴリズムと整列アルゴリズムを説明してきましたが、もう 1 つ
重要なアルゴリズムに再帰アルゴリズムというものがあります。再帰アルゴリズム
は、自分自身を呼び出しても正しく実行できる再帰的なプログラムを作るときに使
われるアルゴリズムです。
例えば、n の階乗を求めるプログラムは再帰的なプログラムの 1 つですが、これ
を例として再帰アルゴリズムを具体的に見ていきましょう。

●階乗を求めるプログラムの定義
n の階乗とは、1 から n までの自然数の積 n ×( n - 1)×・・・× 3 × 2 × 1
で計算することができ、n!と表します。例えば、5!は 5 × 4 × 3 × 2 × 1
のことです。また 5!は、5 × 4!と表すこともできます。つまり、n!は、n
×( n - 1)!と定義できます。

  n!= n ×( n - 1)×・・・× 3 × 2 × 1
    = n ×( n - 1)!

このように、自分自身を呼び出す処理のやり方が再帰アルゴリズムです。では、
実際に n の階乗 n!を求めるプログラムを f( n )と定義して、このプログラムがど
のように実行されるかを見てみましょう。

〈自然数 n の階乗 n!を求めるプログラム 〉

f( n ):
if n =1 then return 1 n が 1 のとき 1 を返す
else return n×f( n−1)
 nが1でないときn×f( n−1)の値を返す

例えば n = 5 のとき、上記プログラムは以下のように処理されます。

162
4-8 再帰アルゴリズム

f(5) 自分自身( f(n)=n×f(n−1) )を呼び出す

= 5 × f(4) 自分自身を呼び出す

= 5 × 4 × f(3) 自分自身を呼び出す

= 5 × 4 × 3 × f(2) 自分自身を呼び出す

= 5 × 4 × 3 × 2 × f(1)
f(1)= 1
= 5 × 4 × 3 × 2 × 1

= 12 0

ココが

第 章 ●
スキル
出る!
→再帰的に定義されるプログラムの実行結果について理解して 4
おこう。

アルゴリズムとデータ構造
基本情報技術者試験 平成 21 年春

自然数 n に対して、次のように再帰的に定義される関数(
f n)
を考える。f(5)
の値はどれか。

f n ): if n ≦ 1 then return 1 else return n+f( n-1)
ア: 6   
イ:9   
ウ:15   
エ:25

f(5)= 5 + (
f 4)
解説
=5+4+(
f 3)
=5+4+3+(
f 2)
=5+4+3+2+(
f 1)
=5+4+3+2+1
= 15                     解答:ウ

163
基本情報技術者試験 平成 26 年秋

次の関数 (
f n, k )がある。f(4, 2)の値は幾らか。
      1  ( k=0),
(  ( n − 1, k − 1)+ (
f n, k )= f f n − 1, k )   (0 < k < n ),
      1  ( k=n ),
ア: 3   
イ:4   
ウ:5   
エ:6


f 4, 2)= (
f 4 - 1, 2 - 1)+ (
f 4 - 1, 2)
解説
=(
f 3, 1)+ (
f 3, 2)
=(
f 2, 0)+ (
f 2, 1)+ (
f 2, 1)+ (
f 2, 2)
=1+(
f 1, 0)+ (
f 1, 1)+ (
f 1, 0)+ (
f 1, 1)+ 1
=1+1+1+1+1+1
= 6  
解答:エ

164
4-9 アルゴリズムの実行時間
★ ★
4
9 アルゴリズムの実行時間

オー
●実行時間を表す O 記法
同じ結果を得ることができるのであれば、実行時間が短いアルゴリズムのほうが
よいアルゴリズムであるといえます。例えば宿題をするときを考えてみても、少な
い手間でさっさと終わらせることができるやり方のほうが嬉しいものです。
アルゴリズムの善し悪しを評価するための指標のひとつに、どのくらい計算に時
間がかかるかを表すオーダという概念があります。オーダによってアルゴリズムを
表す記述方法を O 記法といいます。O 記法では、データの個数を n とし、それに対

第 章 ●
する計算量を O( n )で表します。
4
例えば、O( n )とはどういう意味かというと、
「データの個数が 2 倍、
3 倍になると、
計算量も 2 倍、3 倍になる」ということです。O( n2)は、
「データの個数が 2 倍、3

アルゴリズムとデータ構造
倍になると、計算量は 4 倍、9 倍になる」という意味です。O( n )のアルゴリズム
に比べて、O( n2)のアルゴリズムは、データの個数が多くなってくると指数関数
的に計算量が増えて遅くなってしまい、実用的とはいえません。
O 記法では、大量のデータを扱う場合を考えるため定数や係数は無視します。例
えば、実行時間とオーダは以下のような関係になります。

実行時間 オーダ

Cn( C は定数) O( n )

2n2 + 100n + 1 O( n2)

●探索アルゴリズムの実行時間
探索アルゴリズムにおける実行時間のオーダは、探索が終了するまでの平均比
較回数に比例すると考えます。
ハッシュ探索法では、衝突が起きない限り、原則 1 回の比較でデータを見つけ
ることができるため、データ個数に関わらず O(1)となります。
2 分探索法では、1 回比較するごとに探索範囲が半分に絞り込まれていきます。
線形探索法は、最大でデータ個数の分だけ比較することになるため、データが
多い場合には最も遅いアルゴリズムです。

165
〈探索アルゴリズムの実行時間〉

アルゴリズムの種類 平均比較回数 実行時間(オーダ )

ハッシュ探索法 1 O(1)

2 分探索法 log2n O( log2n )

線形探索法 ( n + 1)/2 O( n )

●整列アルゴリズムの実行時間
整列アルゴリズムにおける実行時間のオーダは、整列が終了するまでの平均比
較回数に比例すると考えるので、オーダは以下のようになります。

〈整列アルゴリズムの実行時間〉

アルゴリズムの種類 平均比較回数 実行時間(オーダ )

交換法(バブルソート ) n( n - 1)/2 O( n2)

挿入法 n( n - 1)/2 O( n2)

選択法 n( n - 1)/2 O( n2)

O 記法で計算時間を表したとき、それぞれの値を比較した図が以下になります。
例えば、2 分探索法( O( log2n ))と線形探索法( O( n ))の実行時間を比較すると、
2 分探索法のほうが実行時間が小さく、速いアルゴリズムといえます。

小さい(速い) ◀ ▶ 大きい(遅い)

O(1) O( log2n ) O( n ) O( n log2n ) O( n2)

ココが
出る! 用語
[ハッシュ探索法のオーダ ]:O(1)
[2 分探索法のオーダ ]:O( log2n )
[線形探索法のオーダ ]:O( n )

166
4-9 アルゴリズムの実行時間

基本情報技術者試験 平成 24 年秋

探索方法とその実行時間のオーダの適切な組合せはどれか。ここで、探索す
るデータ数を n とし、ハッシュ値が衝突する(同じ値になる)確率は無視で
きるほど小さいものとする。また、実行時間のオーダが n2 であるとは、n 個
のデータを処理する時間が cn2( c は定数)で抑えられることをいう。

2 分探索 線形探索 ハッシュ探索

ア log2n n 1

イ n log2n n log2n

ウ n log2n n 2
1

エ n2
1 n

第 章 ●
4
ハッシュ探索法では、データの個数にかかわらず原則 1 回の比較で
解説
データを見つけることができるため、実行時間のオーダは 1 です。
線形探索法は、最大でデータ個数の分だけ比較するので、実行時間のオー

アルゴリズムとデータ構造
ダは n です。2 分探索法では、1 回比較するごとに探索範囲が半分に絞り
込まれるので、実行時間のオーダは log2n です。       解答:ア

基本情報技術者試験 平成 21 年春

昇順に整列された n 個のデータが配列に格納されている。探索したい値を2
分探索法で探索するときの、およその比較回数を求める式はどれか。
ア:log2n   
イ:( log2n +1)/2
ウ: n   
エ: n 2

2分探索法では、1回比較するごとに探索範囲が半分に絞り込まれ
解説
ていきます。平均比較回数は、log2n です。 解答:ア

167
システム開発
★ ★
5
1 システム開発の概要

●システム開発の流れ
システムとは、特定の仕事を処理してもらうために、ハードウェアとソフトウェ
アを組み合わせた仕組みのことです。例えば、銀行の ATM や飛行機の座席予約シ
ステムなど、私たちのまわりにはさまざまなシステムがあります。システムで使わ
れるコンピュータは 1 台とは限りません。何台ものコンピュータをネットワークで
つないだ大規模なシステムもあります。
システムは発注者からの依頼を受けて企画され、要求に応じて設計・開発されま
す。無事完成した後は、定期的な保守を行いながら運用され、役割を終えたら廃棄
されます。このように、システムには企画から廃棄まで一連の流れがあり、これを
システムのライフサイクルと呼びます。
この章では、システムの開発がどのように行われるのかを、詳しく見ていきます。
開発工程で行われる各プロセスは、次のような流れになっています。

〈開発プロセス 〉

開発プロセス

要件定義

システム設計

プログラミング

テスト

ソフトウェア受入れ

各プロセスでは、以下のことを行います。

ようけんていぎ
●要件定義
システム開発の最初の工程では、「こういう目的のために、こんなことができ
るシステムが欲しい」という発注者のリクエストをもとに、現状の業務を分析
し、システム要件を整理します。

170
5-1 システム開発の概要

これも 非機能要件

知っと 要件定義では、システムに必要な機能を定義する機能要件のほ
かに、非機能要件も定義します。業務要件の実現に必要な品質
要件、技術要件、運用・操作要件などを明確にします。例えば、
システム開発で用いるプログラム言語に合わせた開発基準の作
成などです。

●システム設計
要件定義に従って、システムを設計します。システム設計では、システムの目
的や機能を達成するために必要なハードウェアとソフトウェアが何かを考え、
それらをどう組み合わせるかの配置図や計画書を書きます。
ソフトウェアの設計において最初に行うのはソフトウェア要件定義(外部設計)
です。入力画面など、システム見た目の部分を設計したり、システムに必要な
データ項目を洗い出して、データ構造を決定したりするといった論理データの
設計を行います。

第 章 ●
次がソフトウェア方式設計(内部設計)です。前工程で決定したソフトウェア
5
要件をもとに、盛り込む機能や処理の流れを決めるといった、内部の仕組みを
設計します。最後がソフトウェア詳細設計(詳細設計)で、プログラムの構造

システム開発
を設計します。多くの人が分担してプログラミング作業をしやすいように、プ
ログラムをさらに細かいモジュールという単位にまで分割して設計します。

●プログラミング
設計書に従ってプログラミング( コーディング )を行い、各モジュールを完成
させます。

●テスト
単体モジュール、モジュールを結合したソフトウェア全体が、設計書どおりに
動くかどうかを、段階的にテストします。

●ソフトウェア受入れ
実際に運用するのと同じハードウェア環境にソフトウェアを導入し、正しく
動作するかを確認します。この確認は発注者が行いますが、販売元のベンダ
も発注者に使い方を説明するなど、スムーズに受入れられるようにいろいろ

171
な手伝いをします。

ココが
用語
出る!
[非機能要件]:業務要件の実現に必要な品質・技術・運用・操
作要件を明確化。例えば、開発基準の作成など
[ ソフトウェア方式設計(内部設計)]:前工程で決定したソフ
トウェア要件を、どう実現させるか内部の仕組みを設計
スキル
→開発プロセスの各プロセスでは何を決めて何を行うのか、全
体の流れを理解しておこう。

基本情報技術者試験 平成 21 年春

システム開発の最初の工程で行う作業として、適切なものはどれか。
ア:各プログラムの内部構造を設計する。
イ:現状の業務を分析し、システム要件を整理する。
ウ:サブシステムをプログラム単位まで分割し、各プログラムの詳細を設計
する。
エ:ユーザインタフェースを設計する。

 
システム開発において、最初に行うのは、現状の業務を分析し、ど
解説
んなシステムを開発するか整理する要件定義です。 解答:イ

基本情報技術者試験 平成 25 年秋

非機能要件定義を説明したものはどれか。
ア:業務要件のうち、システムで実現が難しく、手作業となる業務機能を明
確化する。
イ:業務要件の実現に必要な、品質要件、技術要件、運用要件などを明確化
する。
ウ:業務要件を確定させるために、現行システムで不足している機能を明確
化する。

172
5-1 システム開発の概要

エ:業務要件を実現するために、新たに導入するパッケージの適合性を明確
化する。

 
非機能要件では、業務要件の実現に必要な品質・技術・運用・操作
解説
要件などを明確化します。 解答:イ

基本情報技術者試験 平成 25 年春

開発プロセスにおける、ソフトウェア方式設計で行うべき作業はどれか。
ア:顧客に意見を求めて仕様を決定する。
イ:既に決定しているソフトウェア要件を、
どのように実現させるかを決める。
ウ:プログラム 1 行ごとの処理まで明確になるように詳細化する。
エ:要求内容を図表などの形式でまとめ、段階的に詳細化して分析する。

 
ソフトウェア方式設計(内部設計)では、ソフトウェアをどのように
解説
組み合わせ実現させるかを決めます。 解答:イ

第 章 ●
5

システム開発

173
★ ★ ★
5
2 システム開発手法

●システム開発の手法
開発の進め方にはいくつか種類があり、主なものに、ウォータフォールモデル、
プロトタイピングモデル、スパイラルモデルがあります。

●ウォータフォールモデル
「要件定義」→「 システム設計」→「 プログラミング 」→「 テスト 」の順に行う開
発手法をウォータフォールモデルといいます。
「5-1 システム開発の概要」で説
明したのはこの開発手法です。最初から順番に進んでいくので、進行状況を把
握しやすいという特徴があります。その反面、いったん次のプロセスに進んで
しまうと、前のプロセスに戻って修正するのは難しいので、前の工程への手戻
りが発生しないように、それぞれの工程が終了する際には、しっかりとチェッ
クを行う必要があります。

〈ウォータフォールモデル 〉

要件定義

システム設計 ウォータフォール = 滝
水が流れ落ちるように
上から下に順番に行う
プログラミング

テスト

これも 修復に要するコスト

知っと ウォータフォールモデル型の開発において、運用テストで誤り
が発見された場合、開発プロセスの上流工程に起因するものほ
ど修復に要するコストが高くなります。

174
5-2 システム開発手法

●プロトタイピングモデル
最初に試作品( プロトタイプ )を作成して、利用者(発注者)に出来具合いや使
い勝手を確認してもらいながら開発を進めていく手法を、プロトタイピングモ
デルといいます。発注者と開発者の間に勘違いや誤解があっても、早い段階で
確認して修正できるので、開発ミスや手戻りを少なくすることができます。

●スパイラルモデル
大規模なシステムになると、システムをすべてウォータフォールモデルの流れ
作業で進めるのは大変ですし、プロトタイプを作るのも簡単ではありません。
このようなケースでは、システムをいくつかのサブシステムに分割して、開発
サイクルを繰り返すスパイラルモデルで開発を進めます。完成したサブシステ
ムはプロトタイプを作って利用者に評価してもらい、それを部品としてさらに
大きなサブシステムを開発します。こうして徐々にサブシステムが大きくなっ
らせん
ていく過程が螺旋( スパイラル )をイメージさせるので、スパイラルモデルと
呼ばれています。

第 章 ●
<スパイラルモデル>

5
分析 設計

システム開発
テスト 実装

これも アジャイル開発

知っと アジャイルとは「機敏な」という意味です。スパイラルモデル
の派生型の開発手法で、週単位での短い期間の開発サイクルを
繰り返しながら、段階的に機能を完成させていきます。開発期
間を短縮したり、仕様変更に柔軟に対応できるメリットがあり
ます。

175
ココが
出る! 用語
[ ウォータフォールモデル ]
:要件定義→システム設計→プロ
グラミング→実装→テストの順に開発
[プロトタイピング ]:試作品を作りながら開発
[スパイラルモデル ]:開発サイクルを繰り返して開発

基本情報技術者試験 平成 21 年春

システム開発におけるウォータフォールモデルの説明はどれか。
ア: 一度の開発ですべてを作るのではなく、基本的なシステムアーキテク
チャの上に機能の優先度に応じて段階的に開発する。
イ:開発工程を設計、実装、テストなどに分け、前の工程が完了してから、
その成果物を使って次の工程を行う。
ウ:試作品を作り、利用者の要求をフィードバックして開発を進める。
エ:複雑なソフトウェアを全部最初から作成しようとするのではなく、簡単
な部分から分析、設計、実装、テストを繰り返し行い、徐々に拡大して
いく。

 
ウォータフォールモデルは、開発工程を設計、実装、テストなどに
解説
分け、この順番に作業を行う開発手法です。      解答:イ

基本情報技術者試験 平成 23 年秋

要求分折から実装までの開発プロセスを繰り返しながら、システムを構築し
ていくソフトウェア開発手法はどれか。
ア:ウォータフォールモデル       イ:スパイラルモデル
ウ:プロトタイピングモデル       エ:リレーショナルモデル

 
開発サイクルを繰り返すことによってシステムを構築していく開発
解説
手法は、スパイラルモデルです。 解答:イ

176
5-3 業務のモデル化
★ ★ ★
5
3 業務のモデル化

●モデル化の手法
システム開発を始めるにあたり、まずはシステム化しようと考えている業務の流
れ(ビジネスプロセス )や、取り扱う情報(データクラス )の関係をわかりやすく図
解します。この作業を業務のモデル化といいます。モデル化の際に使われる図解方
法について見ていきましょう。

ディーエフディー
● DFD(データフロー図)
デ ー タ フ ロ ー ダ イ ア グ ラ ム
DFD( Data Flow Diagram )は、データの流れに着目して、対象業務を分析す
るときに使う図解手法です。データの流れ( データフロー)と、データを処理する
プロセスを図にすることで、業務内容を確認しやすいというメリットがあります。

第 章 ●
ただし、DFD は処理のタイミングなど時間的な表現はできません。
5
DFD で使用される記号は、次の 4 種類です。

〈 DFD で使う記号〉

システム開発
記号 名称 意味

データストア ファイル・帳票やデータベースなど、
データの蓄積

  データフロー データの流れ。データフローの上に
はデータ名を記述する

プロセス データの処理や変換

データの発生源(源泉) データの発生源または最終的な行先
データの行先(吸収)

177
〈 DFD の作図例〉
データの発生源 データストア

顧客 顧客マスタ 商品マスタ

注文
受注伝票 在庫
受注
確認


指示 チェック済み
データフロー 出荷 受注伝票

出荷 出荷済報告書 売上
プロセス
指示 計上

イーアール
●E-R図
エンティティ リ レ ー シ ョ ン シ ッ プ ダ イ ア グ ラ ム
E-R 図( Entity-Relationship Diagram )は、データの構造を実体(エンティティ)
と、実体同士の関係( リレーションシップ )の 2 つの概念で表現したもので、デー
タ間の関連分析に用いられます。
E-R 図では、
「実体」を長方形で描き、
「実体間の関連」を直線、または矢印で表し
ます。関連の違いによって、次の 4 種類に分けられます。

〈 E-R 図〉

1 1

エンティティ エンティティ 1対 1

1 *

エンティティ エンティティ 1対多

* 1

エンティティ エンティティ 多対 1

  * *

エンティティ エンティティ 多対多

例えば、「顧客が注文を行う」という、もっとも単純なビジネスプロセスを、E-R
図で描いてみます。
「顧客」から「注文」の方向を考えてみると、1 人の顧客は複数の
注文をするので 1 対多の関係です。

178
5-3 業務のモデル化

反対に、
「注文」から「顧客」の方向を考えてみると、1 つの注文は 1 人の顧客から
なされるので 1 対 1 の関係になります。
よって、以下のような E-R 図の表記になります。

〈 E-R 図の具体例〉

1 *

顧客 注文

せんい
●状態遷移図
状態遷移図は、時間の経過や制御信号などの状態を変化させるきっかけと、変化
に伴って実行する動作を記述するときに用いる図です。DFD が苦手とする、リア
ルタイム性のあるシステムの分析や設計に便利です。システム開発では、業務の変
化や画面の遷移などを表すのに用いられています。

〈150 円のジュースを販売する自動販売機の状態遷移図〉

さらに100円入れると さらに100円入れると

第 章 ●
ジュースが出る 100/ジュース+50 ジュースと50円の
  お釣りが出る
5
50/ジュース

システム開発
100/ジュース
初期
S0 S1 S2
状態
50/* 50/*

100/*
50円投入
100円投入
50円投入された状態 された状態
*は出力がないという意味

ココが
出る! 用語
[ DFD ]
:データの流れに注目して表現する
[ E-R 図]:実体(エンティティ)と実体間の関連(リレーション
シップ )に着目してデータの構造を表現する
[状態遷移図]:システムの状態の推移を表現。リアルタイムシ
ステムに適用される

179
基本情報技術者試験 平成 27 年春

E-R 図の説明はどれか。
ア: オブジェクト指向モデルを表現する図である。
イ:時間や行動などに応じて、状態が変化する状況を表現する図である。
ウ:対象とする世界を実体と関連の二つの概念で表現する図である。
エ:データの流れを視覚的に分かりやすく表現する図である。

 
E-R 図は、実体と実体間の関連に着目して情報を表現した図です。
解説
解答:ウ

基本情報技術者試験 平成 25 年春

設計するときに、状態遷移図を用いることが最も適切なシステムはどれか。
ア: 月末及び決算時の棚卸資産を集計処理する在庫棚卸システム
イ:システム資源の日次の稼働状況を、レポートとして出力するシステム資
源稼働状況報告システム
ウ:水道の検針データを入力として、料金を計算する水道料金計算システム
エ:設置したセンサの情報から、温室内の環境を最適に保つ温室制御シス
テム

 
状態遷移図は、温室制御システムのようなリアルタイムシステムの
解説
設計に適しています。 解答:エ

180
5-4 ソフトウェア要件定義(外部設計)
★ ★ ★
5
4 ソフトウェア要件定義
(外部設計)

●ヒューマンインタフェースの設計
システムの見た目の部分を設計するソフトウェア要件定義(外部設計)では、ユー
ザに対する情報の表示方法や、ユーザが実際に操作する画面を設計します。この
ような、ユーザとコンピュータをつないでいる部分のことをヒューマンインタ
フェースといいます。ヒューマンインタフェースは、「 ユーザにとって使いやすい
かどうか」を考えて設計する必要があります。
「使いやすさ」のことをユーザビリ
ティといいます。

ココが
出る! 用語
[ ヒューマンインタフェース ]
:ユーザビリティを考えて設計

第 章 ●
する
5

ジーユーアイ
● GUI

システム開発
ジーユーアイ グ ラ フ ィ カ ル ユ ー ザ インタフェース
現在普及している GUI( Graphical User Interface )も、ユーザビリティを考
慮したものです。GUI とは、ユーザに対する情報の表示にイラストを使用するユー
ザインタフェースのことです。以前のコンピュータは文字で表示され、操作も文字
入力で行っていたので、専門知識のある人でないと操作できませんでした。しかし、
GUI は、文字ではなくイラストで表示され、マウスを使って操作できるので、直感
的に操作することができます。

〈 GUI 〉
昔のコンピュータ GUI

文字だけで イラストで
表示される A:¥>dir 表示される
ごみ箱

スタート

すべての操作を マウスで
文字で入力 直感的に操作

181
● GUIの画面設計
GUI の画面設計では、開発システムの操作内容をメニュー形式で表示させること
ができます。どの画面でも共通するボタンやメニューは、できるだけ形や位置を同
じにして、ユーザビリティに配慮します。
また、ユーザがデータを入力する画面では、あらかじめ選択肢を用意しておくな
どの工夫をすることによって、ユーザの入力の手間を省くことができます。具体的
には、以下のような部品を設計することができます。

〈 GUI の画面設計〉

メニューバー ユーザの入力画面
テキストボックス
【ご意見】
(文字を入力する)
ファイル 編集 書式 表示 ヘルプ タイトル:
新規 内容: テキストエリア
開く プルダウン (長めの文字を
上書き保存 メニュー 興味のあるものにチェックしてください 入力する)
 映画  音楽  読書
名前を付けて保存
 サッカー  ゴルフ  野球
チェックボックス
印刷 (選択肢から複数
元に戻す を選択できる)
終了 メルマガ: 受け取る  受け取らない
切り取り
コピー
年齢:
貼り付け
削除 10代
20代
すべて選択 30代

ポップアップメニュー リストボックス ラジオボタン


(選択肢をリストで表示)
(選択肢から 1 つだけ選択できる)

これも マクロ機能

知っと 一連のコマンドをひとまとめにして、ひとつのコマンドで実行
する機能をマクロ機能といいます。定型的な作業を頻繁に行う
ユーザの操作数を少なくする目的で用いられます。

ココが
出る! 用語
[プルダウンメニュー]:ボタンをクリックすると選択項目が一
覧表示される
[チェックボックス ]:選択肢の中から、複数を選択できる

182
5-4 ソフトウェア要件定義(外部設計)

ココが
出る! 用語
[ラジオボタン ]:選択肢の中から、1 つのみを選択できる
[リストボックス ]:選択肢がメニューで表示される
[マクロ機能]:一連のコマンドをひとまとめにして実行

基本情報技術者試験 平成 25 年秋

ある商店では、約 200 品目の商品を取り扱っている。商品データの新規登


録画面の入力項目のうち、入力方式としてプルダウンメニューを用いるのが
適しているものはどれか。

項目 様式と規則
ア 商品番号 5 けたの英数字項目で、商品ごとに付番する。
イ 商品名 40 字以内の日本語項目で、商品ごとに命名する。
ウ 商品区分 10 字以内の日本語項目で、5 区分ある。
エ 価格 6 けたの数字項目で、範囲は 10,000~100,000 円である。

第 章 ●
5

 
プルダウンメニューは、ボタンをクリックすると選択項目が一覧表
解説
示されます。そのため、選択項目の数が限られた商品区分の入力方

システム開発
式に適しています。 解答:ウ

基本情報技術者試験 平成 26 年春

ヒューマンインタフェースの機能のうち、定型的な作業を頻繁に行う利用者
の操作数を少なくする目的で用いるものはどれか。
ア: 一連のコマンドをひとまとめにしたマクロ機能
イ: 最後の画面でまとめて入力エラーを表示する機能
ウ: 全工程のうち,現在どこまで進んでいるかを表示する機能
エ: 操作を誤ったときに前の状態に戻すことができる機能

 
一連の作業をまとめて一度に実行するマクロ機能を使うと、利用者
解説
の操作数を減らすことができます。 解答:ア

183
★ ★ ★
5
5 ソフトウェア詳細設計

●プログラム構造化設計
ソフトウェア詳細設計では、プログラムをモジュールというひとまとまりの機能
をもった単位に分割します。これを、プログラム構造化設計といいます。プログラ
ムを複数のモジュールに分割することで、大勢の人間で分担してプログラムを開発
できるようになります。また、モジュール単位でテストできるので、もし問題が起
こっても原因を特定しやすく、修正はモジュール内だけで済みます。

〈プログラムの構造化設計〉

モジュールに分割
 
モジュール

プログラム

モジュール モジュール

●モジュールの独立性
プログラムの信頼性と保守性を高めるには、1 つのモジュールに入れる機能をで
きるだけ少なくし、各モジュールの独立性を高くします。独立性が高ければ、ある
モジュールが故障したり、変更されたりしても、他のモジュールへの影響が少なく
なるからです。モジュールの独立性は、モジュール強度とモジュール結合度で評価
します。

●モジュール強度
1 つのモジュール内の機能どうしの関連の強さを示すものを、モジュール強度
といいます。モジュールどうしの関連のしかたによって、次の 7 種類に分類さ
れます。モジュール強度が強いほど、モジュールの独立性は高くなります。

184
5-5 ソフトウェア詳細設計

〈モジュール強度〉

独立性 強度 名称 概要

低い 弱い 暗号的強度 内部の機能どうしに関連性がない

論理的強度 関連した複数の機能をもち、その中からどれか 1 つ
を選択するようなモジュール

時間的強度 機能が時間順に実行されるモジュール

手順的強度 機能が順番に実行されるモジュール

  連絡的強度 内部の機能どうしがデータを共有するモジュール

情報的強度 データを共有する機能を 1 つにまとめたモジュール

高い 強い 機能的強度 1 つの機能だけからなるモジュール

●モジュール結合度
モジュールどうしの関係の強さを示すものを、モジュール結合度といいます。
モジュールどうしの関係のしかたによって、次の 6 種類に分類されます。モ

第 章 ●
ジュール結合度が弱い方が、モジュールの独立性は高くなります。
5
〈モジュール結合度〉

独立性 結合度 名称 概要

システム開発
低い 強い 内部結合 他のモジュールの内容を直接参照する

共通結合 共通領域に定義したデータを参照する

外部結合 外部宣言しているデータを共有する
ひきすう
制御結合 制御パラメタを引数として渡し、モジュールの実行
順序を制御する

  スタンプ結合 データ構造を引数として受け渡す

高い 弱い データ結合 データ項目だけを引数として受け渡す

185
モジュール強度と結合度については、試験では最強または最弱の
いずれかが問われることが多いため、最強、最弱のものについて
は、特にしっかりと内容まで理解しておきましょう。また、問題
で問われているのが強度なのか結合度なのかについては、問題文
をよく読み、間違えないように注意しましょう。

ココが
出る! 用語
[モジュール強度]:最も強いのは機能的強度、最も弱いのは暗
号的強度。強い方がモジュールの独立性が高い
[モジュール結合度]
:最も強いのは内部結合、
最も弱いのはデー
タ結合。弱い方がモジュールの独立性が高い

基本情報技術者試験 平成 20 年春

モジュールの独立性を高めるには、
モジュール結合度を弱くする必要がある。
モジュール間の情報の受渡し方法のうち、モジュール結合度が最も弱いもの
はどれか。
ア:共通域に定義したデータを、関係するモジュールが参照する。
イ:制御パラメタを引数として渡し、モジュールの実行順序を制御する。
ウ:データ項目だけをモジュール間の引数として渡す。
エ:必要なデータを外部宣言して共有する。

 
結合度の強い順に並べると、アの共通結合、エの外部結合、イの制
解説
御結合、ウのデータ結合となり、ウのデータ結合が、モジュール結
合度が最も弱いものになります。              解答:ウ

186
5-6 プログラミング

5
6 プログラミング

●プログラミングとは
ソフトウェア詳細設計で分割されたモジュール単位に、専用の言語を使ってプロ
グラムを作成していきます。この作成作業をプログラミング( コーディング )とい
います。

これも プログラミングの標準化

知っと プログラムの処理内容を理解しやすくすることを目的に、変数
名やコメントなどのつけ方などに一定の規則を決めることをプ
ログラミングの標準化といいます。プログラムが読みやすくな
り、プログラマの犯しやすい誤りを未然に防止する効果があり
ます。

第 章 ●
5

●プログラム言語

システム開発
プログラムを書くための専用の言語をプログラム言語といいます。プログラム言
語には、さまざまな種類があります。コンピュータがより理解しやすいプログラム
言語を低水準言語といい、人間に理解しやすいプログラム言語を高水準言語といい
ます。
低水準言語には、機械語、アセンブラ言語などがあります。一方、高水準言語に
コ ボ ル フ ォ ー ト ラ ン シー ベーシック パ ス カ ル シープラスプラス ジ ャ バ
は、COBOL、FORTRAN、C、BASIC、Pascal、C + + 、Java などがあります。

●言語プロセッサ
コンピュータは機械語で書かれたプログラムしか理解できません。そのため、人
間が記述したプログラムである原始プログラム( ソースプログラム )は、そのまま
ではコンピュータ上で実行できません。そこで言語プロセッサという翻訳プログラ
ムを使って、機械語のプログラムである目的プログラムに翻訳する必要があります。

187
〈言語プロセッサの役割〉

機械語に変換

言語プロセッサ

原始プログラム 目的プログラム

言語プロセッサは、翻訳の仕方によって、アセンブラ、コンパイラ、ジェネレー
タ、インタプリタに分類できます。

〈言語プロセッサの種類〉

翻訳プログラム アセンブラ

言語プロセッサ コンパイラ

ジェネレータ

インタプリタ

●アセンブラ
アセンブラは、アセンブラ言語で書かれた原始プログラムを、目的プログラム
に翻訳する言語プロセッサです。アセンブラ言語は機械語に記号を割り当てた
もので、命令は原則 1 対 1 で機械語に翻訳されます。アセンブラで翻訳するこ
とをアセンブルといいます。

●コンパイラ
コンパイラは、高水準言語で書かれた原始プログラムを一括して目的プログラ
ムに翻訳する言語プロセッサです。コンパイラで翻訳することをコンパイルと
いいます。

●ジェネレータ
ジェネレータは、入力・処理・出力などの必要な条件を設定値であるパラメタで
指示することで、処理の目的に応じたプログラムを自動的に生成する言語プロ
セッサです。

188
5-6 プログラミング

●インタプリタ
インタプリタは、高水準言語で書かれた原始プログラムを 1 行ずつ解釈し、実
行する言語プロセッサです。機械語の目的プログラムは作成されないため、実
行するたびに解釈が必要でプログラムの実行速度は遅くなります。インタプリ
タは、プログラムの途中で文法ミスなどがあっても、その直前まで実行できます。

ココが
出る! 用語
[ アセンブラ ]:アセンブラ言語で書かれた原始プログラムを、
機械語に翻訳
[コンパイラ ]:原始プログラムを、一括して機械語に翻訳
[ ジェネレータ ]:パラメタから指示して、処理の目的に応じ
たプログラムを自動的に生成
[ インタプリタ ]
:原始プログラムの命令を 1 つずつ解釈して
実行

第 章 ●
5
これも トランスレータとエミュレータ

知っと トランスレータとは、ある処理系用に書かれた原始プログラム

システム開発
を、他の処理系用の原始プログラムに変換するプログラムのこ
とです。エミュレータは、他のコンピュータ用のプログラムを
解読し、実行するマイクロプログラムです。

●ソフトウェア実行までの手順
コンパイラ方式の高水準言語で書かれたプログラムが、ソフトウェアとなって実
行されるまでの手順を見ていきます。

〈ソフトウェア実行までの手順〉

①コンパイル ②リンク ③ロード

原始プログラム 目的プログラム ロードモジュール 実行

ライブラリ
モジュール

189
①コンパイル
まず、高水準言語で書かれた原始プログラムを、コンパイラによって、機械語
の目的プログラムに翻訳します。このとき、原始プログラムを解析し、実行時
の処理効率を高めるために最適化が行われます。

②リンク
プログラムを作成するときは、コンパイルをしただけの目的プログラム単体で
は実行できません。目的プログラムからライブラリモジュールのプログラムを
呼び出したり、他の原始プログラムに書かれた処理を呼び出す必要があるため
です。ライブラリモジュールとは、ある特定の機能をもったプログラムを他の
プログラムから利用できるように部品化したプログラムの集まりです。
そこで、コンパイラによって翻訳された目的プログラムに、必要なライブラリ
モジュールなどを付け加えて、実行可能なプログラムであるロードモジュール
を生成します。この作業をリンクといい、リンクを行うプログラムをリンカと
いいます。
リンクには、静的リンクと動的リンクがあります。静的リンクは、プログラム
を実行する前に、リンカによってあらかじめ必要な目的プログラムやライブラ
リモジュールをリンクする方法です。動的リンクは、プログラム実行中に別の
プログラムモジュールの機能が必要となったとき、そのプログラムを随時リン
クする方法です。動的リンクを前提としたソフトウェアモジュール群をまとめ
たライブラリファイルを DLL(動的リンクライブラリ )といいます。

③ロード
ロードモジュールを実行するために主記憶上にもってくる作業をロードとい
い、ローダと呼ばれるプログラムが担当します。

ココが
出る! 用語
[最適化]:コンパイル時、原始プログラムを解析し、実行時の
処理効率を高めた目的プログラムを作成
[ リンク ]:目的プログラムやライブラリモジュールを組み合
わせて、ロードモジュールを生成
[ロード ]:ロードモジュールを主記憶上に配置

190
5-6 プログラミング

ココが
出る! 用語
[動的リンク ]:アプリケーションの実行中、必要に応じて動
的リンクライブラリを呼び出して、プログラム本体と結合

これも リファクタリング

知っと ソフトウェアの保守性を高めるために、外部仕様を変更するこ
となく、プログラムの内部構造を変更することをリファクタリ
ングといいます。

●プログラムの性質
速く、正確に動くプログラムはよいプログラムだといえますが、そのようなよい
プログラムを作るには、プログラムの 4 つの性質を理解しておくことが大切です。

第 章 ●
5
●逐次再使用可能(リユーザブル )
いったん実行が終わった後も、再度主記憶にロードし直さなくても実行できる

システム開発
プログラムを再使用可能なプログラムといいます。
そのうち、同時には 1 つのタスクだけしか使用できないプログラムを、逐次再
使用可能プログラムといいます。

●再入可能(リエントラント )
再使用可能なプログラムのうち、2 つ以上のタスクから同時に呼び出しても正
しく動作するプログラムを再入可能なプログラムといいます。再入可能なプロ
グラムは、コード(手続き)部分とデータ部分が別の記憶領域に分かれている
ため、データ部分をタスクごとに用意することで並列して実行できます。

●再配置可能(リロケータブル )
主記憶上のどこの位置にロードしても実行できるプログラムを、再配置可能な
プログラムといいます。

191
●再帰的(リカーシブ )
実行中に自分自身を呼び出せるプログラムを再帰的なプログラムといいます。

リバースエンジニアリング
これも

知っと プログラムのソースコードを解析して、プログラムの仕様や設
計情報を復元することを、リバースエンジニアリングといいま
す。例えば、実際に稼働しているデータベースシステムの定義
情報から、E-R 図作成ツールを使って、E-R 図で表現した設計
書を生成したり、プログラムから UML のクラス図を生成し
たりすることが、これにあたります。

ココが
出る! 用語
[逐次再使用可能]:1 回ロードすれば何度でも実行できる。1
つのタスクしか使用できない
[再入可能]:複数のタスクで同時に使用できる
[再配置可能]
:主記憶上のどこの位置にロードしても実行できる
[再帰的]:自分自身を呼び出せる
[リバースエンジニアリング ]:ソースコードを解析して、内部
仕様や構造を復元

基本情報技術者試験 平成 22 年春

あるプログラム A の処理が終了していないときに、別のプログラムから再
度呼び出されても正しく動作するとき、このプログラム A の性質を何と呼
ぶか。
ア:再帰的  イ:再使用可能  ウ:再入可能  エ:再配置可能

 
同時に 2 つ以上のプログラムから呼び出されても実行できるのは再
解説
入可能なプログラムです。 解答:ウ

192
5-6 プログラミング

基本情報技術者試験 平成 21 年春

図はプログラムを翻訳して実行するまでの流れを示したものである。コンパ
イラ、リンカ、ローダの入出力の組合せとして、適切なものはどれか。

原始プログラム コンパイラ a リンカ c ローダ

a b c
ア 目的プログラム ライブラリモジュール ロードモジュール
イ ライブラリモジュール ロードモジュール 目的プログラム
ウ ロードモジュール 目的プログラム ライブラリモジュール
エ ロードモジュール ライブラリモジュール 目的プログラム

 
原始プログラムをコンパイラにより翻訳すると、
「目的プログラム 」
解説
ができます。さらに、「目的プログラム 」はリンカによって「 ライブ

第 章 ●
ラリモジュール 」を組み込んで、実行可能な「ロードモジュール 」になり、
5
ローダによって主記憶上に配置されます。          解答:ア

システム開発
基本情報技術者試験 平成 26 年秋

プログラムから UML のクラス図を生成することを何と呼ぶか。


ア: バックトラッキング
イ:フォワードエンジニアリング
ウ:リエンジニアリング
エ:リバースエンジニアリング

 
UML のクラス図は、オブジェクト指向のプログラム設計図です。
解説
プログラムを解析し、内部仕様や構造を取り出すことを、リバース
エンジニアリングといいます。 解答:エ

193
★ ★ ★
5
7 オブジェクト指向

●オブジェクト指向とは
従来のシステム開発では、
「データ 」や「処理」の流れに注目して、
「データ 」と「処
理」を別々の単位でとらえて、システムを設計する手法がとられてきました。コン
ピュータの基本的な動作が、「 データ 」に対して「何らかの処理をする」という形で
構成されているからです。
一方、現実世界ではまず人や物があり、それらが「 データ 」と「処理」をもってい
ます。例えば、車は、色や車種というデータをもち、走る・止まるといった処理を
行います。このように、
「データ 」と「処理」をひとまとまりの「オブジェクト 」とい
う単位でとらえ、システム上で表現する手法がオブジェクト指向です。オブジェク
ト指向では、
「 データ(属性)」と、データを操作する「 メソッド(手続き)
」をまとめ
たオブジェクト単位でプログラムを作り、それらを組み合わせてシステムを開発し
ていきます。

〈オブジェクト指向のシステム開発〉

データ
(属性)

メソッド
(手続き)

オブジェクト 組み合わせてプログラムを作成 システム化

●カプセル化
データ(属性)とデータを操作するメソッド(手続き)を、1 つのオブジェクトに
まとめて、内部仕様を外から見えないように隠ぺいすることをカプセル化といいま
す。他のオブジェクトが直接内部データにアクセスできないので、オブジェクトの
内部仕様を変更しても、他のオブジェクトに影響を与えません。オブジェクト同士
は、メッセージを送ることで協調して動作します。

194
5-7 オブジェクト指向

〈カプセル化と情報隠ぺい〉

外部からデータは
見えない(情報隠ぺい)
他の
データ オブジェクト

操作
他の
メソッド
オブジェクト
メッセージを送り
処理を要求
カプセル化

●クラスとインスタンス
オブジェクトの設計図をクラスといいます。クラスには、オブジェクトの名前、
データの構造、メソッドの処理内容などが書かれています。
このクラスという設計図をもとに作られた 1 つ 1 つのオブジェクトのことをイン
スタンスと呼びます。
例えば、
「自動車」というオブジェクトのクラスには、自動車とは何か、何ででき

第 章 ●
ていて、どのような構造をしているのかが書かれているだけで、それに乗ってドラ
5
イブできるわけではありません。一方、インスタンスは、設計図をもとに作られた
1 台の自動車で、実際に動作します。

システム開発
〈クラスとインスタンス 〉

ハンドル
データ ブレーキ
タイヤ……

ハンドルを切る
メソッド
ブレーキを踏む……

自動車クラス(設計図) 自動車インスタンス(実体)

●クラスの階層構造
オブジェクト指向では、他のクラスで流用できるように、クラスも部品化されて
はんか とっか
います。部品化の仕方には汎化-特化と集約-分解があります。

●汎化-特化
いくつかのクラスに共通している事柄をまとめて、1 つの別のクラスを作るこ

195
とを汎化(抽象化)といいます。
例えば、バス、タクシー、トラックをそれぞれクラスと考えると、これらには
どれも「自動車である」という共通点があります。
「 ハンドルがあって、タイヤ
が 4 つあって、エンジンがあって……」というような、自動車ならどれにでも
共通している事柄をまとめて「自動車」というクラスを作るのが汎化なのです。
「自動車」というクラスを使えば、バスやタクシーのクラスには、
「自動車」以外
の特徴を書き加えるだけで済みます。

〈汎化-特化〉
特化

バス

自動車 タクシー

トラック

汎化

これとは逆に、汎化したクラスから個々のクラスを考え出すことを特化といい
ます。
「自動車」というクラスから、トラックやバスはもちろん、電気自動車と
いうクラスを考え出すことが特化です。
クラス A とクラス B が汎化-特化の関係にあるとき、汎化されたクラス A のこ
とを基底クラス( スーパクラス )といい、特化されたクラス B のことを派生ク
ラス(サブクラス )といいます。
派生クラスを作るときには、基底クラスに決められた手続きやデータを受け継
ぎます。これを継承( インヘリタンス )といいます。バス、タクシー、トラッ
クなどの派生クラスは、自動車クラスを継承しているというわけです。

●集約-分解
クラスの部品化のもう 1 つの方法は、集約-分解です。これもまた自動車の例
で考えてみます。自動車は、タイヤ、ハンドル、ブレーキなどいくつかの部品
を集めて組み合わせたものです。これはすなわち、自動車というクラスは、タ
イヤ、ハンドル、ブレーキといったクラスを集約したものであるといえます。
逆に、タイヤ、ハンドル、ブレーキというクラスは、自動車というクラスを分
解したものです。

196
5-7 オブジェクト指向

集約-分解の関係においては、継承はありません。分解されたクラスはあくま
でも集約されたクラスの構成部品の一部にすぎないからです。

〈集約-分解〉
分解

タイヤ

自動車 ハンドル

ブレーキ

集約

ココが
用語
出る!
[メソッド ]:オブジェクトのもつ振る舞いを記述

第 章 ●
[カプセル化]
:データ(属性)とメソッド(手続き)を 1 つにして,
オブジェクト内部に隠ぺい 5
[クラス ]:オブジェクトのデータやメソッドを定義した情報
[インスタンス ]:クラスの定義に基づいて生成される実体

システム開発
[継承( インヘリタンス )]:基底クラスのデータとメソッドを
派生クラスに継承する
スキル
→オブジェクト指向の特徴を理解しておこう。
→汎化-特化、集約-分解について、具体的な事例で関係性を
判断できるようにしておこう。

ユーエムエル
●UM L
「5-3 業務のモデル化」で、図解の方法として、DFD や E-R 図を紹介しましたが、
オブジェクト指向を用いた開発では、オブジェクトの構成や関係性などをモデル化
し、プログラムの設計図を作成します。その際に使われるモデリング言語を UML
ユニファイド モ デ リ ン グ ラ ン ゲ ー ジ
( Unified Modeling Language )といいます。UML にはさまざまな図法がありま
すが、ここでは代表的なものを紹介します。

197
●クラス図
クラスの属性と操作、クラス間の関係を表した構造図です。クラス図には、ク
ラス名、属性、操作、ロール名のほか、クラス間の関係性が記述されます。

〈クラス図〉
クラスC

・属性
汎化
・操作
クラスA クラスB
1 1..* ロール名
・属性 ・属性
集約 ロール名
・操作 ・操作
クラスD
汎化
・属性
・操作

これも オブジェクト図

知っと クラスの定義に基づいて生成されるインスタンス間の関係を表
した構造図です。クラス図に似ていますが、属性には具体的な
値が入っています。

これも 多重度

知っと 関連するクラス間の数量的な関係を表現したものを多重度とい
います。例えば、組織と社員の関係について多重度を表記する
場合、1つの組織には複数の社員が所属している関係となるた
め、会社側に 1、社員側に 1..* と記述します。*は複数を表し、
1..* は 1 かそれ以上という意味を表しています。
 
〈多重度の読み方〉
組織 社員
1 1..*

●ユースケース図
システムが提供する機能とサービスの範囲を表した図です。ユースケース図に
は、提供機能を示すユースケース、ユーザを示すアクター、これらの関連性が
記述されます。

198
5-7 オブジェクト指向

〈ユースケース図〉

関連
ユースケースC
関連 ユースケースA
ユースケースD
関連

関連 ユースケースB ユースケースE
アクター 関連

●シーケンス図
オブジェクト間の相互作用を時系列で表した図です。各オブジェクトの生存期
間を表すライフライン、アクション期間を表すアクティベーション、オブジェ
クト間でやりとりされるメッセージなどが記述されます。

〈シーケンス図〉

第 章 ●
オブジェクトA オブジェクトB オブジェクトC
アクター 5
アクティベーション

メッセージ ライフライン
メッセージ
アクティベーション

システム開発
メッセージ

時間

ココが
用語
出る!
[ UML ]
:オブジェクト指向開発で使用されるモデル化の統一
表記法
[クラス図]:操作、属性、ロール名を記述
スキル
→クラス図の記号や多重度の表記から、クラス間の関係性が読
み取れるようにしておこう。

199
基本情報技術者試験 平成 26 年春

オブジェクト指向に基づく開発では、オブジェクトの内部構造が変更されて
も利用者がその影響を受けないようにすることができ、それによってオブジ
ェクトの利用者がオブジェクトの内部構造を知らなくてもよいようにするこ
とができる。これを実現するための概念を表す用語はどれか。
ア:カプセル化   イ:クラス化  
ウ:構造化   エ:モジュール化

 
オブジェクト指向開発で、オブジェクトの内部構造を隠ぺいするこ
解説
とをカプセル化といいます。 解答:ア

基本情報技術者試験 平成 27 年春

オブジェクト指向の考え方に基づくとき、一般に“自動車”のサブクラスと
いえるものはどれか。
ア: エンジン    イ:製造番号   ウ:タイヤ   エ:トラック

 
サブクラスは特化した個々のクラスです。自動車を特化したものは
解説
トラックです。 解答:エ

基本情報技術者試験 平成 26 年春

UML における図の の中に記述するものはどれか。

ア:関連名   イ:クラス名   ウ:集約名   エ:ユースケース名

 
問題の図はクラス図です。クラス図の には、クラス名を記
解説
述します。 解答:イ

200
5-8 システムのテスト
★ ★ ★
5
8 システムのテスト

●プログラムのバグとテスト
プログラムは人の手によって書かれるため、いくら注意しても間違いは発生して
しまいます。プログラムの間違いのことをバグといいます。バグがそのまま残らな
いよう、プログラミングを行ったら、そのつど綿密なテストを行い、バグを発見し、
修正していくことが大切です。テストは、一般的に細かい部分から段階的に行いま
す。ここでは、テストの流れについて説明します。

●単体テスト
ソフトウェア詳細設計時に分割したモジュールごとに、正しく動作するかをテス
トします。これを単体テストといいます。単体テストには、ホワイトボックステス

第 章 ●
トとブラックボックステストがあります。
5
ホワイトボックステストは、モジュールの内部構造に注目して、1 つひとつの処
理が正しく動作しているかどうかをテストします。一方、ブラックボックステスト

システム開発
は、モジュールの内部構造は考慮せず、モジュールの機能仕様やインタフェースの
仕様に基づいて、入力データに対して正しく出力されるかだけをテストします。そ
のため、対象となるプログラムに冗長なコードがあっても見つけることはできませ
ん。

〈ホワイトボックステストとブラックボックステスト 〉

ホワイトボックステスト ブラックボックステスト

入力 出力 入力 出力

中が見える 中が見えない

ホワイトボックステストにおけるテストケースの設計方法には、以下の 4 つがあ
ります。

201
〈ホワイトボックステストにおけるテストケースの設計方法〉

設計方法 説明

命令網羅 全命令を最低 1 回は実行

判定条件網羅(分岐網羅) 分岐の判定において、真と偽の分岐を少なくとも 1 回は実行

条件網羅 分岐の判定文が複数ある場合に、それぞれの条件が真と偽
の場合を組み合わせ

複数条件網羅 判定文の条件が取りうるすべてのパターンを網羅

これも テストカバレージ分析

知っと ホワイトボックステストにおいて、コード中のどれだけの割合
の部分を実行できたかを評価するために行う分析を、テストカ
バレージ分析といいます。

●結合テスト
単体テストが終わった複数のモジュールを組み合わせ、正しく動作するかをテス
トします。これを結合テストといい、モジュールの間のデータのやりとりや、他の
モジュールの呼出しが正しく行われているかを確認します。
結合テストは、テストする順序によって、ボトムアップテスト、トップダウンテ
ストがあります。

●ボトムアップテスト
下位のモジュールから上位のモジュールへ順にテストする方法をボトムアップ
テストといいます。上位には、ドライバと呼ばれるダミーモジュールを使用し
ます。ダミーモジュールとは中身が何もなく処理を行わないため、他に影響を
及ぼさないモジュールです。

〈ボトムアップテスト 〉 ドライバ ダミーモジュール

モジュール

モジュール

202
5-8 システムのテスト

●トップダウンテスト
上位のモジュールから下位のモジュールへ順にテストします。下位には、スタ
ブと呼ばれるダミーモジュールを用意します。

〈トップダウンテスト 〉
モジュール

モジュール

スタブ ダミーモジュール

●システムテスト
結合テストが完了したら、システム全体をテストするシステムテストを行い、要
求された仕様のとおりにシステムが動作するかをチェックします。

第 章 ●
5
これも ストレステスト

知っと システムに通常以上の負荷をかけて、要求されている処理能力

システム開発
の限界状態における動作が正常かを確認するために行うテスト
を、ストレステストといいます。

●運用テスト
利用者に提供する視点で、運用環境と同じ条件で動作確認を行います。システム
が要件定義の要求を満足していることを確認します。

これも リグレッションテスト

知っと プログラムにバグが見つかり、修正を行った場合は、その修正
がほかの部分に影響を及ぼしていないかどうかをテストしま
す。それをリグレッションテスト
(退行テスト )といいます。

203
これも 静的テストツール

知っと テスト支援ツールを活用することで、テストの一部を自動化・
効率化することができます。そのひとつである静的テストツー
ルは、ソースコードを解析して、プログラムの誤りを検出する
ツールです。

これも アサーションチェック

知っと プログラム実行中の特定の時点で成立する変数間の関係や条件
を記述した論理式を埋め込んで、そのプログラムの正当性を検
証する手法をアサーションチェックといいます。

これも 信頼度成長曲線

知っと テストを始めると、最初は多くのバグが発見されますが、テス
トを続けるにつれて次第にその数は減っていきます。テスト項
目の消化件数と検出されたバグの件数を表したグラフを信頼度
成長曲線( ゴンペルツ曲線)といいます。十分なテストを行い、
バグが減ってきたらテスト終了の合図です。曲線が収束しない
場合、まだ多くのバグが内在している可能性があります。

テストが進むにつれて
累積バグ数

バグが減っていく

テスト初期は
多くのバグが発見される

テスト項目消化件数

204
5-8 システムのテスト

ココが
出る! 用語
[単体テスト ]:モジュール単位でテスト
[ ホワイトボックステスト ]
:モジュールの内部構造に注目し
てテスト
[テストカバレージ分析]:ホワイトボックステストで、全コー
ドのうち実行した割合を評価
[ブラックボックステスト ]
:入力と出力だけに注目してテスト
[結合テスト ]:モジュールを組み合わせてテスト
[ ボトムアップテスト ]
:上位モジュールにドライバを使って
テスト
[ トップダウンテスト ]
:下位モジュールにスタブを使ってテ
スト
[システムテスト ]:システム全体をテスト
[運用テスト ]:利用者に提供する視点で、システムが要求を
満たしていることを確認

第 章 ●
[ リグレッション(退行)テスト ]:修正が他の部分に影響を及
ぼしていないかをテスト 5
[ ストレステスト ]:システムに要求された処理能力の限界状
態の動作を確認するテスト

システム開発
基本情報技術者試験 平成 23 年特別

ホワイトボックステストの説明として、適切なものはどれか。
ア:外部仕様に基づいてテストデータを作成する。
イ:同値分割の技法を使用してテストデータを作成する。
ウ:内部構造に基づいてテストデータを作成する。
エ:入力と出力の関係からテストデータを作成する。

 
ホワイトボックステストは、プログラムの内部構造に基づいてテス
解説
トします。 解答:ウ

205
基本情報技術者試験 平成 25 年秋

トップダウン方式で結合テストを行うとき、特に必要となるものはどれか。
ア:エミュレータ   イ:スタブ  
ウ:デバッガ     エ:ドライバ

 
トップダウン方式で結合テストを行うときには、下位モジュールに
解説
スタブを使ってテストします。            解答:イ

基本情報技術者試験 平成 26 年秋

ソフトウェアのテストの種類のうち、ソフトウェア保守のために行った変更
によって、影響を受けないはずの箇所に影響を及ぼしていないかどうかを確
認する目的で行うものはどれか。
ア:運用テスト     イ:結合テスト
ウ:システムテスト   エ:リグレッションテスト

 
修正によって他の部分に影響していないかを確認するのは、リグ
解説
レッション(退行)テストです。 解答:エ

基本情報技術者試験 平成 25 年春

ストレステストの目的はどれか。
ア:システムに要求されている処理能力の限界状態における動作を確認する。
イ:実際に利用者に使ってもらうことによって、システムの使いやすさを評
価する。
ウ:標準的なプログラムの実行時間を計測することによって、他のコン
ピュータと性能を比較する。   
エ:プログラムの修正又は変更によって他の機能が意図しない影響を受けて
いないことを確認する。

 
ストレステストでは、システムに負荷をかけ限界状態において正常
解説
に動作するかを確認します。 解答:ア

206
5-8 システムのテスト

基本情報技術者試験 平成 27 年春

図は、テスト項目消化件数 X において、目標値として設定したバグ累積件数
に到達したことを示す。この図の状況の説明として、適切なものはどれか。

バグ累積件数の目標値

バグ累積件数

テスト項目消化件数 X

ア:テスト工程が順調に終了したことを示す。
イ:テスト前段階での机上チェックやシミュレーションが十分にされている
ことを示す。
ウ:まだ多くのバグが内在している可能性があることを示す。
エ:目標のバグ累積件数が達成されたので、出荷後にバグが発生する確率が

第 章 ●
低いことを示す。 5

 
曲線が収束していないため、まだ多くのバグが内在している可能性
解説

システム開発
があります。 解答:ウ

207
★ ★
5
9 レビュー手法

●レビューの種類
レビューとは、システム開発の各プロセスにおいて、問題点を洗い出したり、各
工程が終わったといえるかどうかの判定を行ったりするために実施される会議で
す。人間の目や手によってプログラムの仕様やプログラムそのものに誤りがないか
どうかをチェックして、次の工程に問題を残さないようにします。レビューにはデ
ザインレビューとコードレビューがあります。

●デザインレビュー
デザインレビューは、要求定義、外部設計、内部設計などの設計段階で行われ
るレビューで、仕様の不備や誤りを早い段階で見つけて、できるだけ手戻りを
少なくするために行われます。

●コードレビュー
コードレビューは、プログラミングの段階で行われるもので、プログラムのミ
スを発見するために実施されます。

●レビューの手法
レビューのやり方には、次のようなものがあります。

●ウォークスルー
レビュー対象物の作成者が主催者となって、ほかの関係者に説明するレビュー
のやり方をウォークスルーといいます。少人数で短時間で行い、エラーの早期
発見を目指します。

●インスペクション
レビュー対象物の作成者でも関係者でもない、第三者が議長となって行うレ
ビューをインスペクションといいます。客観的なレビューを行うことが可能
です。

208
5-9 レビュー手法

ココが
出る! 用語
[デザインレビュー]:設計上の問題点を発見
[コードレビュー]:プログラム上の問題点を発見
[ウォークスルー]:レビュー対象物の作成者が主催者になりレ
ビューを行う

基本情報技術者試験 平成 20 年春

デザインレビューを実施するねらいとして、適切なものはどれか。
ア:開発スケジュールを見直し、実現可能なスケジュールに変更する。
イ:仕様の不備や誤りを早期に発見し、手戻り工数の削減を図る。
ウ:設計工程での誤りの混入を防止し、テストを簡略化して、開発効率の向
上を図る。
エ:設計の品質を向上させることで、開発規模見積りの精度の向上を図る。

第 章 ●
 
デザインレビューは、仕様の不備や誤りを早期に発見し、手戻り工
解説 5
数の削減を図る目的で実施されます。         解答:イ

システム開発
基本情報技術者試験 平成 23 年特別

設計上の誤りを早期に発見することを目的として、作成者と複数の関係者が
設計書をレビューする方法はどれか。
ア:ウォークスルー     
イ:机上デバッグ
ウ:トップダウンテスト   
エ:並行シミュレーション

 
設計書の不備や誤りを早期に発見し、品質向上を図るために、作成
解説
者と関係者で実施されるレビューはウォークスルーです。 解答:ア

209
コンピュータ
システム
★ ★ ★
6
1 システムの処理形態

●システムの構成方法
システムの構成方法には、1 台のコンピュータだけに処理をさせる集中処理と、
複数のコンピュータに分散して処理をさせる分散処理があります。それぞれに長所
と短所があるので、用途に合わせて構成方法を選択します。

〈集中処理と分散処理〉

集中処理 分散処理

この1台ですべてを
処理する
(ホストコンピュータ
それぞれの
という)
コンピュータ
が処理する

入出力
のみ行う

●メリット ●メリット
 処理するのは1台だけなので管理がラク  どこかに障害が発生してもシステム
 は動く
●デメリット
 ホストコンピュータに障害が発生したら ●デメリット
 アウト  管理作業が大変

●処理のタイミング
システムは、システムの目的によって処理を行うべきタイミングが異なります。
例えば銀行の ATM は、利用者が操作したらすぐに処理されないと振込み金額と口
座残高に差異が生じてしまいます。一方、企業における売上データの集計などは、
1 日 1 回やひと月に 1 回など、集計できるだけのデータが集まった段階で処理をし
ます。要求された処理をすぐに行う方法をリアルタイム処理、ある程度まとまった
データを一括して処理する方法をバッチ処理といいます。

212
6-1 システムの処理形態

これも ハードリアルタイムシステムとソフトリアルタイムシステム

知っと リアルタイム処理を行うシステムは、決められた時刻までに処
理を終了させることが要求されますが、その厳密性により次の
2 つに分けられます。
ハードリアルタイムシステムは、決められた時刻までに処理を
終了できなかった場合に、システムやそれを扱う人に致命的ダ
メージが発生するシステムで、例えばエアバッグ制御システム
が挙げられます。ソフトリアルタイムシステムは、決められた
時刻までに終了できなくても致命的な問題とはならないシステ
ムで、座席予約やバンキングシステムなどがあります。

ココが
用語
出る!
[リアルタイム処理]
:データが入力されたら、すぐその場で処理
[バッチ処理]:入力されたデータは、後でまとめて一括処理
スキル
→ハードリアルタイムシステムとソフトリアルタイムシステ
ムの具体例を把握しておこう。

第 章 ●
6
基本情報技術者試験 平成 21 年春

リアルタイムシステムをハードリアルタイムシステムとソフトリアルタイム
コンピュータシステム
システムとに分類したとき、ハードリアルタイムシステムに該当するものは
どれか
ア:Web 配信システム      イ:エアバッグ制御システム
ウ:座席予約システム       エ:バンキングシステム

ハードリアルタイムシステムは、処理を決められた時刻までに終了
解説
できなかった場合にシステムやそれを扱う人に致命的ダメージが発
生するものをいいます。エアバッグ制御システムは、決められた時刻まで
にエアバッグが作動しなければ搭乗者の保護ができません。他の選択肢は
すべて、ソフトリアルタイムシステムです。 解答:イ

213
★ ★ ★
6
2 クライアントサーバシステム

●クライアントサーバシステム
システムの構成には、集中処理型と分散処理型があるというお話をしました。分
散処理型の代表的なシステムは、クライアントサーバシステムです。処理の要求を
送信するクライアントと、要求に応答するサーバで構成され、互いに協調して処理
を実現します。

〈クライアントサーバシステム 〉

お願い はいよ!
要求

応答

クライアント サーバ

●サーバの種類
サーバは「1つのシステムに1つ」というわけではありません。システム内には、
さまざまな種類のサーバが設置されます。代表的なものは以下のとおりです。

〈サーバの種類〉

サーバの種類 機能

ファイルサーバ 複数のクライアントに、ネットワーク経由でファイ
ルを共有させる

プリントサーバ 複数のクライアントに、ネットワーク上のプリンタ
を共有させる

データベースサーバ データベースを管理する

コミュニケーションサーバ 通信の制御を行う。別称ゲートウェイサーバ

メールサーバ メールの送受信を行う

Web サーバ Web サイトを公開する

214
6-2 クライアントサーバシステム

●クライアントサーバシステムの特徴
サーバの設置方法は、種類の異なるサーバ機能を 1 台のコンピュータにもたせ
ることもできますし、逆に 1 つのサーバ機能を何台かのコンピュータに分散さ
せることもできます。サーバ機能ごとに、1 つずつコンピュータを割り振る専
用サーバの場合は、個々のサーバの性能を向上させることが比較的簡単です。
サーバ機能を複数台のコンピュータに分散した場合には、データやプログラム
の管理対象が増えるので、セキュリティ対策が難しくなるという欠点や、特定
のコンピュータに負荷が集中すると、システム全体の性能が低下するという欠
点もあります。

● 3 層クライアントサーバシステム
クライアントサーバシステムを構築する場合、かつてはクライアント層とサー
バ層からなる 2 層構造が主流でした。しかし、2 層構造だと、クライアント層では
OS などの環境を統一する必要があります。システムを変更する際には、1 つ 1 つ
のクライアントすべてに変更を反映させなくてはならず、大きなコストがかかって
しまうという問題点がありました。

〈2 層構造の問題点〉

全部の

第 章 ●
アプリケーションを
変更しなきゃ
6

データベース
コンピュータシステム

<クライアント層> <サーバ層>

そのため最近では、クライアント層とサーバ層の間にもう 1 つ階層を設けて役割
を分担する 3 層クライアントサーバシステムが主流となっています。

215
〈3 層クライアントサーバシステムの構造〉
 

データ
ベース

クライアント アプリケーションサーバ データベースサーバ

<プレゼンテーション層> <ファンクション層> <データ層>

3 層クライアントサーバシステムでは、各階層の役割が独立しており、クライア
ント側の環境が異なっても同じ機能を提供します。また、アプリケーションを変更
する際にも、ファンクション層だけを変更すればよく、修正や追加が頻繁に発生す
るシステムにも適応できます。

〈3 層クライアントサーバシステムの構造〉

  階層名 対象 役割

1 プレゼンテーション層 クライアント 入力チェックや画面表示を行う

2 ファンクション層 ア プ リ ケ ー 検索条件の組立てやデータの加工を
(アプリケーション層) ションサーバ 行う

3 データ層 データベース データベース管理システムを運用


サーバ し、データへアクセスする

3 層の分割はあくまでも論理的なものなので、アプリケーションサーバとデータ
ベースサーバを同じコンピュータで稼働させる場合もあります。また、最近では、
クライアント側に汎用的な Web ブラウザを利用して、Web サーバ側でデータの加
工やデータベースアクセスを行う Web アプリケーションが主流です。

これも シンクライアントシステム

知っと クライアント側では外部記憶装置をもたず、最低限の処理を行
い、サーバ内のアプリケーションやデータを使用するシステム
をシンクライアントシステムといいます。ウイルス対策など
サーバ側で集中管理できるメリットがあります。

216
6-2 クライアントサーバシステム

これも クラウドコンピューティング

知っと 従来はクライアント端末に導入していたアプリケーションやデ
ータなどのコンピュータ資源を、ネットワーク経由で提供する
方式を、クラウドコンピューティングといいます。拡張性や可
用性の高いサービスを利用できるメリットがあります。

●ストアドプロシージャ
クライアントサーバシステムにおいて、クライアントが頻繁にデータベースサー
バとやり取りをすると、クライアントとサーバをつなぐネットワークの負担が増加
し、処理速度が低下します。
そこで、やり取りの回数を減らす方法が考えられました。よく使う命令をあらか
じめまとめてサーバ側に用意しておき、その命令群に対してクライアントが要求を
出すという方法です。これをストアドプロシージャといいます。これにより、クラ
イアントとサーバ間のデータベース問合せの通信負荷を下げることができます。

〈ストアドプロシージャの仕組み〉

実行
1度の送信で複数の
命令を出す SQL
命令群 データベース

第 章 ●
ネットワーク 6

クライアント データベースサーバ コンピュータシステム

ココが 用語
出る!
[ クラウドコンピューティング ]
:コンピュータ資源をネット
ワーク経由で提供し,拡張性や可用性の高いサービスを実現
[ストアドプロシージャ]:よく利用する命令群をサーバに用意
し、通信負荷を軽減
スキル
→クライアントサーバシステムのしくみや特徴を理解してお
こう。

217
基本情報技術者試験 平成 24 年春

クラウドコンピューティングの説明として、最も適切なものはどれか。
ア:あらゆる電化製品をインテリジェント化しネットワークに接続すること
によって、いつでもどこからでもそれらの機器の監視や操作ができるよ
うになること
イ:数多くの PC の計算能力を集積することによって、スーパコンピュータ
と同程度の計算能力を発揮させること
ウ:コンピュータの資源をネットワークを介して提供することによって、利
用者がスケーラビリティやアベイラビリティの高いサービスを容易に受
けられるようになること
エ:特定のサーバを介することなく、ネットワーク上の PC 同士が対等の
関係で相互に通信を行うこと

クラウドコンピューティングは、アプリケーションやデータなどを
解説
ネットワーク経由で提供する方式です。そのため、利用者は拡張性・
可用性の高いサービスを受けることができます。 解答:ウ

基本情報技術者試験 平成 25 年秋

クライアントサーバシステムにおいて、利用頻度の高い命令群をあらかじめ
サーバ上の DBMS に用意しておくことによって、データベースアクセスの
ネットワーク負荷を軽減する仕組みはどれか。
ア:2 相コミットメント
イ:グループコミットメント
ウ:サーバプロセスのマルチスレッド化
エ:ストアドプロシージャ

よく利用する命令群をサーバに用意し、通信負担を軽減する仕組み
解説
はストアドプロシージャです。       解答:エ

218
6-3 高信頼化システムの構成
★ ★ ★
6
3 高信頼化システムの構成

●信頼性と性能を高めるシステム構成
システムで最も大事なのは、必要なときに必要な機能を利用できるという信頼性
です。正しく処理をしてくれなかったり、故障ばかりしていたり、処理が遅かった
りすると、システムを安心して使えません。システムの信頼性を高める構成方法に
は、次のようなものがあります。

〈信頼性と性能を高めるシステム構成〉

信頼性up
 
デュアルシステム
2 系統の ホットスタンバイ方式
システム構成
デュプレックスシステム ウォームスタンバイ方式

コールドスタンバイ方式

マルチプロセッサシステム 密結合マルチプロセッサシステム
負荷分散の
システム構成 疎結合マルチプロセッサシステム
クラスタシステム

第 章 ●
信頼性&性能up

● 2 系統のシステム構成
信頼性を高める方法の 1 つに、システムが故障したときに備えて予備のシステ コンピュータシステム

ムを用意する方法があります。予備のシステムの構成方法にはデュアルシステムと
デュプレックスシステムという 2 つの種類があります。

●デュアルシステム
同じ構造のシステムを 2 つ用意して、2 つのシステムで同じ処理を行います。
なおかつ、処理結果が正しいかどうかお互いに確かめ合うことによって、常に
同じデータをもつようにします。こうすることで、お互いが相手に対する予備
となり、一方が故障しても、もう一方で処理をし続けることが可能です。

219
〈デュアルシステム 〉

1 + 1 =2 1 + 1 =2
2+2= 4 2+2= 4

2 つのシステムで
常に同じデータをもつ

2と4だよね? 2と4だね

●デュプレックスシステム
げんようけい たいきけい
正規のシステム(現用系)で処理を行い、もう 1 つのシステム(待機系)は予備
として待機させておく方法です。稼働中のシステムに故障が発生したら待機し
ていたシステムに切り替えて稼働させます。

〈デュプレックスシステム 〉

1 + 1 =2
2+2= 4 もうダメだ… つづきはボクが!

1つは待機 切 替え

●デュプレックスシステムのスタンバイ方式
デュプレックスシステムは待機系の運用方法によって、次の 3 つの方式に分け
られます。

〈デュプレックスシステムのスタンバイ方式〉

方式 待機系の運用方法

ホットスタンバイ方式 待機系の業務システムを常に起動状態にしておい
(ホットサイト ) て、障害時にはすぐに自動で切り替える方式。最も
素早く切り替えできる

ウォームスタンバイ方式 待機系は OS だけ起動しておき、業務システムは起


(ウォームサイト ) 動しないで待機させておく方式

220
6-3 高信頼化システムの構成

方式 待機系の運用方法

コールドスタンバイ方式 待機系は通常、電源を切った状態か、バッチ処理な
(コールドサイト ) ど別の処理を行っており、障害が起きたときに現用
系と同じ処理に切り替える方式。切り替えに最も時
間がかかる

〈デュプレックスシステムのスタンバイ方式〉

障害
<現用系> 発生

起動中。
すぐ切り OSのみ
替えます ! 起動して 電源から
<待機系> ます 入れるので待って
くださいー

ホットスタンバイ方式 ウォームスタンバイ方式 コールドスタンバイ方式

速い 遅い
切替時間

ふかぶんさん
●負荷分散のシステム構成

第 章 ●
システムは信頼性だけでなく処理速度も重要なポイントとなります。いくら常に 6
故障なく、正確に処理をしてくれるシステムでも、いつまでたっても処理が終わら
ないシステムでは使いものになりません。
システムの処理速度を上げるには、処理速度低下の原因となっているハードウェ コンピュータシステム

アへの負荷を軽減してあげることが有効です。これを負荷分散といいます。負荷分
散によってシステム全体の処理能力を向上させ、同時に信頼性も向上させるシステ
ム構成には、マルチプロセッサシステムとクラスタリングがあります。

●マルチプロセッサシステム
マルチプロセッサシステムは、複数の CPU(プロセッサ )を用意するシステムで
す。1 つの CPU に集中していた処理を分散させ、それぞれ同時並行で異なる処理
を進めることで、システム全体の処理時間を短縮します。マルチプロセッサシステ
みつけつごう
ムは、主記憶を共有するかしないかによって、密結合マルチプロセッサシステムと

221
そけつごう
疎結合マルチプロセッサシステムに分けられます。

●密結合マルチプロセッサシステム
複数の CPU が 1 つの主記憶を共有し、単一の OS で制御される方式です。主
記憶を共有するため、CPU の数が増えると競合が発生しやすくなります。タ
スクは基本的にどの CPU でも同じように実行できるので、できるだけ細かい
単位に分けて負荷を分散することで、処理能力を向上させます。

〈密結合マルチプロセッサシステム 〉

タスク

タスク

タスク
CPU
主記憶
OS

処理群

CPU
複数のCPU
で共有
タスク

タスク

タスク

●疎結合マルチプロセッサシステム
CPUごとに自分専用の主記憶をもち、それぞれが独立したOSで制御されます。
CPU の独立性が高く競合が起こりにくいため、いくらでも簡単に CPU の数を
増やすことができます。ジョブと呼ばれるひとまとまりの仕事単位で負荷を分
散し、処理能力を向上させます。

〈疎結合マルチプロセッサシステム 〉

ジョブA
主記憶
OS

CPU

処理群
主記憶
OS

CPU

ジョブ B
CPUごとに
保有

222
6-3 高信頼化システムの構成

これも クラスタリング

知っと 複数のコンピュータを組み合わせて信頼性の高いシステムを構
築する方式をクラスタリングといいます。システムの一部で障
害が発生しても、ほかのコンピュータに処理を肩代わりさせる
ことによって、システム全体の停止を防止します。

ココが
出る! 用語
[デュアルシステム ]:2 つのシステムで同一処理
[ デュプレックスシステム ]:一方の現用系が稼働し、もう一
方の待機系は待機
[ホットスタンバイ方式(ホットサイト )
]:待機系も起動状態。
障害時には、すぐに自動で切替え
[密結合マルチプロセッサシステム ]
:CPU が主記憶を共有、
単一の OS で制御、タスク単位で分散
[疎結合マルチプロセッサシステム ]
:CPU ごとに主記憶をも
ち、独立した OS で制御、ジョブ単位で分散

第 章 ●
基本情報技術者試験 平成 26 年秋 6
バックアップシステム構成におけるホットサイトに関する記述として、適切
なものはどれか。
ア:共同利用型のサイトを用意しておき、障害発生時に、バックアップして コンピュータシステム

おいたデータやプログラムの媒体を搬入してシステムを復元し、業務を
再開する。
イ:待機系サイトとして稼働させておき、ネットワークを介して常時データ
やプログラムの更新を行い、障害発生時に速やかに業務を再開する。
ウ:予備のサイトにハードウェアを用意して、定期的にバックアップした
データやプログラムの媒体を搬入して保管しておき、障害発生時にはこ
れら保管物を活用してシステムを復元し、業務を再開する。
エ:予備のサイトをあらかじめ確保しておいて、障害発生時には必要なハー
ドウェア、バックアップしておいたデータやプログラムの媒体を搬入し
てシステムを復元し、業務を再開する。

223
ホットサイトは、待機系サイトを起動しておき、障害時にすぐ切り
解説
替える方式です。 解答:イ

基本情報技術者試験 平成 23 年特別

コンピュータシステムの構成に関する記述のうち、密結合マルチプロセッサ
システムを説明したものはどれか。
ア:通常は一方のプロセッサは待機しており、本稼働しているプロセッサが
故障すると、待機中のプロセッサに切り替えて処理を続行する。
イ:複数のプロセッサが磁気ディスクを共用し、それぞれ独立した OS で制
御される。ジョブ単位で負荷を分散することで処理能力を向上させる。
ウ:複数のプロセッサが主記憶を共用し、単一の OS で制御される。システ
ム内のタスクは、基本的にどのプロセッサでも実行できるので、細かい
単位で負荷を分散することで処理能力を向上させる。
エ:並列に接続された 2 台のプロセッサが同時に同じ処理を行い、相互に結
果を照合する。1 台のプロセッサが故障すると、それを切り離して処理
を続行する。

密結合マルチプロセッサシステムは、複数の CPU が主記憶を共用


解説
し、単一の OS で制御されます。なお、イは疎結合マルチプロセッ
サシステムの説明です。                  解答:ウ

224
6-4 システムの信頼性設計
★ ★ ★
6
4 システムの信頼性設計

●信頼性の高いシステムとは
システムは常に正常に稼働していることが理想です。システムが故障したり、停
止したりしてしまうと、システムが提供するサービスの内容によっては、私たちの
生活や企業活動に大きなダメージを与える可能性があるからです。しかし、絶対に
故障しないシステムというのはあり得ませんから、そういった障害とどう向き合う
かが、システムの信頼性を考えるうえでのポイントとなります。

●障害対策の基準
システムの信頼性を保つための障害対策には、大きく分けて 2 つの考え方があり
ます。1 つは障害そのものを回避するために、事前に対策を行っておく方法、もう
1 つは、障害が起こっても継続してシステムを稼働できるようにしておく方法です。
前者をフォールトアボイダンス( fault avoidance )といいます。例えば、シス
テム構築にあたって、故障実績の少ないハードウェアを選ぶのはフォールトアボイ
ダンスです。

第 章 ●
後者をフォールトトレラント( fault tolerant )といいます。障害が発生した場 6
合には、予備機に切り換えたり、機能を低下させることで、完全にシステムが停止
しないように設計しておきます。
コンピュータシステム
〈障害対策の基準〉

フォールトアボイダンス
フェールセーフ
障害対策の基準

フォールトトレラント フェールソフト

フールプルーフ

225
フォールトトレラントには、以下のような 3 つの考え方があります。

●フェールセーフ
故障が発生したときに、被害を最小限にとどめられるよう、安全性を重視した
対策を行っておくという考え方をフェールセーフ( fail safe )といいます。
例えば、工場において、作業範囲に人間が入ったことを検知するセンサが故障
した場合、ロボットアームを強制的に停止させるようにしてあります。これに
より、事故を防止しています。これがフェールセーフにあたります。

●フェールソフト
故障が発生したときに、故障した部分を切り離すなどして、正常な部分だけで
稼働を続けられるような対策を行っておくという考え方を、フェールソフト
( fail soft )といいます。これは稼働を重視した対策方法です。
例えば、複数のサーバによるクラスタ構成のシステムで、あるサーバが故障し
ても、他のサーバでアプリケーションを引き継いで機能を提供するようにして
あるのがフェールソフトです。

●フールプルーフ
ユーザが誤った操作を行っても、危険にさらされたり、システムが誤作動して
故障したりすることのないように対策を行っておくという考え方を、フールプ
ルーフ
( fool proof )といいます。
例えば、電池が正しい向きにしか入らないように設計してあることや、電子レン
ジはドアを閉めなければ加熱できないようにしてあるのはフールプルーフです。

ココが
出る! 用語
[ フォールトアボイダンス ]
:障害を回避するため事前に対策
を行っておく
[ フォールトトレラント ]
:故障が発生しても稼働するような
対策を行っておく
[フェールセーフ ]:システムの安全性を重視する
[フェールソフト ]
:システムを稼働し続けることを重視する
[フールプルーフ ]
:誤った操作をしても、システムが壊れたり、
危険が生じたりしないようにしておく

226
6-4 システムの信頼性設計
レ イ ド
●磁気ディスクの信頼性を上げる RAID
磁気ディスクはハードウェアの中でも故障することが多い装置です。磁気ディス
クのフォールトトレラントを考慮した仕組みに RAID があります。
RAID とは、複数台のハードディスクを組み合わせて 1 台のハードディスクと
レイドゼロ
して使用することです。RAID は、高速性や信頼性のレベルにより RAID0 から
レイドシックス
RAID6 に分かれています。ここでは代表的なものを見ていきましょう。

● RAID0
RAID0 は、複数のディスクにデータを分散して書き込む方式です。ストライ
ピングとも呼ばれます。1 台でもディスクが故障すると読み書きができなくな
るため信頼性は向上しませんが、処理を高速化できます。

〈 RAID0〉

コントローラ

複数のディスクに
b0 b1 b2 分散して書込み

b3 b4 b5
b6 b7 b8

ストライピング
レイドワン
● RAID1

第 章 ●
RAID1 は、同じデータを複数台のディスクにコピーして書き込む方式で 6
す。読み書きを制御する RAID コントローラを共有する方式をミラーリング、
RAID コントローラも複数使用する方式をデュプレキシングといいます。信頼
性は向上しますが、多重化した分、余分にディスクが必要になります。 コンピュータシステム

〈 RAID1〉

共有

コントローラ コントローラ コントローラ


複数
使用

同じデータ
を書込み
ミラーリング デュプレキシング

227
レイドファイブ
● RAID5
ブロック単位に分割したデータ領域に「 パリティ」と呼ばれるエラーを検出す
るための符号をもたせ、データとパリティを別々のディスクに分散して書き込
む方式です。ディスクが 1 台故障しても、復旧することが可能です。パリティ
の合計容量がディスク 1 台分となるため、実際のデータを書き込める容量は
「 ディスク台数- 1 台分」になります。パリティディスクを分散しているため、
RAID4 などと比べて高速になります。

〈 RAID5〉

データとパリティを
コントローラ 複数ディスクに
分散して書込み

b0 b1 P0
パリティが
b2 P1 b3 ディスク1台分の
P2 b4 b5 容量をとる

ココが
出る! 用語
[ RAID0]
:データを分散して記録する(ストライピング )
→アクセスの高速化
[ RAID1]
:別の磁気ディスクにも同じデータを書き込む( ミ
ラーリング )→システムの高信頼化
[ RAID5]
:データとパリティ情報を分散して記録する
→アクセスの高速化・システムの高信頼化

228
6-4 システムの信頼性設計

基本情報技術者試験 平成 23 年特別

システムの信頼性設計のうち、フールプルーフを採用した設計はどれか。
ア:オペレータが不注意による操作誤りを起こさないように、操作の確認な
どに配慮した設計
イ:システムの一部に異常や故障が発生したとき、その影響が小さくなるよ
うな設計
ウ:障害の発生を予防できるように、機器の定期保守を組み入れた運用シス
テムの設計
エ:装置を二重化し、一方が故障してもその装置を切り離してシステムの運
用を継続できる設計

フールプルーフ設計では、ユーザが誤った操作を行っても誤動作を
解説
起こさないように配慮します。 解答:ア

基本情報技術者試験 平成 27 年春

図に示すように、データを細分化して複数台の磁気ディスクに格納すること
を何と呼ぶか。ここで、bO~b15 はデータがビットごとにデータディスクに
格納される順番を示す。

第 章 ●
制御装置 6

b0 b1 b2 b3
b4 b5 b6 b7 コンピュータシステム
b8 b9 b 10 b 11
b 12 b 13 b 14 b 15
データ データ データ データ
ディスク1 ディスク2 ディスク3 ディスク4

ア:ストライピング   イ:ディスクキャッシュ
ウ:ブロック化     エ:ミラーリング

各ディスクに対してデータを分散して記録する方式は、ストライピ
解説
ング( RAID0)です。                解答:ア

229
★ ★
6
5 システムの性能評価

●システムの性能評価とは
一般に、利用者がシステム性能を評価するときには、処理速度が注目されます。
ただ、一言でシステムといっても、バッチ処理システム、リアルタイム処理システ
ムなど、処理内容や形態が異なるシステムが存在します。そのため、性能評価の指
標にもいくつかの種類があります。

●ターンアラウンドタイム
バッチ処理システムなどの性能を測る指標で、利用者がシステムに処理の要求を
入力し始めてから、すべての結果の出力が終了するまでにかかる時間をターンアラ
ウンドタイムといいます。これには処理を開始するまでの待ち時間なども含まれま
す。値が小さいほど性能がよいといえます。

●レスポンスタイム
リアルタイム処理システムの性能を測る指標で、利用者がシステムに処理の要求
を入力し終わってから、出力が開始するまでにかかる時間をレスポンスタイム(応
答時間)といいます。値が小さいほどシステムの反応がよく、
性能がよいといえます。

〈ターンアラウンドタイムとレスポンスタイム 〉

仕事の依頼開始 仕事の出力完了

ターンアラウンドタイム

伝送 伝送
入力 処理 出力

レスポンスタイム
入力の完了 出力の開始

230
6-5 システムの性能評価

●スループット
単位時間(例えば 1 秒間)あたりにどれだけの仕事量をこなせるかを表す指標を
スループットといいます。この値は、大きいほどより多くの仕事をこなせるため、
すなわち性能がよいことになります。
例えば、プリンタへの出力を一時的に磁気ディスク装置へ保存するスプーリング
は、スループットの向上に役立ちます(「2-2 タスク管理」参照)
。 

●ベンチマーク
コンピュータシステムの性能は、他のシステムと比べることでも評価できます。
ベンチマークは、使用目的に合わせて選定した標準的なプログラムを、複数のシス
テムで実行させ、その実行時間を比較することで、システムの性能を評価する手法
です。

〈ベンチマーク 〉

データベース
検索処理の性能 測定値
を評価しよう!

コンピュータシステムⒶ
ベンチマーク 同じものを 比較
プログラム 実行

第 章 ●
6
測定値

コンピュータシステムⒷ コンピュータシステム

ココが
出る! 用語
[ ターンアラウンドタイム ]
:システムに処理の要求を入力し
始めてから結果の出力が終了するまでにかかるすべての時間
[ レスポンスタイム ]
:入力が終わってから出力が始まるまで
の時間
[スループット ]:単位時間あたりに処理される仕事の量
[ ベンチマークテスト ]:標準的なプログラムを実行させ、そ
の処理性能を測定し比較

231
基本情報技術者試験 平成 25 年春

コンピュータシステムによって単位時間当たりに処理される仕事の量を表す
用語はどれか。
ア:スループット     
イ:ターンアラウンドタイム
ウ:タイムスライス    
エ:レスポンスタイム

単位時間当たりに処理される仕事量を表すのは、スループットです。
解説
解答:ア

基本情報技術者試験 平成 25 年秋

コンピュータシステムのベンチマークテストの説明として、最も適切なもの
はどれか。
ア:1 命令の実行に要する平均時間から、コンピュータの性能を測る。
イ:システムが連続して稼働する時間の割合を測定し、他の製品と比較する。
ウ:想定されるトランザクション量にシステムが耐えられるかどうかを判定
する。
エ:測定用のソフトウェアを実行し、システムの処理性能を数値化して、他
の製品と比較する。

ベンチマークテストは、測定用のプログラムを実行したときの処理
解説
性能を測定し、比較して評価する方法です。 解答:エ

232
6-6 信頼性の基準と指標
★ ★ ★
6
6 信頼性の基準と指標

●信頼性の基準
システムの信頼性の基本的な考え方としては、以下 5 つの要素の頭文字を表した
レイシス ラス
RASIS という概念があります。試験には、最初の 3 項目だけを表した RAS とい
う用語で出題されることもあります。

〈 RASIS 〉

概念 説明 計る指標
リライアビリティ エムティービーエフ
信頼性( Reliability ) 故障しにくいこと MTBF
ア ベ イ ラ ビ リ テ ィ かどう
可用性( Availability ) 使いたいときに使える状態であること 稼働率
サ ー ビ サ ビ リ テ ィ エムティーティーアール
保守性( Serviceability ) 故障から迅速に復旧できること MTTR
インテグリティ
完全性( Integrity ) 改ざんなどが行われていないこと、デー
タに整合性があること。保全性ともいう
セ キ ュ リ テ ィ
機密性( Security ) 不正アクセスされにくいこと

第 章 ●
●信頼性の指標 6
シ ス テ ム は 故 障が少なく、稼働している時間が 長 い ほ ど、 性 能 の よ い シ ス
エムティービーエフ ミーン
テ ム で あ る と い え ま す。 正 常 に 稼 働 し て い る 時 間 の 平 均 を M T B F( Mean
コンピュータシステム
タイム ビトウィーン フェイリャーズ
Time Between Failures:平均故障間隔)といい、故障している時間の平均を
エムティーティーアール ミーン タイム ツー リペアー
M T T R( Mean Time to Repair:平均修復時間)といいます。システム障害の
予防保守を行うことで、システムの信頼性が高まり MTBF は長くなります。また、
エラーログ機能などを備えたシステムは保守性が高く、MTTR は短くなります。
稼働している時間を計るための指標としては、全運転時間のうちどれだけ稼働し
ているかを表す稼働率があり、MTBF と MTTR を組み合わせた以下の式で計算さ
れます。

《計算式:稼働率》

MTBF
  稼働率= —————————
MTBF + MTTR

233
例えば、下図のシステムの場合、稼働率は、40 ÷(40 + 15)≒ 0.73 です。
MTBF の値が大きいほど、また、MTTR が小さいほど稼働率が高くなります。

〈 MTBFと MTTR 〉
全運転時間
全運転時間

稼働 故障 稼働 故障 稼働 故障
稼働 故障 稼働 故障 稼働 故障
40 10 50 20 30 15
40 10 50 20 30 15

40+50+30 10+20+15
MTBF = 40+50+30= 40 MTTR = 10+20+15= 15
MTBF = 3 = 40 MTTR = 3 = 15
3 3

MTBF 40 8
 稼働率=         ————— =  
————————— =      —— ≒ 0.73 
MTBF + MTTR 40 + 15 11

●複数システムの稼働率
規模の大きいシステムでは、複数のシステムを接続して利用します。複数のシス
テムを接続している場合、全体の稼働率は、システムの接続方法によって求め方が
異なります。
下の図のように、システム同士を直線上に接続したシステムを直列システムとい
います。直列システムは、どれか 1 つが故障すると、システム全体が稼働しなくな
ります。

〈直列システム 〉

システム A システムB

直列システムの稼働率は、以下の式で求められます。

《計算式:直列システムの稼働率》

  稼働率=システム A の稼働率×システム B の稼働率

例えば、システム A とシステム B の稼働率がいずれも 0.9 であった場合、全体の


稼働率は 0.9 × 0.9 = 0.81 となります。

234
6-6 信頼性の基準と指標

一方、次の図のようにシステム同士を並列に接続したシステムを、並列システム
といいます。並列システムはいずれか 1 つが稼働していれば、システム全体は稼働
します。そのため、各システムの稼働率が同じ場合は、直列システムより並列シス
テムの方がシステム全体の稼働率は高くなります。

〈並列システム 〉

システム A

システムB

並列システムの稼働率は、以下の式で求められます。

《計算式:並列システムの稼働率》

  稼働率= 1 -(1 -システム A の稼働率)×(1 -システム B の稼働率)

システム A とシステム B の稼働率がいずれも 0.9 であった場合、全体の稼働率は


1 -(1 - 0.9)×(1 - 0.9)= 0.99 となります。

第 章 ●
6

コンピュータシステム

235
これも バスタブ曲線

知っと ハードウェアやソフトウェアに故障が発生する確率は、時間の
経過とともに変化します。故障率と時間の関係をグラフに表す
と、以下のような曲線を描きます。この曲線は、形が浴槽( バ
スタブ )を横から見た形に似ているので、バスタブ曲線と呼ば
れます。
①初期故障期 ②偶発故障期 ③摩耗故障期
故障率

時間

①初期故障期:
ソフトウェアのバグ、ハードウェア初期不良などにより故障率
が高くなる
②偶発故障期:
初期故障が修正されて安定稼働するため、故障率はほぼ一定に
なる
③摩耗故障期:
時間経過による物理的な機器の摩耗などにより故障率が高くな

このように、故障率だけでなく故障内容もシステム運用期間に
ともなって変化します。そのため、システムの信頼性を比較す
るために稼働率を測定する場合は、安定運用されている②の期
間が適切です。

ココが
用語
出る!
[ RASIS ]
:信頼性、可用性、保守性、完全性(保全性)
、機密性
スキル
→ MTBF、MTTR、稼働率の関係を理解し、それぞれを計算
して求められるようにしておこう。
→並列システム、直列システムの稼働率を求められるようにし
ておこう。

236
6-6 信頼性の基準と指標

基本情報技術者試験 平成 20 年春

コンピュータシステムの高信頼化技術は、目標とする特性から RASIS と呼
ばれる。 RASIS を構成する五つの要素はどれか。
ア:信頼性、可用性、保守性、保全性、機密性
イ:信頼性、経済性、拡張性、再現性、操作性
ウ:正確性、可用性、拡張性、保全性、機密性
エ:正確性、経済性、保守性、再現性、操作性

RASIS は、信頼性、可用性、保守性、完全性(保全性)、機密性の
解説
英語の頭文字を取ったものです。           解答:ア

基本情報技術者試験 平成 23 年特別

装置 a と b の MTBF と MTTR が表のとおりであるとき、a と b を直列に接続


したシステムの稼働率は幾らか。

単位 時間

装置 MTBF MTTR

a 80 20

b 180 20

第 章 ●
ア:0.72  イ:0.80  ウ:0.85  エ:0.90 6

a、b それぞれの稼働率を求めると
解説
コンピュータシステム
80 80
————— =   =
a の稼働率=      ——— 0.8
80 + 20 100
180 180
b の稼働率= —————— ——— 0.9
      =   =
180 + 20 200
a と b を直列に接続するので
0.8 × 0.9 = 0.72 解答:ア

237
基本情報技術者試験 平成 21 年春

システムの信頼性を比較する目的で稼働率を測定するのに適切な時期はど
れか。
ア:システムの運用を開始した直後に発生したトラブルが解決されて安定し
てきた時期
イ:システムの運用を開始した時
ウ:システムリリースの可否を判断する時期
エ:長期間のシステム利用を経て、老朽化によるトラブルが増え始めた時期

システムの信頼性を比較する目的で稼働率を測定する場合、運用開
解説
始後の初期トラブルが解決されて、システムが安定稼働してきた時
期(偶発故障期といいます)が適切です。 解答:ア

基本情報技術者試験 平成 27 年春

稼働率が最も高いシステム構成はどれか。ここで、並列に接続したシステ
ムは、少なくともそのうちのどれか一つが稼働していればよいものとする。
ア:稼働率 70%の同一システムを四つ並列に接続
イ:稼働率 80%の同一システムを三つ並列に接続
ウ:稼働率 90%の同一システムを二つ並列に接続
エ:稼働率 99%の単一システム

それぞれの稼働率を計算してみます。
解説

ア:1 -(1 - 0.7)×(1 - 0.7)×(1 - 0.7)×(1 - 0.7)= 0.9919


イ:1 -(1 - 0.8)×(1 - 0.8)×(1 - 0.8)= 0.992
ウ:1 -(1 - 0.9)×(1 - 0.9)= 0.99
エ:0.99 解答:イ

238
ネットワーク
★ ★ ★
7
1 通信プロトコル

●通信プロトコルとは
離れた場所にあるコンピュータ同士が、ネットワークを使って通信をするには、
あらかじめ、どのような経路や信号を使うか、どのように通信相手を見つけ、どの
ような手順で通信するかといった、約束事が必要です。この約束事を通信プロトコ
ル、または単にプロトコルといいます。
インターネットが普及する以前のコンピュータは、メーカごと、機種ごとにネッ
トワーク通信機能の仕組みが異なっていました。そのため、コンピュータごとに使
えるプロトコルが異なり、コンピュータ同士がネットワークを使って通信するには
多大な労力がかかりました。

〈通信プロトコル 〉

プロトコルA プロトコルA

どうも!! こんにちは!!

プロトコルA プロトコルB

!?※$ ???

オーエスアイ
● O S I 基本参照モデル
そこで、もっと簡単に通信が行えるようにコンピュータや通信機器が共通
アイエスオー イ ン タ ー ナ シ ョ ナ ル オ ー ガ ニ ゼ イ シ ョ ン フォー
し て 備 え る べ き 通 信 機 能 の 仕 組 み が、I SO( International Organization f or
スタンダーダイゼイション
Standardization :国際標準化機構)によって定められました。それが OSI 基本参
照モデルです。
このモデルに従って、コンピュータや通信機器、ソフトウェアを開発すれば、メー
カや機種が異なっても、スムーズに通信ができます。

240
7-1 通信プロトコル

●各層の役割
OSI基本参照モデルでは、通信の機能を7つの階層に分けて定めています。デー
タ通信を行う際の各層の役割は次のとおりです。

〈 OSI 基本参照モデル 〉

階層 名称 役割

7 アプリケーション層 メールやファイル転送、Web の閲覧など、具体的


な通信サービスに対応するプロトコルを規定

6 プレゼンテーション層 文字コードや暗号などデータの表現形式に関する
プロトコルを規定

5 セション層 通信の開始・終了などの手順に関するプロトコル
を規定

4 トランスポート層 通信の信頼性を確保するためのプロトコルを規定

3 ネットワーク層 通信経路の選択( ルーティング )や中継を行うプロ


トコルを規定

2 データリンク層 誤り制御(「7-10 誤り制御」参照)や再送要求など、


伝送制御手順に関するプロトコルを規定。隣接機
器間で誤りのないデータ通信を行う

1 物理層 コネクタやケーブル、電気信号など、電気・物理
的なレベルのプロトコルを規定

ココが
スキル
出る!
→ OSI 基本参照モデルの各層の名前と順番、役割を覚えてお
こう。 第 章 ●

7
ネットワーク

241
基本情報技術者試験 平成 25 年春

OSI 基本参照モデルにおけるネットワーク層の説明として、適切なものはど
れか。
ア:エンドシステム間のデータ伝送を実現するために、ルーティングや中継
などを行う。
イ:各層のうち、最も利用者に近い部分であり、ファイル転送や電子メール
などの機能が実現されている。
ウ:物理的な通信媒体の特性の差を吸収し、上位の層に透過的な伝送路を提
供する。
エ:隣接ノード間の伝送制御手順(誤り検出、再送制御など)を提供する。

ネットワーク層では、ルーティングや中継を行います。
解説
解答:ア

基本情報技術者試験 平成 24 年秋

OSI 基本参照モデルにおいて、エンドシステム間のデータ伝送の中継と経路
制御の機能をもつ層はどれか。
ア:セション層
イ:データリンク層
ウ:トランスポート層
エ:ネットワーク層

ネットワーク層では、通信経路の選択や中継を行うプロトコルを規
解説
定しています。 解答:エ

242
7-2 インターネット
★ ★ ★
7
2 インターネット

ティーシーピーアイピー
● T C P/ I P
OSI 基本参照モデルに対応した通信プロトコルのうち、インターネットで使われ
ている TCP/IP というプロトコルが、世界中の多くのコンピュータやソフトウェ
アで、デファクトスタンダード(事実上の業界標準)として使われています。
TCP/IP は、複数のプロトコルの集まりです。重要なプロトコルであるトラン
スポート層の TCP とインターネット層の IP を中心にして構成されているので、
TCP/IP と呼ばれています。TCP/IP に含まれる各プロトコルは、OSI 基本参照モ
デルに以下のように対応しています。

〈 TCP/IPと OSI 基本参照モデルの対応〉

階層 OSI 基本参照モデルの階層 TCP/IP の階層 TCP/IP の主なプロトコル


エイチティーティーピー エフティーピー
7 アプリケーション層 アプリケーション層 H T T P 、F T P 、
テ ル ネ ッ ト エスエムティーピー
TELNET、S MTP、
6 プレゼンテーション層 ポップスリー エヌティーピー  エスエヌエムピー
POP3、N TP、S N M P
5 セション層
ティーシーピー ユーディーピー
4 トランスポート層 トランスポート層 T C P 、U D P
アイピー
3 ネットワーク層 インターネット層 IP
ピーピーピー
2 データリンク層 ネットワークインタ P PP、イーサネット
フェース層
1 物理層
第 章 ●

7
●ポート番号
ポート番号とは、トランスポート層の TCP、UDP において識別される情報です。
ネットワーク

IP アドレス(「7-4 IP アドレス 」参照)が個々のコンピュータを識別するのに対し、


ポート番号は個々のアプリケーションを識別します。例えば、1 台のコンピュータ
で複数のアプリケーションを用いて通信を行うときに、それぞれのパケットがどの
アプリケーションのものであるかを示します。ポート番号のうち、
0~1023はウェ
ルノウンポートと呼ばれ、よく使われるプロトコル用に予約されています。例えば、
HTTP は 80 番です。1024 以降は、クライアント側の送信元ポートとしても割り
当てられます。

243
これも ポートスキャナ

知っと ポートスキャナとは、ネットワークに接続されたコンピュータ
の通信可能なポート番号を調べることです。
主に、
インターネッ
トからアクセス可能な Web サーバ等において、不要なポート
が有効でサービスが稼働していないか、セキュリティ上の設定
を検査する目的で実施します。

●TCP/IPのプロトコル
インターネットで利用できるサービスである電子メールや Web サイトなどは、
TCP/IP のプロトコルによって実現されています。それぞれのサービスを支えてい
るプロトコルは次のとおりです。

〈インターネットの主なプロトコルとサービス 〉

プロトコル名 サービスの説明
ハ イ パ ー テ キ ス ト ト ラ ン ス フ ァ ー
H T T P( H y p e r t e x t T r a n s f e r Web ページを送受信するプロトコル
プ ロ ト コ ル
Protocol )
ファイル ト ラ ン ス フ ァ ー プ ロ ト コ ル
FTP( File Transfer Protocol ) 各種ファイルの転送を行うプロトコル。デー
タ転送用と制御用に異なるポート番号を使用

TELNET 離れたところにあるコンピュータにログイン
し、遠隔操作をするプロトコル
シ ン プ ル メ ー ル トランスファー
SMTP( S imple M ail T ransfer メールサーバ間でメールの転送を行うプロト
プ ロ ト コ ル
Protocol ) コル
ポ ス ト オ フ ィ ス プ ロ ト コ ル
POP3( P ost O ffice P rotocol メールサーバ上のメールをメーラが受信する
バ ー ジ ョ ン スリー
Version 3 ) ためのプロトコル
ネ ッ ト ワ ー ク タ イ ム プ ロ ト コ ル
N T P( Network Time Protocol ) インターネット上で複数のコンピュータの時
刻を同期させるプロトコル
シ ン プ ル ネ ッ ト ワ ー ク
S N M P( S i m p l e N e t w o r k ネットワークの管理を行うプロトコル
マ ネ ジ メ ン ト プ ロ ト コ ル
Management Protocol )

244
7-2 インターネット

ティーシーピー ユーディーピー
これも T C P と UDP

知っと 通信の信頼性を確保するトランスポート層には TCP と UDP
の2種類のプロトコルがあります。確実に届けるための厳密な
仕組みの TCP に対して、チェックを省き素早く届けるための
仕組みが UDP です。アプリケーション層の HTTP や FTP と
いった多くのプロトコルが TCP 対応ですが、時刻を同期させ
る NTP では、UDP を使用しています。

●電子メールの仕組み
電子メールの送信と受信では、それぞれ別のプロトコルが使われています。
電子メールの送信には、SMTPが使われています。SMTPによって、あて先のメー
ルサーバまで電子メールが送り届けられます。
一方、届いた電子メールをメールサーバから取り出すときに使うのは、POP3
というプロトコルです。配信された電子メールに対し、全部取り出す、未読のもの
だけ取り出す、サーバに残す、削除するといった操作が可能です。

〈電子メールのプロトコル 〉

MIME

送信 受信
インターネット
送信者 SMTP SMTP 受信者
SMTP POP3
第 章 ●
メールサーバ メールサーバ
7
ネットワーク

マ イ ム
これも MIME

知っと 電子メールでヘッダの拡張を行い、テキストだけでなく、音声
や画像なども扱えるようにした規格を MIME といいます。さ
らにセキュリティ機能を強化し、電子メールの暗号化と署名を
エスマイム
行えるようにした S/MIME という規格もあります。

245
ココが
用語
出る!
[ ポート番号]:TCP・UDP において、通信相手のアプリケ
ーションを識別するための情報
[ TELNET ]
:リモートログインし、遠隔操作を行うプロト
コル
[ SMTP ]
:メールサーバ間で電子メールの転送を行うプロ
トコル
[ POP3]
:メールサーバ上の電子メールをメーラが受信する
ためのプロトコル
[ NTP ]:ネットワーク上の各コンピュータの時刻を同期す
るプロトコル
[ MIME ]:電子メールで、テキストだけでなく音声や画像も
送れる規格
[ S/MIME ]
:電子メールの暗号化と署名が行える規格
スキル
→ TCP/IP 階層モデルの各層の名前と対応するプロトコルを覚
えておこう。

基本情報技術者試験 平成 23 年秋

TCP/IP 階層モデルにおいて、TCP が属する層はどれか。


ア:アプリケーション層   
イ:インターネット層
ウ:トランスポート層    
エ:リンク層

TCP が属する層は、トランスポート層です。
解説
解答:ウ

246
7-2 インターネット

基本情報技術者試験 平成 23 年特別

TCP 及び UDP のプロトコル処理において、通信相手のアプリケーションを


識別するために使用されるものはどれか。
ア:MAC アドレス  
イ:シーケンス番号
ウ:プロトコル番号  
エ:ポート番号

TCP・UDP で使用される通信相手のアプリケーションを識別する
解説
情報は、ポート番号です。 解答:エ

基本情報技術者試験 平成 23 年特別

TCP/IP ネットワークで利用されるプロトコルのうち、ホストにリモートロ
グインし、遠隔操作ができる仮想端末機能を提供するものはどれか。
ア:FTP    イ:HTTP  
ウ:SMTP   エ:TELNET

リモートログインし、遠隔操作を行うためのプロトコルは TELNET
解説
です。 解答:エ

基本情報技術者試験 平成 26 年春
第 章 ●
インターネットにおける電子メールの規約で、ヘッダフィールドの拡張を行
7
い、テキストだけでなく、音声、画像なども扱えるようにしたものはどれか。
ア:HTML   イ:MHS  
ネットワーク

ウ:MIME    エ:SMTP

MIME は電子メールの国際規格で、テキストだけでなく音声や画像
解説
なども扱えるようにしました。 解答:ウ

247
★ ★ ★
7
3 Web

● HTML
ウ ェ ブ ワ ー ル ド ワ イ ド ウ ェ ブ
Web とは World Wide Web の略称で、リンクをクリックすることで別のページ
を表示できるといった、インターネット上に散らばっているドキュメント同士を相
互に参照するしくみです。インターネットにつながっているコンピュータがあれば、
エイチティーエムエル ハ イ パ ー テ キ ス ト マークアップ
世界中どこからでも閲覧できる Web ページは、 H T M L( Hypertext Markup
ラ ン ゲ ー ジ
Language )というマークアップ言語で書かれたテキストファイルです。マーク
アップ言語は、テキストの中にタグと呼ばれるマークを記入して、テキストの見た
目や論理構造を指定します。特に、文字の大きさや文字の色、行間などの表現を指
シーエスエス
定する場合には、CSS という言語を使って、Web ページのデザインやレイアウト
を定義します。
HTML のタグには用途によってさまざまな種類があり、画像を表示させるタグ
や、他の HTML 文書へのリンクを張るタグなどがあります。
HTML ファイルで書かれた Web ページは、ブラウザと呼ばれる専用のソフ
トで閲覧します。Web ページの送受信には、「7-2 インターネット 」で説明した
エイチティーティーピー
H T T P というプロトコルが使われています。Web サーバとブラウザの間の通
エイチティーティーピーエス
信を暗号化するには、 H T T P S というプロトコルが使われます。

これも その他のマークアップ言語

知っと マークアップ言語には、HTML のほかにも SGML や X M L な
エスジーエムエル エックスエムエル

どがあります。
ス タ ン ダ ー ド ジ ェ ネ ラ ラ イ ズ ド マークアップ ラ ン ゲ ー ジ
SGML( Standard Generalized Markup Language )
は、文
書構造を記述するための標準記述言語です。ISO によって規格
化されていて、HTML や XML のもとになった言語です。
エ ク ス テ ン シ ブ ル マークアップ ラ ン ゲ ー ジ
XML( eXtensible Markup Language )は、文書構造の記述
のほか、異なるシステム同士でのデータ交換などにも使用され
るマークアップ言語です。HTML とは異なり、利用者が独自
にタグを作って、文書の属性情報や論理構造を定義できます。

248
7-3 Web

ココが
出る! 用語
[ HTML ]
:Web ページを記述するための言語
[ CSS ]
:Web ページのデザインやレイアウトを定義する言語
[ HTTPS ]:Web サーバとブラウザ間の通信を暗号化するプ
ロトコル
[ SGML ]:文書の論理構造や意味構造を記述する標準記述言
語。国際規格に制定されている
[ XML ]:独自にタグを定義できる言語。データ交換などに用
いられる

●Web 上で利用されている技術
もともとの Web の仕組みは、テキストや画像のみを表示するシンプルなもので
したが、近年ではさまざまな技術が応用されて、Web 上でも動画や音声やソフト
ウェアが使えるようになりました。Web を便利に使えるようにしている仕組みを
見ていきましょう。

● Web アプリケーション
Web ページは、あらかじめ 1 ページ 1 ページ作っておき、それらを Web サー
バ上に置いておく必要があります。閲覧したいユーザは Web サーバにアクセ
スし、目的の Web ページを HTTP を使ってダウンロードします。
それに対して、あらかじめ Web ページを作り置きせず、ユーザから要求があ
るたびに、プログラムを使って自動で Web ページを作成する仕組みを、Web 第 章 ●

アプリケーションといいます。 7

シージーアイ
● CGI
ネットワーク

コ モ ン
Web アプリケーションを作るのに使われる仕組みの 1 つが CGI( Common
ゲ ー ト ウ ェ イ インタフェース
Gateway Interface )です。ユーザから要求があると、Web サーバで外部プ
ログラムを実行して Web ページを作成し、ユーザに送信します。

249
〈 CGI の仕組み〉

要求 外部
プログラム
CGI
処理結果
応答

Webブラウザ クライアント Webサーバ


ジ ャ バ
● Java サーブレット
Javaというプログラム言語で書かれたプログラムを使うWebアプリケーショ
ンを、Java サーブレットといいます。CGI 同様、Web サーバ側で動作し、動
的な処理を実現します。CGI よりも効率よく動くので、Web サーバに負担を
かけずにすみます。

● Java アプレット 要求
外部
プログラム
Java アプレットは、Java サーブレットと同じく Java で書かれたプログラム
処理結果 CGI
ですが、Webサーバ上ではなく、HTMLファイルと一緒にダウンロードされて、
応答
ユーザのブラウザ上で動作するのが特徴です。
Webブラウザ
クライアント Webサーバ

これも アプレット

知っと コンパイル済みのオブジェクトコードがサーバに格納されてい
て、クライアントからの要求によってクライアントへ転送され
て実行されるプログラムをアプレットといいます。Java アプ
レットは、Java で書かれたアプレットです。

ジ ャ バ ス ク リ プ ト
● JavaScript
JavaScript は、ブラウザ上で動作するスクリプト(簡易プログラミング )言
語です。HTML ファイルに書き込まれたプログラムは、ブラウザ上で動作し
ます。Web ページにさまざまな動きを付けることが可能です。

エイジャックス
●Aja x
Ajax は、ブラウザと Web サーバが非同期の通信を行い、ページを読み込み
直すことなく画面を更新していく技術です。Google マップなどで使われてい
ます。これまでは、サーバからの結果を表示するには、ページ全体を読み込み

250
7-3 Web

直す必要がありました。Ajax では、JavaScript の HTTP 通信機能を使って


ブラウザと Web サーバが非同期に通信し、動的に画面を更新します。

ソ ー プ
● SOAP
ネットワーク上のアプリケーション間で情報交換をするためのプロトコルで
す。Web サービスの送受信プログラム間などで使われ、XML 形式で記述した
メッセージを交換します。

ココが
出る! 用語
[ CGI ]:Web サーバと外部プログラムを連携させる仕組み
[ Java サーブレット ]:Java で書かれた、サーバ上で動く
Web アプリケーション
[ Java アプレット ]
:Java で書かれた、ブラウザ上で動くプ
ログラム
[ JavaScript ]
:ブラウザ上で動くプログラムを記述するスク
リプト言語
[ Ajax ]
:ブラウザと Web サーバが非同期通信を行い、動的
に画面を更新する仕組み
[ SOAP ]
:Web サービスなどで、XML 形式で記述したメッ
セージを交換するプロトコル

第 章 ●
基本情報技術者試験 平成 24 年秋

Web ページのスタイルを定義する仕組みはどれか。 7
ア:CMS     
イ:CSS 
ネットワーク

ウ:PNG  
エ:SVG

CSS は、Web ページのデザインやレイアウトといったスタイルを


解説
定義する言語です。 解答:イ

251
基本情報技術者試験 平成 24 年春

Web 環境での動的処理を実現するプログラムであって、Web サーバ上だけ


で動作するものはどれか。
ア:JavaScript     
イ:Java アプレット 
ウ:Java サーブレット  
エ:VBScript

サーバ上だけで動作する Web アプリケーションは Java サーブレッ


解説
トです。 解答:ウ

基本情報技術者試験 平成 21 年秋

Ajax の説明はどれか。
ア:HTTP プロトコルを用いて、XML 形式や HTML 形式のデータがファイ
アウォールを通過できるようにした通信方式
イ:スタイルシートを適用することによって、デザインを統一したり、保守
性を高めたりする仕組み
ウ:ブラウザからの要求に対して Web サーバが応答し、テキスト・画像・
音声・動画などをやり取りするための通信方式
エ:ブラウザと Web サーバとが XML 形式のデータを用いて非同期の通信
をし、動的に画面を再描画する仕組み

キーワードは「非同期の通信」です。
解説
 解答:エ

252
7-4 IP アドレス
★ ★ ★
7
4 IPアドレス

アイピー
● I P アドレスとは
ティーシーピーアイピー
インターネットでは、T C P / I P というプロトコルを使って通信が行われていま
す。TCP/IP のネットワークでは、通信相手を特定するために、コンピュータや通
信機器 1 つ 1 つにそれぞれ世界中で一意の認識番号が割り振られています。この番
号を IP アドレスといいます。言わば TCP/IP ネットワーク世界での住所です。
広く普及しているのは、32 ビットの IPv4 で、32 けたの 2 進数で表現されます。
通常は私たち人間にわかりやすいよう、8 ビットごとにドットで区切ったうえで、
2 進数を 10 進数に計算し直した 1〜3 けたずつ 4 組の数字で書き表されます。

〈 IP アドレス 〉

202.218.13.138

インターネット

202.218.12.5 202.218.10.3

第 章 ●

ピ ン グ
7
これも ping

知っと ping は、ネットワーク疎通を確認したい相手に対してデータ
ネットワーク

を送り、相手からの応答が返ってくることで、正常に接続して
いるかを確認するコマンドです。到達不能の場合、障害が発生
していると考えられます。

253
ディーエヌエス
● DNS
前ページで説明したように、IP アドレスは「203.216.247.249」のような表
記になりますが、それでもやはりすぐには覚えられません。
そこで、さらに分かりやすく、文字や数字を使って「 yahoo.co.jp 」のような別
名をつけることにしました。これがドメイン名(ホスト名)です。
IP アドレスとドメイン名は、対応していないと混乱してしまいます。IP アドレ
ド メ イ ン ネ ー ム シ ス テ ム
スとドメイン名の対応付けを管理する仕組みを DNS( Domain Name System )
といいます。

〈 IP アドレスとドメイン名〉

(IPアドレス)
どこの誰??
変換だ!! 202 . 218 . 13 . 138

(ドメイン名) 分かりやすい

DNS サーバ
www . impress . co . jp

ココが
出る! 用語
[ ping ]
:IP ネットワークで、通信相手との接続性を確認する
コマンド
[ DNS ]:IP アドレスとドメイン名の対応付けを管理する仕
組み

●グローバル IPアドレスとプライベートIPアドレス
32 ビットの 2 進数である IP アドレスで管理できるコンピュータや通信機器の台
数は、最大約43億台です。しかし、インターネットに接続するコンピュータの数は、
今も世界中で爆発的に増え続けていて、1 台に 1 つずつ IP アドレスを割り当てて
いくと、IP アドレスが足りません。
そこで、IP アドレスを節約するために、IP アドレスをグローバル IP アドレスと
プライベート IP アドレスに使い分けることにしました。
グローバル IP アドレスは、直接インターネットに接続するコンピュータだけに
ニック ネ ッ ト ワ ー ク インフォメーション セ ン タ ー
割り振られる IP アドレスです。NIC( Network Information Center )という機関

254
7-4 IP アドレス

が、世界中で重複しないようにアドレスを発行しています。
これに対して、プライベート IP アドレスは、インターネットに直接接続しない
ラ ン
コンピュータが使う IP アドレスです。家庭や企業内 LAN などの私的なネットワー
ク内のコンピュータは、ネットワーク内ではプライベート IP アドレスを使って通
信を行います。そして、インターネットに接続するときは、グローバル IP アドレ
スをもった通信機器を通じて接続します。このように複数のコンピュータで 1 つの
グローバル IP アドレスを共用することで、IP アドレスを節約しているのです。
プライベート IP アドレスの範囲は以下の通り、あらかじめ決められています。

〈プライベート IP アドレスの範囲〉

クラス A 10.0.0.0 ~ 10.255.255.255

クラス B 172.16.0.0 ~ 172.31.255.255  

クラス C 192.168.0.0 ~ 192.168.255.255  

これも ループバックアドレス

知っと 先頭の 1 バイトが 127 で始まる IP アドレスは、ループバック
アドレスといい、自分自身を指す特別なアドレスとして決めら
れています。そのため、グローバル IP アドレスとして使用す
ることはできません。

ココが
スキル
出る!
→ IP アドレスから、グローバル IP アドレスとプライベート IP 第 章 ●
アドレスを見分けられるようにしておこう。 7
ネットワーク

ナ ッ ト ナ プ ト
● NAT と NAPT( IP マスカレード )
プライベート IP アドレスを割り振られたコンピュータがインターネットに接続
する際に、プライベート IP アドレスとグローバル IP アドレスの相互変換を行う技
術が、NAT と NAPT( IP マスカレード )です。アドレスの相互変換は、通常、ルー
タという通信機器によって行われます。

255
ネ ッ ト ワ ー ク ア ド レ ス トランスレーション
● NAT( Network Address Translation )
NAT は、プライベート IP アドレスとグローバル IP アドレスを 1 対 1 で相互変
換します。そのため、ルータがもっているグローバル IP アドレスが少ないと、
インターネットに接続できないコンピュータが出てくる可能性があります。

〈 NATの仕組み〉

1台につき1個
ルータ

  インターネット

1対 1で変換
LAN
(プライベート IP アドレス) (グローバル IP アドレス)

● NAPT( IP マスカレード )
ネットワーク アドレス ポート トランスレーション
一方、NAPT( Network Address Port Translation )は、複数のプライベー
ト IP アドレスを 1 つのグローバル IP アドレスに、多対 1 で変換します。その
ため、グローバル IP アドレスが 1 つあれば、複数のコンピュータを同時にイ
ンターネットに接続することができます。

〈 NAPTの仕組み〉

みんなで共有
ルータ

インターネット

多対 1で変換
LAN
(プライベート IP アドレス) (グローバル IP アドレス)

ディーエイチシーピー
●動的にIPアドレスを割り当てる DHCP
ネットワークに接続するときだけコンピュータに IP アドレスを自動的に割り当
ダ イ ナ ミ ッ ク ホ ス ト
て、終了時には同じく自動的に回収するプロトコルを DHCP( Dynamic Host
コンフィギュレーション プ ロ ト コ ル
Configuration Protocol )といいます。DHCP を使えば、コンピュータの数が多
くなっても手動で設定する必要がないため、IP アドレスを効率的に管理できます。

256
7-4 IP アドレス

接続し 接続
終わったので、 IPアドレスを するので、
IPアドレスを 管理 IPアドレスを
返却します はいよ! ください

回収 割当て

192.168.1.5 192.168.1.5

コンピュータA DHCP サーバ コンピュータB

アイピーブイシックス
これも IPv6

知っと 世界中でインターネットが使われるようになり、IP アドレス
不足を解消するため、次世代のプロトコルが考え出されました。
これを IPv6 といいます。IPv6 では、IP アドレスは 128 ビッ
かん
トで構成され、約 340 澗(340 兆の 1 兆倍の 1 兆倍)個の IP
アドレスが使えるようになります。アドレス表記法として、ア
ドレスの 16 進数表記を 4 文字(16 ビット )ずつコロン(:)で
区切る方法があります。

ココが
出る! 用語
[ NAT ]
:プライベート IP アドレスとグローバル IP アドレス
を 1 対 1 で変換
[ NAPT( IP マスカレード )]
:プライベート IP アドレスとグ 第 章 ●
ローバル IP アドレスを多対 1 で変換 7
[ DHCP ]
:IP アドレスを自動的に割り当てるプロトコル
[ IPv6]
:次世代のプロトコル。IP アドレスは 128 ビット
ネットワーク

257
基本情報技術者試験 平成 26 年春

TCP/IP ネットワークで DNS が果たす役割はどれか。


ア:PC やプリンタなどからの IP アドレス付与の要求に対し、サーバに登録
してある IP アドレスの中から使用されていない IP アドレスを割り当て
る。
イ:サーバにあるプログラムを、サーバの IP アドレスを意識することなく、
プログラム名の指定だけで呼び出すようにする。
ウ:社内のプライベート IP アドレスをグローバル IP アドレスに変換し、イ
ンターネットへのアクセスを可能にする。
エ:ドメイン名やホスト名などと IP アドレスとを対応付ける。

DNS は、ドメイン名やホスト名と IP アドレスとの対応付けをしま


解説
す。 解答:エ

基本情報技術者試験 平成 27 年春

IPv4 のグローバル IP アドレスはどれか。


ア:118.151.146.138   
イ:127.158.32.134  
ウ:172.22.151.43     
エ:192.168.38.158

ウとエはプライベート IP アドレスです。イは、先頭の1バイトが
解説
127 なので、ループバックアドレスです。 解答:ア

258
7-4 IP アドレス

基本情報技術者試験 平成 24 年春

プライベート IP アドレスの複数の端末が、一つのグローバル IP アドレスを


使ってインターネット接続を利用する仕組みを実現するものはどれか。
ア:DHCP   
イ:DNS  
ウ:NAPT   
エ:RADIUS

複数のプライベート IP アドレスを一つのグローバル IP アドレスに


解説
変換する仕組みは NAPT です。 解答:ウ

基本情報技術者試験 平成 25 年春

IPv4 アドレス表記として、正しくないものはどれか。
ア:10.0.0.0
イ:10.10.10.256
ウ:192.168.0.1
エ:224.0.1.1

IPv4 アドレスは、8 ビットごとにドットで区切った 2 進数を 10 進


解説
数にしたものです。8 ビットで表される範囲は 0~255 のため、イ
の 256 は正しくありません。 解答:イ

第 章 ●

7
基本情報技術者試験 平成 27 年春

IPv6 の IP アドレスは何ビットか。
ネットワーク

ア:32   
イ:64   
ウ:128   
エ:256

IPv6 の IP アドレスの長さは 128 ビットです。


解説
解答:ウ

259
★ ★ ★
7
5 クラスとサブネット

●ネットワーク部とホスト部
IP アドレスの仕組みや使われ方について、もう少し詳しく見ていきましょう。
32 ビットの IP アドレスは、2 つの部分に分けられます。前半をネットワーク部、
後半をホスト部といいます。ホストとは、ネットワークにつなげるコンピュータの
ことです。
IP アドレスを TCP/IP ネットワーク上の「住所氏名」に例えるなら、ネットワー
ク部が個々のホストの「場所」を表し、ホスト部が「名前」を表します。

〈ネットワーク部とホスト部〉

A 村に所属している Yさん

ネットワーク部 ホスト部

名前
場所 はーい
X さん

Y さん
Z さん
A村 B村

● IPアドレスのクラス
IP アドレスは、3 つのクラスに分けられています。大規模ネットワーク用のクラ
ス A、中規模ネットワーク用のクラス B、小規模ネットワーク用のクラス C です。
それぞれのクラスごとに、IP アドレス 32 ビットのうち、何ビット目までをネット
ワーク部に割り当てるかが決められているため、ネットワーク内で使える IP アド
レスの数が異なります。

●クラスごとの構成の内訳
クラス A は、先頭 1 ビットが 2 進数の「0」から始まる IP アドレスで、ネットワー
ク部 8 ビット、ホスト部 24 ビットで構成されます。クラス B は、先頭 2 ビッ

260
7-5 クラスとサブネット

トが 2 進数の「10」から始まる IP アドレスで、ネットワーク部 16 ビット、ホ


スト部16ビットで構成されます。クラスCは、先頭3ビットが2進数の
「110」
から始まる IP アドレスで、ネットワーク部 24 ビット、ホスト部 8 ビットで構
成されます。

〈 IP アドレスのクラス 〉

クラス IP アドレス構成と範囲 接続可能なホスト数 ネットワークの規模

ネットワーク部 ホスト部 24
2 −2 = 大規模
A 16,777,214 台
0

8ビット 24ビット
16
10 2 −2 = 中規模
B 65,534 台
16ビット 16ビット
8
110 2 −2 = 小規模
C 254 台
24ビット 8ビット

●サブネットマスクによる分割
IP アドレスをクラス単位のネットワークで運用すると、1 つのネットワークに膨
大な数のホストを接続することになります。しかし、同じネットワーク内で多くの
ホストが一斉にデータをやりとりすると通信速度が遅くなり、管理も大変です。そ
こで、サブネットマスクという仕組みを使って、ネットワークを細分化して管理し
ます。
サブネットマスクを使うことで、ネットワーク部とホスト部のビット数の割合を 第 章 ●

自由に変更することができるため、ネットワークをさらに小さなネットワーク( サ 7
ブネットワーク )に分割できます。
サブネットを用いて、IP アドレスのクラスにおけるネットワーク部のビット数
ネットワーク

を増やすことで、ネットワーク部を拡張することができます。また、IP アドレス
とサブネットマスクを 2 進数に直して、ビットごとに AND をとる(「3-6 論理演算
と論理回路」参照)と、サブネットワークのアドレスを取り出すことができます。

261
〈サブネットマスク 〉

ホスト部を減らしたネットワーク
IPアドレス(クラスC)

110010101101101000001101 1000 1010

4ビット分拡張
サブネットマスク

111111111111111111111111 1111 0000

ネットワーク部 サブネット部 ホスト部

みんな グループ
一緒 が細分化

同一ネットワーク サブネットに分割

サブネットマスクには、「1」と「0」を合計 32 個並べる書き方以外にも、スラッ
シュ( / )による表記があります。IP アドレスの右側に「 / 」
を書き、その後にサブネッ
トマスクの「1」の個数を付け加える方法です。
例えば、サブネットマスクが「11111111 11111111 11111111 1111
0000」の場合に、これを「 /28」と短縮し、IP アドレスの右側にくっつけて、
「202.
218.13.138/28」というふうに 10 進数で表記します。

サブネットマスクの表記は、「255.255.255.240」のように
10 進数で出題されることが多いです。

262
7-5 クラスとサブネット

●ネットワークアドレスとブロードキャストアドレス
ホスト部のビットがすべて「0」のアドレス、およびすべて「1」のアドレスは、特
別な働きをするために予約されたアドレスで、ホスト用の IP アドレス(ホストアド
レス )としては使用できません。
ホスト部がすべて「0」のアドレスを、ネットワークアドレスといいます。ネット
ワーク自体を表すアドレスとして使用されます。一方、ホスト部がすべて「1」のア
ドレスを、ブロードキャストアドレスといいます。同じネットワーク内のすべての
ホストに一斉送信するために使われます。
つまり、どんなネットワークでも、ホスト部のアドレスのうち 2 つはあらかじめ
使用することができないので、各ネットワークの使用可能なホストアドレス数は、
「2 ホスト部のビット数- 2」となります。

《ホストアドレス数の計算方法》

 ホストアドレス数 =2 ホスト部のビット数− 2

ココが
用語
出る!
[サブネットマスク ]
:ホストアドレス部を分割し、複数のサブ
ネットワークに細分化する情報
スキル
→ IP アドレスとサブネットマスクからネットワーク部とホス
ト部を区別し、ホストが所属するネットワークアドレスやブロー 第 章 ●
ドキャストアドレスを求められるようにしておこう。
7
ネットワーク

263
基本情報技術者試験 平成 26 年春

IPv4 で 192.168.30.32/28 のネットワークに接続可能なホストの最大


数はどれか。
ア: 14   イ:16   ウ:28   エ:30

ホスト部のビット数
接続可能なホストの最大数= 2 - 2 で計算できます。
解説
/28 の表記は、ネットワーク部が 28 ビットということなので、ホ
4
スト部は 32 - 28 = 4 ビット。よって、2 - 2 = 16 - 2 = 14。
解答:ア

基本情報技術者試験 平成 20 年秋

IP アドレスが 192.168.0.x でサブネットマスクが 255.255.255.0 の


TCP/IP ネットワークで、ブロードキャストアドレスはどれか。
ア: 192.168.0.0    
イ:192.168.0.255
ウ: 192.168.255.0   
エ:192.168.255.255

IP ア ド レ ス が 192.168.0.x で サ ブ ネ ッ ト マ ス ク が 255.255.
解説
255.0 の場合、最後の 8 ビットの部分がホスト部となります。ブ
ロードキャストアドレスは2進数表記でホスト部のビットがすべて 1、
10 進数に変換すると 255 になります。よって、ブロードキャストアド
レスは 192.168.0.255 です。 解答:イ

264
7-6 LAN
★ ★
7
6 LAN

ラ ン
● LAN は小規模ネットワーク
家庭内や会社内など、同じ建物の中のような狭い空間に構成される小さな規模の
ローカル エ リ ア ネ ッ ト ワ ー ク
ネットワークを LAN( Local Area Network )といいます。LAN に接続したコン
ピュータ間では、ネットワーク経由でデータをやりとりしたり、プリンタや記憶装
置を共有したりすることができます。

● LAN の接続形態
ケーブルのつなぎ方によって、LAN の形が異なります。代表的な接続形態は次
の 3 つです。

〈 LAN の接続形態〉

名称 形態

バス型 バスと呼ばれる 1 本のケーブルから、ケーブルを分岐させて端末や機器を


つなぐ形態

スター型 ケーブルを束ねる集線装置を中心に、各ケーブルをつなぐ形態

リング型 環状に配置したケーブルに機器を接続する形態

〈バス型〉 〈スター型〉 〈リング型〉


第 章 ●

7
集線装置
ネットワーク

終端装置

● LAN のアクセス制御方式
LAN には、入出力を行うコンピュータである端末が多数接続していますが、こ
れらの端末が、てんでばらばらにデータを送信すると、ネットワークが混乱してし
まいます。共有している伝送路を使って通信するためには、データを送るルールが
必要です。特に、バス型やリング型の LAN では、1 本の伝送路をすべての機器や

265
端末で共有するので、送信する信号がぶつからないような仕組みが必要です。どの
端末に優先してデータ送信させるかを決めるルールを、アクセス制御方式といいま
す。代表的なアクセス制御方式は、次のとおりです。

シーエスエムエー シーディー
● C S M A / C D 方式
ケーブルが使用中かを調べ、使用中でなければ送信する方式が CSMA/CD 方
式です。もし他の端末とバッティングして信号の衝突を検出した場合は、お互
いにしばらく待ってタイミングをずらして再送します。
端末の台数が増えると、
衝突回数が増えて待つ時間が多くなるため、処理速度が低下しやすくなります。

ココが
出る! 用語
[CSMA/CD 方式]
:衝突した場合、しばらく待ってから再送

基本情報技術者試験 平成 27 年春

CSMA/CD 方式の LAN に接続されたノードの送信動作として、適切なも


のはどれか。
ア: 各ノードに論理的な順位付けを行い、送信権を順次受け渡し、これを受
け取ったノードだけが送信を行う。
イ:各ノードは伝送媒体が使用中かどうかを調べ、使用中でなければ送信を
行う。衝突を検出したらランダムな時間経過後に再度送信を行う。
ウ:各ノードを環状に接続して、送信権を制御するための特殊なフレームを
巡回させ、これを受け取ったノードだけが送信を行う。
エ:タイムスロットを割り当てられたノードだけが送信を行う。

CSMA/CD 方式では、伝送媒体が使用中でなければ送信し、衝突
解説
した場合、しばらく待ってから再送します。 解答:イ

266
7-7 LAN 間接続装置
★ ★ ★
7
7 LAN 間接続装置

● LANで利用するネットワーク機器
端末やプリンタを LAN に接続したり、LAN 同士を接続したりするためには、接
続するためのネットワーク機器が必要です。それぞれのネットワーク機器は役割に
よって、OSI 基本参照モデル(
「7-1 通信プロトコル 」参照)のどの階層のプロトコル
を使うかが異なります。

●リピータ
弱くなった信号波形を増幅することで、伝送距離を延長するネットワーク機器で
す。OSI 基本参照モデル第 1 層である物理層のプロトコルを使います。

〈リピータ 〉

信号の波形を
直します

リピータ    

●ブリッジ
あて先の MAC アドレスを見て、同一ネットワーク内でデータを中継するネット 第 章 ●

ワーク機器です。特に、LAN ケーブルの接続ポートを複数もち、宛先 MAC アドレ 7


スが存在するLANポートだけに転送するものを、スイッチングハブ(レイヤ2スイッ
チ )といいます。OSI 基本参照モデル第 2 層であるデータリンク層のプロトコルを
ネットワーク

使います。

〈ブリッジ 〉 MACアドレス あて先の


MACアドレスを
見て中継

ブリッジ

267
マ ッ ク
これも MAC アドレス

知っと MAC アドレスとは、ハードウェアが工場から出荷されるとき
に、機器 1 台 1 台に割り振られる 48 ビットの識別番号です。
先頭の 24 ビットは OUI と呼ばれるベンダ固有の ID で、後続
の 24 ビットは、ベンダが割り当てた固有製造番号です。

●ルータ
データのあて先 IP アドレスを見て、異なるネットワークにデータを中継するネッ
トワーク機器です。OSI 基本参照モデル第 3 層であるネットワーク層のプロトコル
を使います。

〈ルータ 〉

あて先のIPアドレスを
IP アドレス 見て中継

ルータ ルータ

●ゲートウェイ
OSI 基本参照モデルの第 4 層から第 7 層のプロトコルが異なるネットワーク同士
を接続するネットワーク機器です。

〈ゲートウェイ 〉

相互に通信できる
ように翻訳!!

プロトコルAを プロトコルBを
使っている 使っている
ネットワーク ネットワーク
ゲートウェイ

268
7-7 LAN 間接続装置

ア ー プ ラ ー プ
これも ARP と R ARP

知っと あて先までデータを届けるためには、相手の端末の MAC アド
レスと IP アドレスの両方が必要です。そこで片方のアドレス
が分かっている場合に、もう片方を取得するプロトコルが用意
されています。IP アドレスから MAC アドレスを取得するもの
ア ド レ ス レゾリューション プ ロ ト コ ル
を ARP( Address Resolution Protocol )、MAC ア ド レ ス
リ バ ー ス ア ー プ
から IP アドレスを取得するものを RARP( Reverse ARP )と
いいます。

ココが
用語
出る!
[リピータ ]
:信号を増幅することによって伝送距離を延長する
[ブリッジ ]
:あて先 MACアドレスを基にして、データを中継
[ルータ ]:あて先 IP アドレスを基にして、データを中継
[ ゲートウェイ ]:第 4~7 層のプロトコルが異なる LAN 同士
を接続
[ MAC アドレス ]:ベンダ ID と固有製造番号から構成される
48 ビットの物理アドレス
[ ARP ]
:IP アドレスから MAC アドレスを取得
[ RARP ]
:MAC アドレスから IP アドレスを取得
スキル
→各接続装置が OSI 基本参照モデルのどの階層に対応してい 第 章 ●
るかを覚えておきましょう。 7
ネットワーク

基本情報技術者試験 平成 26 年春

OSI 基本参照モデルの各層で中継する装置を、物理層で中継する装置、デー
タリンク層で中継する装置、ネットワーク層で中継する装置の順に並べたも
のはどれか。
ア:ブリッジ、リピータ、ルータ   イ:ブリッジ、ルータ、リピータ
ウ:リピータ、ブリッジ、ルータ   エ:リピータ、ルータ、ブリッジ

269
物理層はリピータ、データリンク層はブリッジ、ネットワーク層は
解説
ルータです。 解答:ウ

基本情報技術者試験 平成 22 年秋

ルータがパケットの経路決定に用いる情報として、最も適切なものはどれか。
ア: あて先 IP アドレス   
イ:あて先 MAC アドレス
ウ:発信元 IP アドレス   
エ:発信元 MAC アドレス

ルータが経路決定のために参照するのは、あて先 IP アドレスです。
解説
   解答:ア

基本情報技術者試験 平成 24 年春

通信を要求した PC に対し、ARP の仕組みを利用して実現できる通信可否


の判定方法のうち、最も適切なものはどれか。
ア: PC にインストールされているソフトウェアを確認し、登録されている
ソフトウェアだけがインストールされている場合に通信を許可する。
イ:PC の MAC アドレスを確認し、事前に登録されている MAC アドレス
である場合だけ通信を許可する。
ウ:PC の OS のパッチ適用状況を確認し、最新のパッチが適用されている
場合だけ通信を許可する。
エ:PC のマルウェア対策ソフトの定義ファイルを確認し、最新になってい
る場合だけ通信を許可する。

ARP は、IP アドレスから MAC アドレスを取得するプロトコルです。


解説
そのため、PC の MAC アドレスを確認して通信の可否を判定する
ことが可能です。 解答:イ

270
7-8 WAN
★ ★
7
8 WAN

●WAN は広域ネットワーク
ワ イ ド エ リ ア
LAN は狭い域内用のネットワークでした。それに対して、WAN( Wide Area
ネ ッ ト ワ ー ク
Network )は、地理的に離れた場所にある LAN 同士を接続した広域ネットワーク
のことです。WAN を構築する場合には、私有地を越えて勝手にケーブルを敷設す
ることはできないため、NTT や KDDI といった電気通信事業者によって提供され
る電気通信サービスを利用します。

●WAN の形態
WAN サービスは、接続と通信の形態によって次のように分類されます。

●専用線方式
専用線方式では、接続したい LAN 同士や端末同士を、専用の通信回線で接続
します。回線を独り占めできるので、セキュリティが高く、通信速度は安定し
ます。決まった相手先と大量のデータを交換する場合に利用され、通信料金は、
距離や通信速度によって決まります。

〈専用線方式〉

1対 1で接続 第 章 ●

7
ネットワーク

●回線交換方式
通信ごとに交換機を通して相手と接続して、物理的に回線を確保してから通信
する方式が回線交換方式です。通信中は回線が占有されるため、他の端末が接
続しようとしてもつながりません。公衆電話回線はこの方式です。料金は通常、
接続時間に応じて課金される従量制です。

271
〈回線交換方式〉

接続中は回線を占有

交換機

話し中だ!!

●パケット交換方式
データをパケットと呼ばれる小さな単位に分割し、共有回線を経由して相手に
送る方式がパケット交換方式です。パケット交換方式では、複数の端末が回線
を共有することができるため効率的ですが、通信速度は遅くなります。通信費
用は、パケット単位での従量制か、固定料金制です。

〈パケット交換方式〉

パケットを蓄積
あて先を見て交換
パケット 回線は
みんなで共有
パケット できる!!
交換機

● ATM 交換方式
ATM 交換方式は、回線交換方式とパケット交換方式、両方のいいところを取
り入れた方法です。あらゆる種類のデータを、固定長(53 バイト )のセルと
よばれる単位に区切り、それぞれにあて先を付けたうえで送信します。

ココが
出る! 用語
[パケット交換方式]:データをパケットに分割し、あて先情報
を付与して送信
[ ATM 交換方式]:データをセルと呼ばれる固定長のブロック
に分割して送信

272
7-8 WAN

●WANサービスの種類
現在、個人向けや会社向けに、さまざまな種類の WAN サービスが提供されてい
ます。よく出題される代表的な WAN サービスを説明します。

エーディーエスエル ア シ ン メ ト リ ッ ク ディジタル サ ブ ス ク ラ イ バ ラ イ ン
● A D S L( Asymmetric Digital Subscriber Line )
ADSL は、既存のアナログ電話回線を利用した高速データ通信サービスで、
上り(送信)よりも下り(受信)の速度の方が速いという通信速度の非対称が特
徴です。アナログ電話とデータ通信とで使用する周波数帯域を分けるため、電
話とインターネット接続を同時に使うことができます。
ADSL では、音声信号とデータ信号の分離や合成にはスプリッタを使い、ア
ナログ信号とディジタル信号の変換には ADSL モデムを用います。各機器の
接続は以下のようになります。

〈 ADSL 〉
モジュラー
ADSLモデム スプリッタ アナログ電話回線
ジャック

電話機

シーエーティービー コ ミ ュ ニ テ ィ ア ン テ ナ テ レ ビ ジ ョ ン
● C A T V( Community Antenna Television )
CATV はケーブルテレビの回線を利用して、インターネット接続を行うサー
ビスです。ADSL 同様、下り速度が速く、上り速度が遅いのが一般的です。 第 章 ●

接続には、CATV モデムが必要になります。 7

エフティーティーエイチ ファイバー ツ ー ザ ホ ー ム
● F T T H( Fiber To The Home )
ネットワーク

FTTH は光ファイバー回線を各家庭まで引き込み、電話やケーブルテレビ、
インターネットを統合した通信を実現する、高速データ通信サービスです。

273
ココが
出る! 用語
[ ADSL ]
:既存の電話回線を使う通信サービス。上りと下り
で速度が異なる
[ スプリッタ ]: ADSL 通信で、音声信号とデータ信号とを分
離する装置
[ CATV ]
:ケーブルテレビの回線を利用する通信サービス
[モデム ]: ディジタル信号とアナログ信号を交換する装置

基本情報技術者試験 平成 22 年春

既存の電話回線を利用した ADSL サービスで、ADSL モデムと電話機を接


続する装置 A はどれか。
利用者宅内

電話機
電話回線
装置A

PC ADSLモデム

ア: スプリッタ       
イ:ターミナルアダプタ
ウ:ダイヤルアップルータ  
エ:ハブ

ADSL モデムと電話機を接続する装置はスプリッタです。音声信号
解説
とデータ信号とを分離します。 解答:ア

274
7-9 ネットワークの伝送速度
★ ★ ★
7
9 ネットワークの伝送速度

●データ伝送速度
これまでにさまざまな通信方法を見てきましたが、通信方法を評価する基準の 1
つに、通信速度があります。通信速度とは、データの伝送速度のことをいいます。
具体的には 1 秒間に何ビット分のデータを送ることができるかで表し、単位はビッ
ビーピーエスビット パ ー セ カ ン ド
ト/秒( b ps:bit per second )を用います。つまり、通信速度が速いというのは、
短い時間でより多くのデータを運ぶことができるということです。例えば、1 秒間
メガ
に 100 万ビットを伝送できる伝送路の伝送速度は、1M ビット/秒(1Mbps )と
なります。

〈ネットワークの伝送速度〉

1Mビット/秒の伝送路
(遅い)
1Mビット

1秒間
4 Mビット

4 Mビット/秒の伝送路
(速い)

第 章 ●

7
●データ伝送時間の計算方法
あるデータを送るのにかかる時間を、データ伝送時間といいます。例えば、
ネットワーク

10M ビット/秒の回線経由で、5M バイトの画像ファイルを送る場合、伝送時間


は次のように計算できます。1 バイトは 8 ビットですので、バイトをビットに換算
するときには 8 をかけます。

 5M × 8(ビット )÷ 10M(ビット/秒)= 4(秒)

しかし、実際の伝送時間はこの計算どおりにはなりません。送られるデータには、

275
あて先やエラーチェックのための制御情報が付けられていて、その分だけデータ量
が多くなります。また、相手がデータを受け取った際には応答確認のデータがやり
とりされるなど、純粋に送りたいデータの送信だけに 100%回線を使うことがで
きるわけではありません。回線容量に対して、伝送可能なデータの容量の割合のこ
とを回線利用率といい、伝送時間を求める際には、この回線利用率を考慮する必要
があります。

《データ伝送時間の求め方》

 データ伝送時間=データ伝送量÷(回線速度×回線利用率)

〈回線利用率 70%の場合〉

データ以外の
情報が通る
3 M ビット/秒
10 M
ビット/秒
7 M ビット/秒 実質的なデータの通り道

ココが
スキル
出る!
→データ伝送時間を計算できるようにしておこう。

基本情報技術者試験 平成 27 年春

10Mバイトのデータを100,000ビット/秒の回線を使って転送するとき、
転送時間は何秒か。ここで、回線の伝送効率を 50%とし、1M バイト=
106 バイトとする。
ア:200  イ:400  ウ:800  エ:1,600

データ転送時間=転送データ量÷(回線速度×回線利用率)
解説
=(10 × 1,000,000 ×8(ビット ))÷(100,000 × 0.5 )=
1,600(秒)
解答:エ

276
7-10 誤り制御
★ ★ ★
7
10 誤り制御

●データ誤りの検出
ネットワークの伝送路は電磁波などの影響でデータを送っている途中で信号が変
形してしまい、データの値が変わってしまうことがあります。これをビット誤りと
いいます。こうしたビット誤りの検出や訂正を行うため、パリティチェック、ハミ
シーアールシー
ング符号方式、C RC といったチェック方法があります。

●奇数パリティ・偶数パリティ
送信するデータのビット列に、パリティと呼ばれる検査用のビットを付けるこ
とで誤りを検出する方法を、パリティチェックといいます。パリティチェック
には、奇数パリティと偶数パリティがあります。

〈奇数パリティと偶数パリティ〉

名称 方法

奇数パリティ ビット列の「1」の数が奇数個になるように、
「0」か「1」を付け
加える

偶数パリティ ビット列の「1」の数が偶数個になるように、
「0」か「1」を付け
加える

例えば、偶数パリティを適用し、7 ビットの「0110000」というビット列を
第 章 ●
送信する場合を考えてみます。
「1」の数が 2 個あるのですでに偶数です。よっ
て、パリティビットは「0」を付け加えます。 7
データ送信中にビット誤りが発生して値が変わってしまい、
「01110000」と
いうデータを受信したとします。偶数パリティを適用しているにも関わらず、
ネットワーク

受信したデータの「1」の個数が奇数のため、受信側はビット誤りであることを
発見し、再送を要求します。
ただし、もし同時に2ビット以上の誤りが発生した場合には、誤りが検出でき
る場合とできない場合があります。パリティチェックで確実に誤りが検出でき
るのは、誤りが1ビットの場合のみです。

277
●垂直パリティ・水平パリティ
パリティビットを垂直・水平のどちらの方向に付け加えるかで、垂直パリティ
と水平パリティの 2 種類の方式に分かれます。さらに、両方を組み合わせた水
平垂直パリティという方式もあります。いずれも、偶数パリティか奇数パリティ
と組み合わせて用いられます。

〈垂直パリティと水平パリティ〉

名称 方法

垂直パリティ 1 文字ごとにパリティを付け加える

水平パリティ 各文字の同じ位置のビットをまとめたものを 1 つのブロッ


クと見なし、そのブロックごとにパリティを付け加える

水平垂直パリティ 垂直パリティと水平パリティを組み合わせる

〈水平垂直パリティ〉

S T U D Y 水平パリティ
(→方向、ブロックごと)
1 0 1 0 1 1

1 0 0 0 0 1

0 1 1 1 0 1

0 0 0 0 1 1
ブロック
1 1 1 0 1 0

0 0 0 0 0 0

1 1 1 1 1 1

0 1 0 0 0 0

垂直パリティ(↓方向、文字ごと)

水平垂直パリティでは、1 ビットのビット誤りが発生した場合、誤り位置を特
定し、訂正できます。

278
7-10 誤り制御

〈偶数パリティを併用するときの 1ビットの誤り検出と訂正〉

③ ② あれ!?
このデータが 1の個数が偶数 1→0に
おかしい!! じゃないぞ 訂正しよう

0 0 0 誤り発生 1 0 0 1 0 0 0 0 0
検出 訂正
1 1 0 1 1 0 1 1 0 1 1 0

1 1 1 1 1 1 1 1

あれ!?
  1の個数が偶数じゃないぞ

ただし、水平垂直パリティでは、2ビット以上のビット誤りが発生した場合に
は、誤りが検出できる場合とできない場合があり、検出できても位置が特定で
きるとは限りません。

●ハミング符号方式
ハミング符号方式は、同一のデータに対して、複数の方法でチェックコードを
付ける方法です。メモリの誤り制御方式として用いられ、2 ビットの誤り検出
と 1 ビットの誤り訂正ができます。

● CRC(巡回冗長検査)
サイクリック リ ダ ン ダ ン シ ー チ ェ ッ ク
CRC( Cyclic Redundancy Check )は、ある生成多項式で割った余りを
チェックコードとして付け加える方法です。1 ビットの誤りしか訂正できない 第 章 ●

パリティ方式に比べて、連続したビット誤りであるバースト誤りやランダム誤 7
りを検出できるため信頼性が高い方法です。
ネットワーク

ココが
スキル
出る!
→ビット列から、奇数パリティ・偶数パリティを計算して、正
しい位置に付加できるようにしておこう。

279
これも チェックディジット

知っと チェックディジットは、入力したコードの値の誤りなどを検出
するために元のコードに付加される数字や文字のことです。一
定の計算式によって最終けたが正しいかをチェックし、入力ミ
スを検出できます。

ココが
出る! 用語
[垂直パリティ]
:1 文字ごとにパリティを付け加え、1 ビット
の誤りを検出できる
[ハミング符号方式]:同一のデータに、複数の方法でチェック
コードを付ける
[ CRC ]:ビット列を生成多項式で割った余りで誤りをチェッ
クする
[ チェックディジット ]
:一定の計算式によって元のコードに
数字を付加し、入力値の誤りを検出できる

パリティの問題では、文字コードが 16 進数で出題される場合も
あるので、16 進数から 2 進数への変換が確実にできるようにし
ておこう。

基本情報技術者試験 平成 20 年春

7 ビットの文字コードの先頭に 1 ビットの偶数パリティビットを付加すると
き、文字コード 30、3F、7A にパリティビットを付加したものはどれか。
ここで、文字コードは 16 進数で表している。
ア:30、3F、7A   イ:30、3F、FA
ウ:B0、3F、FA   エ:B0、BF、7A

280
7-10 誤り制御

30、3F、7A を 2 進数で表すと 011 0000、011 1111、111


解説
1010 となります。偶数パリティでは、全体の 1 の個数が偶数にな
るように先頭のパリティビットを決めます。したがって先頭に 1 ビットの
偶数パリティを付加すると、文字コードは 0011 0000 → 30、0011
1111 → 3F、1111 1010 → FA となります。 解答:イ

基本情報技術者試験 平成 22 年秋

送信側では、ビット列をある生成多項式で割った余りをそのビット列に付加
して送信し、受信側では、受信したビット列が同じ生成多項式で割り切れる
か否かで誤りの発生を判断する誤り検査方式はどれか。
ア: CRC 方式   
イ:垂直パリティチェック方式
ウ:水平パリティチェック方式   
エ:ハミング符号方式

ビット列を生成多項式で割った余りで誤りをチェックするのは、
解説
CRC 方式です。                   解答:ア

基本情報技術者試験 平成 24 年春

チェックディジットを利用する目的として、適切なものはどれか。
第 章 ●
ア: 数値項目へ入力したデータに、英字や記号が混入した誤りを検出する。
7
イ:入力したコードの値の誤りを検出する。
ウ:入力したコードの桁数の誤りを検出する。
ネットワーク

エ:入力したデータ値が、定められた範囲内に収まっていない誤りを検出す
る。

チェックディジットを利用すると、一定の計算式によって最終桁が
解説
正しいかをチェックすることで、入力コードの値の誤りを検出する
ことができます。 解答:イ

281
データベース
★ ★
8
1 データベースの基礎

●データベースとは
住所録や顧客情報など、大量のデータを一定の規則に従って整理したものを、デー
タベースといいます。ただデータを並べただけのものとは異なり、必要なデータを
検索したり抽出したりできるのが特徴です。たくさんのデータを簡単に管理・利用
するために使います。

●データベースの種類
データベースは、データ構造の違いによって、3 つの種類に分けられます。

●階層型データベース
階層型データベースは、データを木のような形の階層構造で表します。例えば
住所録であれば、氏名、電話番号、住所といったような1人分のデータのこと
をレコードといいますが、子レコードは、1 つの親レコードしかもちません。

●ネットワーク型データベース
ネットワーク型データベースは、データを網の目のような構造で表します。子
レコードは複数の親レコードをもつことができます。

●関係データベース
関係データベースは、データを行と列による 2 次元の表で表し、複数の表を
組み合わせてデータを管理します。関係データベースはリレーショナルデータ
アールディービー リ レ ー シ ョ ナ ル デ ー タ ベ ー ス
ベース
( R D B:Relational Database )ともいわれます。

284
8-1 データベースの基礎

第 章 ●
<データベースの種類>
8
親は 1つ 親が複数 表形式
のときも

データベース
階層型データベース ネットワーク型データベース 関係データベース

これも スキーマ

知っと データベースのデータ構造や性質、形式などの定義をスキーマ
といいます。例えば、関係データベースのスキーマは、データ
を行と列で表し、データ同士の関連を定義します。

ココが
出る! 用語
[階層型データベース ]
:データを木のような形の階層構造で
表現する
[ ネットワーク型データベース ]
:データを網の目のような構
造で表現する
[関係データベース ]:データを表形式で表現する
[スキーマ ]:データベースの構造や性質、形式などの定義

285
基本情報技術者試験 平成 25 年秋

関係データベースのデータ構造の説明として、適切なものはどれか。
ア:親レコードと子レコードをポインタで結合する。
イ:タグを用いてデータの構造と意味を表す。
ウ:データと手続を一体化(カプセル化)してもつ。
エ:データを 2 次元の表によって表現する。

関係データベースは、データを表形式で表します。       
解説
解答:エ

基本情報技術者試験 平成 26 年秋

RDBMS におけるスキーマの説明として、適切なものはどれか。
ア:実表ではない、利用者の視点による仮想的な表である。
イ:データの性質、形式、他のデータとの関連などのデータ定義の集合で
ある。
ウ:データの挿入、更新、削除、検索などのデータベース操作の総称である。
エ:データベースの一貫性を保持するための各種制約条件の総称である。

スキーマは、データベースの構造や性質、形式などの定義のことで
解説
す。 解答:イ

286
8-2 関係データベース
★ ★ ★
8
2

第 章 ●
関係データベース 8

データベース
●関係データベースの構成
3 つのデータベースの種類のうち、その中で一番広く使われているのは関係デー
タベースです。関係データベースは、下のようなます目形式でデータを管理します。
これを表( テーブル )といいます。また、表の 1 行に入力されている 1 件分のデー
タを行(レコード )、1 列に入力されている同じ項目のデータを列(フィールド )と
いいます。

〈関係データベースの構成〉

学生表
学籍番号 氏名 クラス

001 山田太郎 1C

002 田中一郎 2A 行
003 高橋和子 3E

004 後藤 正 2B

005 斉藤美香 2A

●主キー
表から目的のデータを検索したり抽出したりするためには、1 件 1 件のデータで
ある行が識別できるようになっていなくてはなりません。行の識別は列の項目で行
うので、そのためには、
「データの値が空でなく、なおかつ決して重複しない列」が
必要になります。
例えば、上の表の例では、
「学籍番号」がその列にあたります。
「氏名」の列でも個々
の行を識別できそうですが、同姓同名の人がいた場合に識別できません。重複が無
い状態のことを一意といい、行を一意に識別するための列を主キーといいます。こ
のように、キー値が空でなく重複しない制約を、主キー制約といいます。

●外部キー
関係データベースの表どうしは、キーを介して関連付けられています。例えば、

287
下の表の例では、
「学生資格取得表」の「資格コード 」は「資格表」の「資格コード 」と
同じものです。

〈外部キー〉

学生資格取得表 資格表
学籍番号 資格コード 取得日 資格コード 資格名
002 J01 2009/6 J01 ITパスポート

002 J02 2009/12 J02 基本情報

003 J01 2008/6 J03 応用情報

004 J01 2009/6


主キー

外部キー
関連付けられています

表の列のうち、他の表の主キーとしても使われている列を外部キーといいます。
この場合、
「資格コード 」の列は、
「学生資格取得表」の外部キーであり、同時に「資
格表」の主キーです。このとき、「学生資格取得表」のレコードには「資格表」に存在
しない資格コードを指定することはできません。このように、関係する表どうしで
レコード間の参照の整合性を維持する制約を、外部キー制約といいます。

ココが
用語
出る!
[主キー]:行を一意に識別できる列、重複せず空でない
[外部キー]:他の表の主キーを参照する列
スキル
→参照の整合性を損なう具体的なデータ操作について、理解し
ておこう。

288
8-2 関係データベース

●表の操作

第 章 ●
関係データベースでは、表の操作によって必要なデータを抽出できる仕組みに 8
なっています。表の操作には、いくつかの種類があります。それらのうち表から必
要な行だけを抽出する操作を選択、必要な列だけを抽出する操作を射影といいます。

データベース
〈選択と射影〉

ID 書籍名 著者 選択(条件:著者が「猫田花子」の書籍)
001 ステキ筋肉 犬山太郎 002 イタリア語講座 猫田花子
002 イタリア語講座 猫田花子 005 日常イタリア語 猫田花子
003 英会話テキスト 牛島 明
004 ダイエット辞典 鳥谷茂雄
射影(条件:「書籍名」のみ)
005 日常イタリア語 猫田花子
ステキ筋肉
イタリア語講座
英会話テキスト
ダイエット辞典
日常イタリア語

複数の表からデータを抽出することもできます。例えば、下のような 2 つの表が
あるとします。

〈複数の表からのデータ抽出〉

学生表 学生資格取得表
学籍番号 氏名 クラス 学籍番号 資格コード 取得日

「どの資格も取得していない学生」を抽出したい場合、どちらか一方の表だけで
は情報が足りません。こういうときには、2 つの表から条件に合致する列を取り出
して組み合わせ、新しく 1 つの表を作る結合という操作を用います。

289
〈結合〉

学生表 学生資格取得表
学籍番号 氏名 クラス 学籍番号 資格コード 取得日

001 山田太郎 1C 002 J01 2009/6

002 田中一郎 2A 002 J02 2009/12

003 高橋和子 3E 003 J01 2008/6

004 後藤 正 2B 004 J01 2009/6

005 斉藤美香 2A

結合
学籍番号 氏名 クラス 資格コード 取得日

001 山田太郎 1C

002 田中一郎 2A J01 2009/6

002 田中一郎 2A J02 2009/12 どの資格も取得


003 高橋和子 3E J01 2008/6 していない学生

004 後藤 正 2B J01 2009/6

005 斉藤美香 2A

これも 挿入

知っと 表に対して行(レコード )を追加することを、挿入といいます。

ココが
出る! 用語
[選択]:検索条件に合う行を検索
[射影]:検索条件に合う列を検索
[結合]:複数の表を連結する

290
8-2 関係データベース

第 章 ●
基本情報技術者試験  平成 23 年特別

関係データベースにおいて、外部キー定義を行う目的として、適切なものは 8
どれか。
ア:関係する相互のテーブルにおいて、レコード間の参照一貫性が維持さ

データベース
れる制約をもたせる。
イ:関係する相互のテーブルの格納場所を近くに配置することによって、
検索、更新を高速に行う。
ウ:障害によって破壊されたレコードを、テーブル間の相互の関係から可
能な限り復旧させる。
エ:レコードの削除、追加の繰返しによる、レコード格納エリアの虫食い
状態を防止する。

外部キーを定義することで、表どうしのデータ参照の整合性を維持
解説
する外部キー制約を持たせることができます。 解答:ア

基本情報技術者試験  平成 26 年春

関係データベースの操作のうち、射影( projection )の説明として、適切な


ものはどれか。
ア:ある表の照会結果と、別の表の照会結果を合わせて一つの表にする。
イ:表の中から特定の条件に合致した行を取り出す。
ウ:表の中から特定の列だけを取り出す。
エ:二つ以上の表の組から条件に合致した組同士を合わせて新しい表を作
り出す。

射影とは、表の中から特定の列を取り出す操作です。
解説
解答:ウ

291
★ ★ ★
8
3 データの正規化

●正規化とは
関係データベースでは、表をいくつも組み合わせてデータを管理しているので、
それぞれの表の主キーや外部キーのデータが追加、更新、削除されたときには、き
ちんと他の表にも反映しなくてはなりません。そうしないと、表のデータに重複や
矛盾が生じてしまいます。
正しくデータが管理できるような表を作ることを正規化といいます。正規化する
ことで、データベースからデータの重複や矛盾を取り除くことができます。
正規化には、第 1 正規化から第 3 正規化まであり、次の段階に分けて進められ
ます。

〈正規化の流れ〉

非正規形 第1正規形 第2正規形 第3正規形

主キーによって 主キー以外の
繰返し項目 繰返し項目 他の項目が 項目によっても
がある を取り除く 決まるように 決定される
分別 項目を分別

ここでは例として、学生の資格取得状況を管理している表を正規化していき
ます。

●非正規形
次の表は学生の資格取得状況を管理している表です。この表では、1 人の学生が
複数の資格を取得しているため、1 つのレコードの資格名と資格コード、取得日に
複数のデータが存在してしまっています。このような繰返し構造をもつ表を非正規
形といい、関係データベースでは管理できません。

292
8-3 データの正規化

第 章 ●
〈非正規形の表〉
8
学籍番号 氏名 クラス 担任 資格コード 資格名 取得日

繰返し
         J01 ITパスポート 2009/6
002 田中一郎 2A 松本 勝

データベース
J02 基本情報 2009/12

003 高橋和子 3E 二宮純一 J01 ITパスポート 2008/6

004 後藤 正 2B 相葉一成 J01 ITパスポート 2009/6

●第1正規形
そこで、「資格コード 」
「資格名」
「取得日」のそれぞれのデータごとに 1 つずつレ
コードを作成します。このように繰返しを取り除いた表を第 1 正規形といいます。
これでまずは、関係データベースの表として、とりあえずは使える形になりました。

〈第 1正規形の表〉

学籍番号 氏名 クラス 担任 資格コード 資格名 取得日

002 田中一郎 2A 松本 勝 J01 ITパスポート 2009/6

002 田中一郎 2A 松本 勝 J02 基本情報 2009/12

003 高橋和子 3E 二宮純一 J01 ITパスポート 2008/6

004 後藤 正 2B 相葉一成 J01 ITパスポート 2009/6

●第 2 正規形
しかし、第 1 正規形の表は、このままでは使い勝手がよくありません。例えば、
新しい資格を追加しようと思っても、誰か学生がその資格を取得するまでは追加
できません。また、資格コードに対応する資格名を変更しようとした場合には、
全データの資格名をいちいち変更しなければなりません。
こういった問題を解決するためには、ある項目が決まれば他の項目も決まるよう
になっている列どうしを、新しく表として分割します。前出の〈第 1 正規形の表〉
では、
「学籍番号」が決まると、
「氏名」
「クラス 」
「担任」が決まります。同様に、
「資
格コード 」が決まると、
「資格名」が決まるので、それぞれ別の表にします。このよ
うに、主キーによって項目が決まるように分割された表を第 2 正規形といいます。

293
〈第 2 正規形の表〉

第 2 正規形 ① 第 2 正規形 ②

学籍番号 氏名 クラス 担任 資格コード 資格名


002 田中一郎 2A 松本 勝 J01 ITパスポート
第 2 正規形 ① 第 2 正規形 ②
003 高橋和子 3E 二宮純一 J02 基本情報
004 後藤 正 2B 相葉一成
学籍番号 氏名 クラス 担任 資格コード 資格名

また、主キーは
002 1 つだけとは限りません。
田中一郎 2A 「取得日」については、
松本 勝 J01 「どの学生のど
ITパスポート
第 2003
の資格か」正規形 ③高橋和子
によって決まります。つまり、主キーは
3E 二宮純一 「学籍番号」
J02 +「資格コード
基本情報 」の

組合せとなります。よって、さらに次のように分割します。
004 後藤 正 2B 相葉一成
学籍番号 資格コード 取得日
〈第 2 正規形の表〉
002 J01 2009/6
第 2 正規形 ③
002 J02 2009/12

003 J01 2008/6


学籍番号
004 資格コード
J01 取得日
2009/6
002 J01 2009/6

002 J02 2009/12

003 J01 2008/6

004 J01 2009/6

このように分割することで、新しい資格が新設された場合、誰も取得していなく
ても資格表に事前に追加しておくことができます。また、資格名が変更になった場
合にも、資格表の資格名を変更するだけで、学生の全データに反映させることがで
きます。

●第 3正規形
「第2正規形①」表では、項目「担任」は、主キーである「学籍番号」が決まれば「ク
ラス 」が決まり、
「クラス 」が決まれば「担任」が決まります。こういった、
「学籍番号」
→「 クラス 」→「担任」という決まり方を、データベース用語で推移的関係従属であ
る、といいます。この推移的関係従属がない状態にした表が、第3正規形です。そ
こで、この部分を別表に分割します。

294
8-3 データの正規化

第 章 ●
〈第 3 正規形の表〉
8
第 3 正規形 ① 第 3 正規形 ②

データベース
学籍番号 氏名 クラス クラス 担任

002 田中一郎 2A 2A 松本 勝

003 高橋和子 3E 3E 二宮純一

004 後藤 正 2B 2B 相葉一成

このように、レコードの項目すべてが、主キーのみで決まるように分割された、
推移的関係従属がない状態の表を第 3 正規形といいます。第 2 正規形②③の表は、
主キー以外で決定される項目は存在しないため、すでに第 3 正規形の条件を満た
しているといえます。こうして第 3 正規化までを行って得られた表は、次のよう
になります。

〈完全に正規化された表〉

学生表 担任表
学籍番号 氏名 クラス クラス 担任

002 田中一郎 2A 2A 松本 勝

003 高橋和子 3E 3E 二宮純一

004 後藤 正 2B 2B 相葉一成

資格表 学生資格取得表
資格コード 資格名 学籍番号 資格コード 取得日

J01 ITパスポート 002 J01 2009/6

J02 基本情報 002 J02 2009/12

003 J01 2008/6

004 J01 2009/6

関係データベースは、正規化を進めることで、データの重複や矛盾を排除するこ
とができます。ただし、いくつもの表に切り分けることになるので、必要なデータ
を取り出すためには、いちいち表の結合が必要となり、アクセス効率はむしろ低下
します。

295
ココが
スキル
出る!
→データを効率よく管理するために、どのように正規化すべき
か、どの列に主キーを設定すべきかなど、正規化の手順を理解
しておこう。

基本情報技術者試験 平成 26 年秋

関係を第 3 正規形まで正規化して設計する目的はどれか。
ア:値の重複をなくすことによって、格納効率を向上させる。
イ:関係を細かく分解することによって、整合性制約を排除する。
ウ:冗長性を排除することによって、更新時異状を回避する。
エ:属性間の結合度を低下させることによって、更新時のロック待ちを減ら
す。

第 3 正規形まで正規化することで、データの重複や矛盾を排除し、
解説
更新時異状を回避することができます。ただし、表を分けることで、
整合性制約による更新時のロック待ちが増え、格納効率は低下します。
 解答:ウ

296
8-3 データの正規化

第 章 ●
基本情報技術者試験 平成 21 年春

「従業員」表を第 3 正規形にしたものはどれか。ここで、下線部は主キーを 8
表す。
従業員(従業員番号、従業員氏名、
{技能コード、技能名、技能経験年数}

データベース
({ }は繰返しを表す)

ア: 従業員番号 従業員氏名

技能コード 技能名 技能経験年数

イ: 従業員番号 従業員氏名 技能コード 技能経験年数

技能コード 技能名

ウ: 従業員番号 技能コード 技能経験年数

従業員番号 従業員氏名

技能コード 技能名

エ: 従業員番号 技能コード

従業員番号 従業員氏名 技能経験年数

技能コード 技能名

与えられた表を順番に正規化していきます。まず、繰返し項目を分
解説
離します(第 1 正規化)。
  従業員番号 従業員氏名 技能コード 技能名 技能経験年数

次に複数の主キーによって決まる項目と、そのうちの 1 つの主キーによっ
て特定できる項目があれば、それらを分離します(第 2 正規化)

主キー ② 主キー ③

  従業員番号 従業員氏名 技能コード 技能名 技能経験年数

主キー

① 従業員番号 技能コード 技能経験年数

② 従業員番号 従業員氏名

③ 技能コード 技能名

最後に、主キー以外の項目で特定できる項目があればそれを分離します(第
3正規化)が、今回与えられた表にはそのような項目はないので、第2正規
化で分離された3つが、同時に第3正規形の表となっています。 解答:ウ

297
★ ★ ★
8
4 SQLの基本

● SQLとは
SQL は、関係データベースを扱うための言語で、「8-2 関係データベース 」で説
明した「選択」
「射影」
「結合」などの操作によって、表からデータを抽出したりする
際に使います。
SQL は関係データベースのどんなアプリケーションや機種でも共通して使える
言語です。英語をベースにした単純な文法によって記述できます。データベースを
操作するための命令文にはさまざまなものがありますが、よく使う主なものを見て
いきましょう。

セ レ ク ト
● SELECT 文
関係データベースの表から必要なデータを抽出するには、
SELECT 文を使います。

●基本形
SELECT 文では、「どの表から」
「どの列を」
「どのような条件で」抽出するかを
指定します。複数の列名、表名を指定するときには、それぞれ半角コンマ( , )
でつなぎ、複数の条件式は AND または OR でつなぎます。

 SELECT 列名  → どの列を抽出するかを指定
 FROM 表名   → どの表から抽出するかを指定
 WHERE 条件式 → どのような条件で抽出するかを指定

それでは、実際に SELECT 文を使ってデータを抽出してみましょう。

ココが
スキル
出る!
→ SELECT 文を見て、その文がどのような演算や操作を表し
ているのか、分かるようにしておこう。

298
8-4 SQL の基本

●列を抽出する( FROM )

第 章 ●
「学生表」から「氏名」列を抽出してみます。 8

 SELECT 氏名 FROM 学生表

データベース
<SELECT 氏名 FROM 学生表>

学生表 実行結果
学籍番号 氏名 クラス 氏名

001 山田太郎 1C 山田太郎

002 田中一郎 2A 田中一郎

003 高橋和子 3E 高橋和子

004 後藤 正 2B 後藤 正

005 斉藤美香 2A 斉藤美香

●すべての列を抽出する( * )
すべての列を抽出するときは、列名のところに、*(半角アスタリスク )を記
述します。

 SELECT * FROM 学生表

<SELECT * FROM 学生表>

学生表 実行結果
学籍番号 氏名 クラス 学籍番号 氏名 クラス

001 山田太郎 1C 001 山田太郎 1C

002 田中一郎 2A 002 田中一郎 2A

003 高橋和子 3E 003 高橋和子 3E

004 後藤 正 2B 004 後藤 正 2B

005 斉藤美香 2A 005 斉藤美香 2A

●条件で絞り込む( WHERE )
条件を満たすデータだけを抽出するには、WHERE 句をつけます。条件には、
比較演算子や論理演算子を使うことができます。

299
〈比較演算子と論理演算子〉

構文 例 意味
比較演算子

A=B 価格= 100 価格が 100 円

A <> B 価格<> 100 価格が 100 円でない

A>B 価格> 100 価格が 100 円より大きい

A<B 価格< 100 価格が 100 円より小さい

A >= B 価格>= 100 価格が 100 円以上

A <= B 価格<= 100 価格が 100 円以下

BETWEEN A AND B 価格 BETWEEN 100 価 格 が 100 円 と 200 円


AND 200 のあいだ
論理演算子

A AND B 価格>= 100 AND 価 価 格 が 100 円 以 上 200


格<= 200 円以下

A OR B 価格= 100 OR 価 格 が 100 円 ま た は


価格= 200 200 円

NOT A NOT 価格= 100 価格が 100 円ではない

「学生表」から、
「クラス 」が 2A のすべての行を抽出してみます。

 SELECT * FROM 学生表 WHERE クラス = ’


2A ’

<SELECT * FROM 学生表 WHERE クラス= ’


2A ’>

学生表 実行結果
学籍番号 氏名 クラス 学籍番号 氏名 クラス

001 山田太郎 1C 002 田中一郎 2A

002 田中一郎 2A 005 斉藤美香 2A

003 高橋和子 3E

004 後藤 正 2B

005 斉藤美香 2A

300
8-4 SQL の基本

第 章 ●
これも あいまい検索

知っと WHERE 句で検索条件を指定するときに、LIKE 演算子を使う
8

と、文字列に対してあいまい検索を行い、指定した文字列を含

データベース
む行を抽出することができます。条件を指定する際には、ワイ
ルドカードと呼ばれる特殊な記号を指定します。代表的なもの
に、0 文字以上の任意の文字列を表す%があります。

例 
“BOOKS”表 か ら 書 名 に
“UNIX”を 含 む 行 を す べ て 探 す
SQL 文

 SELECT * FROM BOOKS WHERE 書名 LIKE


 '%UNIX%'

●表を結合する
関係データベースでは、表を結合してデータを抽出することもできます。
「学
生表」と「担任表」を結合し、
「氏名」と「担任」を抽出してみます。表を結合する
ときには、FROM の後に結合したい表を、コンマ( , )で区切って並べます。
2 つの表に同じ列名がある場合には、「表名 . 列名」というように、どちらの表
の列を指すのか、分かるように指定します。

 SELECT 氏名 , 担任
   FROM 学生表 , 担任表
   WHERE 学生表 . クラス = 担任表 . クラス

<結合>

学生表 担任表 実行結果


学籍番号 氏名 クラス クラス 担任 氏名 担任

001 山田太郎 1C 1C 櫻井聡史 山田太郎 櫻井聡史

002 田中一郎 2A 2A 松本 勝 田中一郎 松本 勝

003 高橋和子 3E 2B 相葉一成 高橋和子 二宮純一

004 後藤 正 2B 3E 二宮純一 後藤 正 相葉一成

005 斉藤美香 2A 斉藤美香 松本 勝

301
基本情報技術者試験 平成 24 年春

“注文”表と“製品”表に対して、次の SQL 文を実行したときに得られる結果


はどれか。
SELECT 製品名 , 数量 FROM 注文 , 製品
     WHERE 注文 . 製品コード = 製品 . 製品コード

注文 製品
日付 製品コード 数量 製品コード 製品名
2011-04-10 P2 120 P1 PC

2011-04-15 P1 100 P2 テレビ

2011-04-22 P4 50 P3 掃除機

2011-04-30 P8 80 P4 冷蔵庫

2011-05-06 P1 100 P5 エアコン


2011-05-08 P3 70 P6 電話機
P7 時計

ア イ
製品名 数量 製品名 数量
テレビ 120 テレビ 120

PC 100 PC 200

冷蔵庫 50 冷蔵庫 50
掃除機 70 掃除機 70

ウ エ
製品名 数量 製品名 数量
テレビ 120 テレビ 120

PC 100 PC 100

冷蔵庫 50 冷蔵庫 50
PC 100 NULL 80
掃除機 70 PC 100
掃除機 70

注文表と製品表で、製品コードの値が一致する行を結合した結果が
解説
表示されます。GROUP BY 句(「8-5 SQL の応用」参照)を使って
いないので、
「 PC 」は2行表示されます。 解答:ウ

302
8-5 SQL の応用
★ ★ ★
8
5

第 章 ●
SQLの応用 8

データベース
●集計関数で集計する
SQL では、データをそのまま取り出すだけでなく、集計関数を使って、データ
の集計結果を表示することもできます。これにより、行数、合計値、平均値などを
求めることができます。

〈集計関数〉

関数 意味
サ ム
SUM(列名) 指定した列の合計値を求める
エーブイジー
AVG(列名) 指定した列の平均値を求める
マックス
MAX(列名) 指定した列の最大値を求める
ミ ン
MIN(列名) 指定した列の最小値を求める
カ ウ ン ト
COUNT( * ) 行数を求める

●合計値・平均値を求める( SUM 関数・AVG 関数)


「成績表」の「点数」列を合計するには SUM 関数を、平均を計算するには AVG
関数を使います。列名はそれぞれカッコで囲んで指定します。

 SELECT SUM(点数)FROM 成績表


 SELECT AVG(点数)FROM 成績表

●行数をカウントする( COUNT(*) )
「成績表」の行数をカウントするには、COUNT(*) 関数を指定します。

 SELECT COUNT(*) FROM 成績表

303
<SELECT COUNT(*) FROM 成績表>

成績表
学籍番号 科目 点数 COUNT(*)

002 数学 90 6

002 国語 78

002 英語 86

005 数学 100

005 国語 60

005 英語 50

●最小値・最大値を調べる( MIN・MAX )
「成績表」から、科目が「数学」である点数の最小値を求めるには、MIN 関数を
指定します。最大値を求める場合は、MIN 関数の代わりに MAX 関数を指定し
ます。

 SELECT MIN( 点数 ) FROM 成績表 WHERE 科目=’


数学’

<SELECT MIN( 点数 ) FROM 成績表 WHERE 科目 = ’


数学’>

成績表
学籍番号 科目 点数 MIN(点数)

002 数学 90 90

002 国語 78

002 英語 86

005 数学 100

005 国語 60

005 英語 50

グ ル ー プ バ イ
●グループ化する( GROUP BY )
項目ごとに集計したり、平均値を求めたりする場合には、まず列の内容が同じ行
をひとまとまりにします。これをグループ化といい、GROUP BY 句を使います。

●グループごとに平均値を求める
「成績表」で、科目ごとの平均点を求めるには、「科目」列を GROUP BY 句で

304
8-5 SQL の応用

グループ化して、AVG 関数を使います。

第 章 ●
8
 SELECT 科目 , AVG( 点数 ) FROM 成績表 GROUP BY 科目

データベース
<SELECT 科目 , AVG( 点数 ) FROM 成績表 GROUP BY 科目>

成績表
学籍番号 科目 点数 科目 AVG(点数)

002 数学 90 数学 95

002 国語 78 国語 69

002 英語 86 英語 68
005 数学 100

005 国語 60

005 英語 50

ハ ビ ン グ
●グループ化したあとの絞り込み( HAVING )
グループ化した結果に、さらに条件を付けて絞り込むときには HAVING 句を
使います。例えば、グループ化して平均点を求めた後で、平均点が 70 点以上
の科目のみ取り出す場合には、SELECT 文の最後に、HAVING 句を使って「平
均点数が 70 点以上」という条件を指定します。

 SELECT 科目 , AVG( 点数 ) FROM 成績表


   GROUP BY 科目 HAVING AVG( 点数 )>=70

<SELECT 科目~HAVING AVG( 点数 )>=70>

成績表
学籍番号 科目 点数 科目 AVG(点数)

002 数学 90 数学 95

002 国語 78

002 英語 86

005 数学 100

005 国語 60

005 英語 50

305
オ ー ダ バ イ
●並べ替える( ORDER BY )
SELECT 文では、大きい順、小さい順などにデータを並び替えることができます。
これには、ORDER BY 句を使います。小さい数から大きい数の順番に並び替える
ことを「昇順」、逆に大きい数から小さい数の順番に並び替えることを「降順」とい
います。

ア ス ク
●昇順に並び替える( ASC )
点数の低い順、すなわち昇順に並べ替えるときには、ORDER BY の後に列名
と ASC を指定します。ORDER BY 句では、降順か昇順か指定しないと自動
で昇順に並べ替えられますので、ASC は省略してもかまいません。

 SELECT * FROM 成績表 ORDER BY 点数 ASC

デ ス ク
●降順に並び替える( DESC )
逆に、点数の高い順、すなわち降順に並べ替えたいときは、ORDER BY の後
に列名と DESC を指定します。DESC は省略できません。

 SELECT * FROM 成績表 ORDER BY 点数 DESC

●副問合せ
SELECT文は入れ子にすることができます。例えば、
最初に
「在庫表」
に問合せ(副
問合せ)した結果をもとに条件を指定し、
「商品表」に問合せを行います。この結果、
在庫表には存在しない商品番号を抽出できます。

SELECT 商品番号 FROM 商品表


WHERE 商品番号 NOT IN(SELECT 商品番号 FROM 在庫表 )
副問合せ

306
8-5 SQL の応用

商品表 在庫表 結果

第 章 ●
商品番号 商品名 単価 在庫番号 商品番号 個数 商品番号

A001 りんご 100 Z0001 A001 50 A002 8


A002 みかん 50 Z0002 A003 10

A003 もも 300 Z0003 A004 5

データベース
A004 メロン 500
副問合せの
結果
WHERE 商品番号 NOT IN (A001, A003, A004)
※NOT INは、カッコ内のもの以外という意味

ク リ エ ー ト ビ ュ ー
●ビュー表を作る( CREATE VIEW )
データをさまざまな目的に活用するときに、いちいち目的に合った表を新しくつ
くるのは大変です。そこで、実際に存在する表をもとに、データの表示内容だけを
定義した仮想的な表であるビュー表が使われます。ビュー表を作ると、もとの表の
値が更新されたときには、その変更が反映されて常に最新のデータが表示されます。
ビュー表の作成には、CREATE VIEW 文を使います。基本形は次のとおりです。

CREATE VIEW ビュー表名(列名…)  → ビュー表を定義


 AS SELECT 列名  … FROM 表名  → 参照する表と列名を指定
  WHERE 条件式  → どのような条件で抽出するかを指定

例えば、
「成績表」から「科目別平均点」という名前のビュー表を作成したい場合は、
次のように定義します。

 CREATE VIEW 科目別平均点(科目 , 平均点)


  AS SELECT 成績表 . 科目 , 成績表 .AVG(点数)FROM 成績表
   GROUP BY 科目

307
<ビュー表>

成績表 科目別平均点
学籍番号 科目 点数 科目 平均点

002 数学 90 数学 95

002 国語 78 国語 69

002 英語 86 英語 68
005 数学 100

005 国語 60 仮想的な表。
表の値が更新されると
005 英語 50 反映される

ココが
スキル
出る!
→集計関数やグループ化、並べ替えを行う SELECT 文の意味
が分かるようにしておこう。
→副問合せの入った SELECT 文の意味が分かるようにしてお
こう。
→表のデータが更新・削除された場合、ビュー表の表示がどの
ように変化するかを理解しておこう。

基本情報技術者試験 平成 18 年秋

“出庫記録”表に対する SQL 出庫記録


文のうち、最も大きな値が得 商品番号 日付 数量

られるものはどれか。 NP200 2006-10 -10 3

FP233 2006-10 -10 2


NP200 2006-10 -11 1

FP233 2006-10 -11 2

ア:SELECT AVG( 数 量 ) FROM 出庫記録 WHERE 商品番号 =


'NP200'
イ:SELECT COUNT(*) FROM 出庫記録
ウ:SELECT MAX( 数量 ) FROM 出庫記録
エ:SELECT SUM( 数量 ) FROM 出庫記録 WHERE 日付 = '2006-
10-11'

308
8-5 SQL の応用

第 章 ●
アは、
「商品番号が NP200 である商品の数量の平均」なので、
(3 + 8
解説
1)/2 = 2 です。イは、
「出庫記録表のレコード件数」なので 4 です。
ウは、
「出庫記録表の数量の最大値」なので 3 です。エは、
「日付が '2006 -

データベース
10 -11' の商品の数量の合計」なので 1 + 2 = 3 です。よって、最も大き
な値はイです。                      解答:イ

基本情報技術者試験 平成 24 年秋

“商品”表のデータが次の 商品
状態のとき、
〔 ビュー定義〕 商品コード 品名 型式 売値 仕入値

で示すビュー“収益商品” S001 T T2003 150,000 100,000

の行数が減少する更新処理 S003 S S2003 200,000 170,000

はどれか。 S005 R R2003 140,000 80,000

〔ビュー定義〕
CREATE VIEW 収益商品
AS SELECT * FROM 商品
WHERE 売値 - 仕入値 >= 40000
ア:商品コードが S001 の売値を 130,000 に更新する。
イ:商品コードが S003 の仕入値を 150,000 に更新する。
ウ:商品コードが S005 の売値を 130,000 に更新する。
エ:商品コードが S005 の仕入値を 90,000 に更新する。

問題にあるビュー定義から、
「収益商品」表は、
「売値-仕入値」つま
解説
り収益が 40,000 以上の商品を表示したものなので、現れるのは
以下の 2 行です。
ア は、 商 品 コ ー ド が
商品コード 品名 型式 売値 仕入値
S001 の 商 品 の 収 益
S001 T T2003 150,000 100,000

S005 R R2003 140,000 80,000


が 30,000 に な る た
め行数が減少します。
よって正解。イは、商品コードが S003 の商品の収益が 50,000 になり、
行数が 3 行に増えます。ウとエは、それぞれ商品コードが S005 の商品
の収益が 50,000 になりますが行数は変わりません。 解答:ア

309
★ ★ ★
8
6 データベース管理システム

ディービーエムエス
●データベース管理システム( D BMS )とは
データベースのデータ量が多くなって、操作や処理が複雑になったり、ユーザの
人数が増えたりしてくると、個々人が直接データベースを操作していたのでは、デー
タの不整合や不具合が起こってきます。そこで必要になってくるのが、データベー
デ ー タ ベ ー ス
スを管理するソフトウェアであるデータベース管理システム( DBMS:Database
マ ネ ジ メ ン ト シ ス テ ム
Management System )です。DBMSはデータベースを効率よく利用するために、
さまざまな機能をもっています。ユーザは DBMS を介してデータベースを操作し
ます。

<DBMS>
了解!!
○○のデータ
ちょうだい! データベース
管理システム
(DBMS) データベース
(DB)

これも クエリ実行までの処理の流れ

知っと DBMS が受け付けたクエリを実行するまでの流れは次の通り
です。
1.構文解析:受け付けた SQL クエリを解析
2.最適化:クエリを最も効率よく実行できる方法を決定
3.コード生成:最適化した方法でデータベースにアクセスす
  るコードを生成

●トランザクション管理機能
例えば、「銀行振込をしている最中に障害が発生して、残高は減っているのに振
込は失敗したまま」というようなことがあっては困ります。振込が失敗したなら、
残高は振込み前の状態に戻さなければ、つじつまが合いません。このように、途中

310
8-6 データベース管理システム

でエラーが発生すると問題が発生する一連の処理をトランザクションといいます。

第 章 ●
DBMS は、データベースに対する操作や処理を、1 つ 1 つの操作単位ではなく、 8
トランザクション単位で管理しています。
トランザクション処理では、データの一貫性を保証するために 4 つの要素、

データベース
ア ト ミ シ テ ィ コ ン シ ス テ ン シ ー アイソレーション デュラビリティ
Atomicity(原子性)、Consistency(一貫性)、Isolation(独立性)
、Durability(永
続性)が必要です。これを ACID 特性といいます。

〈トランザクションの ACID 特性〉

特性 説明

Atomicity(原子性) トランザクションが、データベースに対する更新
処理を完全に行うか、まったく処理しなかったか
のように取り消すか、のいずれかを保証する

Consistency(一貫性) トランザクション処理の前後で、データの矛盾が
なく、常にデータベースの整合性が保たれている

Isolation(独立性) 複数のトランザクションを同時に実行しても、順
番に実行しても結果が同じになる

Durability(永続性) 障害が発生しても、正常終了したトランザクショ
ンの結果は失われず復旧できる

●排他制御機能
DBMS は、データベースを複数のユーザで共有することを前提に作られていま
す。もし複数の人が同時に同じデータを更新しようとしたときには、それを防ぎ、
データの整合性を保持するために排他制御という機能を備えています。
排他制御では、あるデータに 2 番目以降にアクセスした人は、最初にアクセスし
た人のトランザクション処理が終了するまで操作がロック(制限)されます。ロッ
クには占有ロックと共有ロックがあります。

●占有ロック(専有ロック )
データベースを更新する際にかけるロックで、その間、他のユーザは読取りも
更新もできません。最初にロックをかけた人だけがそのデータの使用を独り占
めする、まさにデータを「占有」した状態です。

●共有ロック
データベースを参照する際にかけるロックで、2 番目以降のユーザも共有ロッ

311
クをかければ、データを読み取ることが可能です。共有ロックがかかっている
間は、他の人が占有ロックをかけたり、データを更新したりすることはできま
せん。

●デッドロック
ロックは便利な方法ですが、複数のユーザが、互いに相手がロックをかけてい
るデータを使いたい場合、永遠に待ち状態に陥ってしまい処理が先に進まなく
なってしまうことがあります。これをデッドロックといいます。DBMSによっ
ては、デッドロックを検知して、自動で解除する仕組みを備えているものもあ
ります。

〈デッドロック 〉

学生 所属
データ データ
Aさん Bさん
占有ロック 占有ロック

読込み
待ち状態

読込み

待ち状態
デッドロック

●障害回復(リカバリ )機能
DBMS は、データベースで何か問題が発生してトランザクションが正常に行わ
れなかった場合は、更新履歴を使ってデータを正常な状態に戻します。この作業を
リカバリといい、データの更新前後の値を書き出してデータベースの更新記録を
取ったログファイル( ジャーナルファイル )を使って行います。データベースの障
害回復処理には、ロールフォワードとロールバックがあります。

●ロールフォワード
データベースの故障など、物理的な障害が発生したときに行うリカバリ処理が、
ロールフォワードです。バックアップ時点の状態に復元した後、ログファイル
の更新後情報を使用して、障害が発生する直前の状態までデータベースを復旧
させます。

312
8-6 データベース管理システム

第 章 ●
<ロールフォワード>
8
DB バックアップ 処理A 障害発生

データベース
バックアップファイル ログファイル ロール
データを フォワードで
復元 処理Aを反映

障害直前の
DB 処理A 状態に復旧

●ロールバック
トランザクション処理が途中で異常終了して、データベースに不整合が発生す
るなど、論理的な障害が発生したときに行う処理がロールバックです。
ログファ
イルの更新前情報を使用して、トランザクションの開始直前の状態までデータ
ベースを復旧させます。

<ロールバック> 更新前
DB 処理A 障害発生

ログファイル ロールバックで
処理Aを
取消し

処理A開始前の
   DB 状態に復旧

         

●再編成機能
データベースに対して更新が繰り返されると、データの物理的な格納位置が不規
則になるなどの理由で記憶効率が悪くなります。それを修復し、アクセス効率を向
上させるための機能を再編成機能といいます。

313
●インデックス機能
DBMS は、インデックスを使ってデータの検索を高速化する機能をもっていま
す。インデックスとは索引のことで、どのデータがどこにあるかを示した一覧表で
す。私たちは参考書のどこに調べたい内容が載っているかを探すときに、前から 1
ページずつめくって探すのではなく、索引から対象ページを絞り込んで探します。
DBMS でもこれと同じように、インデックスを使うことで、大量のデータから目
的のデータを素早く検索できます。ただし、データを頻繁に追加したり更新したり
していると、インデックスもそのつど更新する必要があるため、逆に処理時間が遅
くなってしまいます。

これも データディクショナリ

知っと データベースに保存しているデータ、利用者、プログラムなど
の関係性を管理するために DBMS が保持するファイルを、デー
タディクショナリといいます。

これも オプティマイザ

知っと SQL 文を実行するときに、効率がよいと考えられるアクセス
経路を選択する RDBMS の機能をオプティマイザといいます。

ココが
出る! 用語
[排他制御]
:最初にアクセスした人の処理が終了するまで、2
番目以降にアクセスした人の操作を制限する機能
[ デッドロック ]:互いに相手のロックしているデータを要求
し、永遠に待っている状態
[ログファイル ]
:リカバリに使用するデータベースの更新履歴
[ ロールバック ]:論理障害時にログファイルを使って処理を
キャンセル
[ ロールフォワード ]
:物理障害時にバックアップとログファ
イルを使って処理を復帰

314
8-6 データベース管理システム

第 章 ●
ココが
用語
出る! 8
[再編成]:データベースを修復しアクセス効率を向上させる機

データベース
[インデックス ]:索引によって検索を高速化する機能
[ データディクショナリ ]:データ、利用者、プログラムなど
の関係性を管理
[ オプティマイザ ]:SQL 実行時、効率がよいアクセス経路を
選択する機能
スキル
→ DBMS が受け付けたクエリを実行するまでの処理の流れを
理解しておこう。
→排他制御において、占有ロック・共有ロック時に、データが
どうロックされるか理解しておこう。

基本情報技術者試験 平成 27 年春

図は、DBMS が受け付けたクエリを実行するまでの処理の流れを表してい
る。①~③に入る処理の組合せとして、適切なものはどれか。

クエリ ① ② ③ 実行

① ② ③
ア コード生成 構文解析 最適化
イ コード生成 最適化 構文解析
ウ 構文解析 コード生成 最適化
エ 構文解析 最適化 コード生成

DBMS はクエリを受け付けると、クエリ→構文解析→最適化→コー
解説
ド生成→実行の順で処理されます。 解答:エ

315
基本情報技術者試験 平成 22 年春

DBMS において、同じデータを複数のプログラムが同時に更新しようとし
たときに、データの矛盾が起きないようにするための仕組みはどれか。
ア:アクセス権限  
イ:機密保護  
ウ:排他制御  
エ:リカバリ制御

キーワードは「同時に更新」
「 データの矛盾が起きないように」です。
解説
この仕組みは「排他制御」です。            解答:ウ

基本情報技術者試験 平成 26 年秋

トランザクションの同時実行制御に用いられるロックの動作に関する記述の
うち、適切なものはどれか。
ア: 共有ロック獲得済の資源に対して、別のトランザクションからの新たな
共有ロックの獲得を認める。      
イ:共有ロック獲得済の資源に対して、別のトランザクションからの新たな
専有ロックの獲得を認める。
ウ:専有ロック獲得済の資源に対して、別のトランザクションからの新たな
共有ロックの獲得を認める。   
エ:専有ロック獲得済の資源に対して、別のトランザクションからの新たな
専有ロックの獲得を認める。

共有ロックはデータベースを参照する際にかけるロックで、別のト
解説
ランザクションからも新たに共有ロックをかけることが可能です。
解答:ア

316
8-6 データベース管理システム

第 章 ●
基本情報技術者試験 平成 23 年特別

データベースの更新前や更新後の値を書き出して、データベースの更新記録 8
として保存するファイルはどれか。
ア: ダンプファイル      

データベース
イ:チェックポイントファイル
ウ:バックアップファイル   
エ:ログファイル

データベースの更新履歴を保存したファイルは、ログファイルで
解説
す。 解答:エ

317
★ ★
8
7 データベースの応用技術

●分散データベース
データベースでは顧客データや取引データなど、大事なデータを大量に管理して
います。データを 1 つの場所だけで管理していると、もし火災や地震などの災害が
発生した場合には、すべてのデータが失われて取り返しがつかなくなる可能性があ
ります。そこで現在は、データを遠隔地にある複数のデータベースに分散させて管
理する分散データベースが利用されています。

●透過性
分散データベースでは、データ自体はあちこちの場所に分散していますが、
あたかも 1 つのデータベースとして取り扱えるようになっています。そのた
め、ユーザやアプリケーションプログラムは、データベースが分散されてい
ることを意識することなく利用できます。これを分散データベースの透過性
といいます。分散データベースの透過性を実現するには、複数のデータベー
スのデータに矛盾が生じないように、トランザクションが終わるたびに同期を
とる必要があります。

〈分散データベースの透過性〉

1つの データベース @東京


データベース
として扱う
データベース @大阪

データベース @北海道

●データウェアハウス
データウェアハウスは、企業のさまざまな活動を通して得られた大量のデータを、
整理・統合して蓄積した大規模なデータベースです。情報分析や意思決定を行うた
めに利用します。

318
8-7 データベースの応用技術

●データマート

第 章 ●
データマートは、データウェアハウスに保存されたデータから、ユーザの使用目 8
的に応じて取り出した目的別のデータベースです。経営者・経理部門・マーケティ
ング部門などデータ分析を行うユーザごとに構築されます。取り扱うデータのサイ

データベース
ズが小さくなり、専用の集計ツールなどを利用できるため、処理効率が向上します。

●データマイニング
データマイニングは、蓄積された大量のデータから統計的な手法を使って意味の
ある情報や規則性を見つけ出す技術です。マイニングは発掘するという意味です。
有名な例としては、米国大手スーパーマーケットのウォルマートによる「 オムツと
ビールの法則」があります。蓄積された POS データから、オムツとビールが同時
に購入されることが多いということが判明しました。このように、通常ではなかな
か発想できない法則や傾向を、統計的解析などで発見することができます。

ココが
出る! 用語
[分散データベース ]
:データを複数のデータベースに分散さ
せて管理する
[分散データベースの透過性]:複数のデータベースを、論理的
に 1 つのデータベースとして使用する技術
[ データマイニング ]
:大量のデータから統計的な手法を使っ
て意味のある情報や規則性を見つけ出す技術

319
基本情報技術者試験 平成 21 年秋

分散データベースの透過性の説明として、適切なものはどれか。
ア:クライアントのアプリケーションプログラムは、複数のサーバ上のデー
タベースをアクセスする。アプリケーションプログラムは、データベー
スがあたかも一つのサーバ上で稼働しているかのようにアクセスできる。
イ:クライアントのアプリケーションプログラムは、複数のサーバ上のデー
タベースをアクセスする。アプリケーションプログラムはどのサーバ上
のデータベースをアクセスするのかを知っている必要がある。
ウ:複数のクライアントのアプリケーションプログラムが、一つのサーバ上
のデータベースを共有してアクセスする。
エ:複数のクライアントのアプリケーションプログラムは、一つのサーバ上
のデータベースを、サーバ上のアプリケーションプログラムを介してア
クセスする。

分散データベースは、ネットワーク上の複数のデータベースを、論
解説
理的に 1 つのデータベースとして使用する技術です。そのため、ア
プリケーションプログラムからは、データの存在場所を気にかけることな
くアクセスできます。                   解答:ア

基本情報技術者試験 平成 19 年秋

データマイニングの説明として、適切なものはどれか。
ア: 大量のデータを高速に検索するための並行的アクセス手法
イ: 大量のデータを統計的、数学的手法で分析し、法則や因果関係を見つけ
出す技術
ウ: 販売実績や製造実績などの時系列データを大量に蓄積するデータベース
の保存手法
エ: ユーザの利用目的に合わせて、部門別のデータベースを作成する技術

データマイニングは、蓄積された大量のデータから統計的な手法を
解説
使って意味のある情報や規則性を見つけ出す技術です。 解答:イ

320
セキュリティ
★ ★ ★
9
1 情報セキュリティ

●情報セキュリティとは
アドレス帳に登録された連絡先のデータや、Web サイトにログインしたときの
パスワード、ネットショッピングをするときに入力したクレジットカードのデータ
など、これらのデータはすべて、大事な情報資産であり、なくしてしまったり、盗
まれて悪用されたりすると大変です。そのため、さまざまな対策をして守らなけれ
ばなりません。これを情報セキュリティといいます。情報セキュリティとは、情報
かようせい
資産の機密性、完全性、可用性を維持することです。

●機密性
ろう
情報を不正アクセスから守り、第三者への情報漏えいをなくすことです。デー
タの暗号化などの技術により向上させることができます。

●完全性
情報が作られたときから、書き換えられたり欠けていない、完全で正しいこと
です。ディジタル署名などの技術により向上させることができます。

●可用性
利用者が必要なときに情報資産を使えることです。定期バックアップなどで向
上させることができます。

これも 電子透かし

知っと 画像、音声、動画等のディジタルコンテンツに情報を埋め込む
技術です。作者名、課金情報、コピー可能回数といった情報を
埋め込むことにより、不正コピーやデータの改ざんを判別する
ことができます。

322
9-1 情報セキュリティ

平成 26 年春試験から、午前試験では情報セキュリティ分野の出
題比率が高くなりました。また午後試験では同分野が選択問題か

第 章 ●
ら必須問題に変更になっています。
9

きょうい

セキュリティ
●情報資産における脅威
情報セキュリティ対策を行うには、まず情報資産が、どのような脅威にさらされ
ているのかをきちんと把握する必要があります。情報がさらされている脅威には、
じんてき
技術的脅威、人的脅威、物理的脅威の 3 種類があります。

●技術的脅威
コンピュータ技術を使った脅威を技術的脅威といいます。技術的脅威は、不正
アクセスやコンピュータウイルスをはじめ、さまざまな手口や攻撃があります。

・フィッシング
にせ
銀行などを装った偽の Web サイトを作り、URL を載せた電子メールを送り、
ユーザにアクセスさせて暗証番号やパスワードをだまし取ることをフィッシ
ングといいます。

・DNS キャッシュポイズニング
PC が参照する DNS サーバに誤ったドメイン管理情報を覚え込ませて、偽
のサーバに誘導する攻撃を DNS キャッシュポイズニングといいます。

・SQL インジェクション
Web アプリケーション上で悪意のある問合せや操作を行う命令文を入力
して,データベースのデータを改ざんしたり不正に取得したりする攻撃を
SQL インジェクションといいます。この攻撃を防ぐためには、入力中の文
字が、データベースヘの問合せや操作において特別な意味をもつ文字として
解釈されないように無効化します。

323
ド ス
・DoS 攻撃
サーバに大量のデータを送信し、サーバの機能を停止させる攻撃を DoS 攻
撃といいます。

・ディレクトリトラバーサル攻撃
管理者が意図していないパスで Web サーバ内のファイルを指定し、許可さ
れていないファイルを不正に閲覧する攻撃をディレクトリトラバーサル攻撃
といいます。

・Web ビーコン
Web ページなどに小さい画像を埋め込み、ユーザのアクセス動向などの情
報を収集する仕組みのことを、Web ビーコンといいます。

・キーロガーの悪用
キーロガーは、もともと利用者をサポートするために、キーボード入力を監
視して記録するソフトウェアです。こっそりパソコンに仕掛けて、ネットバ
ンキング利用時に、利用者が入力したパスワードを収集するなど悪用の手口
として使われます。

ココが
出る! 用語
[電子透かし]:情報を埋め込むことにより、不正コピーやデー
タの改ざんを判別する
[フィッシング ]:偽のサイトにアクセスさせて情報を盗む
[ DNS キャッシュポイズニング ]
:DNS サーバに誤ったドメ
イン管理情報を覚え込ませて偽サーバに誘導
[ SQL インジェクション ]
:Web アプリケーション上で悪意
のある SQL 文を入力してデータベースのデータを改ざん、不
正に取得
[ DoS 攻撃]:大量のデータを送りつけてサーバの機能を停止
させる
[ディレクトリトラバーサル攻撃]:管理者が許可していないパ
スで、Web サーバ内のファイルに不正アクセス
[ Webビーコン]
:小さい画像を埋め込み、
アクセス動向を収集する

324
9-1 情報セキュリティ

ココが
出る! 用語
[キーロガー]:パソコンに仕掛けて入力パスワードを収集し悪

第 章 ●
●人的脅威 9
「人」が原因である脅威を人的脅威といいます。コンピュータの置き忘れや操
作ミスなど、情報のもち主のうっかりミスによるものや、内部関係者が意図的

セキュリティ
に情報を漏えいしたりすることがこれに当たります。

・ソーシャルエンジニアリング
システム管理者などを装って、利用者に問い合わせてパスワードを聞き出し
たり、緊急事態を装って組織内部の機密情報を聞き出したりするなど、人間の
心理の隙をついて情報を盗む行為をソーシャルエンジニアリングといいます。

・なりすまし
盗んだ ID やパスワードなどを使い、ネットワーク上でその人のふりをする
ことをなりすましといいます。なりすましによって、情報を盗んだり、他人
に迷惑な行動をしたりします。

・サラミ法
不正行為が表面化しない程度に、多数の資産から少しずつ詐取する方法をサ
ラミ法といいます。

●物理的脅威
大雨や地震、落雷などの災害、またはコンピュータの故障など、コンピュータ
が物理的に損害を受けて情報を失う脅威を物理的脅威といいます。空き巣によ
るコンピュータの盗難や破壊などもこれに当たります。

ココが
出る! 用語
[ ソーシャルエンジニアリング ]
:人間の心理の隙をついて機
密情報を聞き出す
[サラミ法]
:表面化しない程度に、多数の資産から少しずつ詐取

325
●リスクアセスメント
これまで説明してきたようなさまざまな脅威が発生する可能性のことを、リスク
といいます。情報資産に対するリスクを洗い出し、リスクによって発生する可能性
のある損害を明らかにした上でリスク対応を策定する一連のプロセスをリスクアセ
スメントといいます。分析によって得られた損失額と発生確率から、リスク発生時
の被害の大きさを評価し、優先度をつけて対応を検討します。
リスク対策には、次のような対応方法があります。

〈リスク対策の種類〉

種別 内容 例

リスク回避 リスクの原因を排除すること。損失額が大きく発生 個 人 情 報 の 破 棄 、
率の高いリスクに対して行う対策 Web公開の停止など

リスク移転 リスクを他者に肩代わりしてもらうこと。損失額が 保険への加入など


(リスク共有) 大きく発生率の低いリスクに対して行う対策

リスク軽減 リスクによる損失を許容範囲内に軽減させること。損 情報の暗号化など


失額が小さく発生率は高いリスクに対して行う対策

リスク保有 対策を講じないでリスクをそのままにしておくこと。
損失額も発生率も小さいリスクに対して行う対策

ココが
用語
出る!
[ リスクアセスメント ]
:予測リスクを洗い出し評価・分析。
損失額と発生確率に応じて、対応を優先順位付け
スキル
→リスクの種別とそれぞれの事例について、答えられるように
しておこう。

●情報セキュリティマネジメントシステム
情報セキュリティを維持するためには、企業などが情報を適切に管理し、機密
を守るための仕組みを確立し、継続的な改善をしていくことが必要です。この
アイエスエムエス インフォメーション
仕組みを、情報セキュリティマネジメントシステムまたは I SMS( Information
セキュリティ マネジメント システム
Security Management System )といいます。

326
9-1 情報セキュリティ

ISMS 確立の手順は、おおよそ次のような流れで行います。
①リスクの分析と評価
②リスク対応のための管理目的および管理策の選択
③適用宣言書の作成

第 章 ●
9
ココが
スキル
出る!
→ ISMS 確立の手順について、分析→評価→対応策の決定→宣

セキュリティ
言というおおまかな流れを覚えておこう。

●情報漏えいを防ぐ方法
情報漏えいを防ぐためには、機密情報を適切に取り扱う必要があります。具体的
な対策として、次のような方法があります。

●機密ファイルをノート型 PC に入れて持ち歩く場合
機密ファイルをノート型 PC に入れて持ち歩く場合、盗難や紛失のリスクがあ
るため、ハードディスクの内容を暗号化することで情報漏えいを防ぎます。

●機密ファイルを廃棄する場合
機密ファイルが保存されたパソコンを産業廃棄物処理業者に引き渡して廃棄す
る場合、磁気ディスクの全領域を複数回上書きするなど、データを完全に消去
する必要があります。

●機密ファイルをメールで送信する場合
機密ファイルにパスワードを設定してメール添付する場合、パスワードはその
メールには記載せず、別の手段で相手に伝えるようにします。宛先を間違えて
機密ファイルが誤送信された場合にも、情報漏えいを防ぐことができます。

ココが
スキル
出る!
→情報漏えいを防ぐための具体的な方法を覚えておこう。

327
基本情報技術者試験 平成 27 年春

SQL インジェクション攻撃の説明はどれか。
ア:Web アプリケーションに問題があるとき、悪意のある問合せや操作を
行う命令文を入力して、データベースのデータを不正に取得したり改ざ
んしたりする攻撃
イ:悪意のあるスクリプトを埋め込んだ Web ページを訪問者に閲覧させて、
別の Web サイトで、その訪問者が意図しない操作を行わせる攻撃
ぜい
ウ:市販されている DBMS の脆弱性を利用することによって、宿主となる
データベースサーバを探して自己伝染を繰り返し、インターネットのト
ラフィックを急増させる攻撃
エ:訪問者の入力データをそのまま画面に表示する Web サイトに対して、
悪意のあるスクリプトを埋め込んだ入力データを送ることによって、訪
問者のブラウザで実行させる攻撃

SQL インジェクションは、Web アプリケーション上で悪意のある


解説
SQL 文を入力してデータベースのデータを改ざん、不正に取得す
る攻撃です。 解答:ア

基本情報技術者試験 平成 26 年春

情報セキュリティにおける“完全性”を脅かす攻撃はどれか。
ア:Web ページの改ざん
イ:システム内に保管されているデータの不正コピー
ウ:システムを過負荷状態にする DoS 攻撃
エ:通信内容の盗聴

完全性とは、情報が書き換えられたり欠けていない状態です。Web
解説
ページの改ざんは、完全性を脅かす攻撃です。 解答:ア

328
9-1 情報セキュリティ

基本情報技術者試験 平成 25 年秋

リスク共有(リスク移転)に該当するものはどれか。
ア:損失の発生率を低下させること
イ:保険への加入などで、他者との間でリスクを分散すること

第 章 ●
ウ:リスクの原因を除去すること
9
エ:リスクを扱いやすい単位に分解するか集約すること

リスク共有は、リスクを他者と共有し分散することです。    

セキュリティ
解説
             解答:イ

基本情報技術者試験 平成 26 年秋

情報漏えい対策に該当するものはどれか。
ア:送信するデータにチェックサムを付加する。
イ:データが保存されるハードディスクをミラーリングする。
ウ:データのバックアップ媒体のコピーを遠隔地に保管する。
エ:ノート型 PC のハードディスクの内容を暗号化する。

ノート型 PC は盗難や紛失のリスクが高いため、ハードディスクの
解説
内容を暗号化することで情報漏えいを防ぎます。 解答:エ

329
★ ★ ★
9
2 コンピュータウイルス

●コンピュータウイルスとは
コンピュータウイルスは、経済産業省が定めたコンピュータウイルス対策基準に
おいて、「第三者のプログラムやデータベースに対して意図的に何らかの被害を及
ぼすように作られたプログラムであり、次の機能を 1 つ以上有するもの」と定義さ
れています。

〈コンピュータウイルスの 3 機能〉
①自分自身をほかのプログラムにコピーし伝染させる「自己伝染機能」
②特定の日時や処理回数に至るまで症状を出さない「潜伏機能」
③ファイルの破壊や、設計者の意図しない動作をする「発病機能」

これも マルウェア

知っと 近年では、この定義に当てはまらないさまざまな種類のウイル
スが増えてきたため、悪意のあるソフトウェア全般をマルウェ
アと呼びます。

●コンピュータウイルスの種類
コンピュータウイルスには、次のようなものがあります。

〈コンピュータウイルスの種類〉

種類 特徴

マクロ型ウイルス ワープロソフトや表計算ソフトなどのマクロ機能を使って
感染するウイルス。ファイルを開くだけで感染

ファイル感染型ウイ 拡張子 com、exe、sys などの実行型ファイルに感染する


ルス ウイルス。感染プログラムを実行することで感染

システム領域感染型 コンピュータ起動時、最初に読み込まれるシステム領域
ウイルス (ブートセクタなど)に感染するウイルス。コンピュータを
起動することで感染

330
9-2 コンピュータウイルス

種類 特徴

トロイの木馬 何も問題のない普通のソフトを装ってコンピュータに侵入
し、データの破壊や改ざん、ファイルの外部流出などを行
うウイルス。自己増殖することはない

第 章 ●
ワーム型ウイルス 単独で動作し、ネットワーク経由で他のコンピュータに入
り込んで自己増殖していくウイルス 9

ココが

セキュリティ
出る! 用語
[ トロイの木馬]
:普通のソフトを装ってコンピュータに侵入。
データの破壊や改ざんなどを行う

●コンピュータウイルスへの対策
コンピュータウイルスに対する予防・検知・感染後の対応についても、
「コンピュー
タウイルス対策基準」にまとめられています。

●ウイルスの予防
ウイルスの感染源は、主に電子メールと Web サイトです。電子メールによる
感染を防ぐには、知らない人から送られてきた添付ファイルをむやみに開かな
いことが重要です。Web サイトの閲覧による感染を防ぐには、ブラウザに怪
しい Web サイトは表示しない設定をしておくなどの対策方法があります。ま
ぜい
た、PC の脆弱性を突いて感染しないように、OS やアプリケーションの修正
パッチを適切に適用します。

●ウイルスの検知
コンピュータには、必ずウイルス対策ソフトをインストールしておきます。ウ
イルス対策ソフトは、既知ウイルスの情報( シグネチャコード )をウイルス定
くじょ
義ファイルとしてもっていて、これと比較してウイルスの検知・駆除を行いま
す。これを、パターンマッチング方式といいます。ウイルスは毎日新しい種類
のものが作られているので、最新のウイルスにも対応できるよう、ウイルス定
義ファイルは定期的に更新する必要があります。

331
●感染後の対応
ウイルスに感染してしまったら、コンピュータをすぐにネットワークから切り
離すことが重要です。これは、ネットワークを通じてさらに感染を広げてしま
うなど、被害の拡大を防ぐためです。

これも 逆アセンブル

知っと
新種ウイルスの動作を解明するのに有効な手法として、逆アセ
ンブルがあります。バイナリコードからソースコードに変換す
ることで、新種ウイルスの動作を解明します。

ココが
用語
出る!
[パターンマッチング方式]
:既知ウイルス情報(シグネチャコー
ド )を使用して、対象ファイルと比較しウイルスを検出
スキル
→ウイルス( マルウェア )対策について、適切な方法を覚えて
おこう。

基本情報技術者試験 平成 25 年秋

クライアント PC で行うマルウェア対策のうち、適切なものはどれか。
ア:PC におけるウイルスの定期的な手動検査では、ウイルス対策ソフトの
定義ファイルを最新化した日時以降に作成したファイルだけを対象にし
てスキャンする。
ぜい
イ:ウイルスが PC の脆弱性を突いて感染しないように、OS 及びアプリ
ケーションの修正パッチを適切に適用する。
ウ:電子メールに添付されたウイルスに感染しないように、使用しない
TCP ポート宛ての通信を禁止する。
エ:ワームが侵入しないように、クライアント PC に動的グローバル IP アド
レスを付与する。

332
9-2 コンピュータウイルス

定義ファイルの更新後は、すべてのファイルをスキャンする必要が
解説
あるため、アは誤り。使用しない TCP ポート宛ての通信を禁止し
ても、メールの内容をチェックできずウイルス感染を防止できないので、

第 章 ●
ウも誤り。クライアント PC に動的グローバル IP アドレスを付与しても、
ワームの侵入は防止できないためエも誤り。 解答:イ 9

セキュリティ
基本情報技術者試験 平成 20 年秋

データの破壊、改ざんなどの不正な機能をプログラムの一部に組み込んだも
のを送ってインストールさせ、実行させるものはどれか。
ア:DoS 攻撃    
イ:辞書攻撃
ウ:トロイの木馬   
エ:バッファオーバフロー攻撃

キーワードは「 データの破壊、改ざんなどの不正な機能」
「 プログラ
解説
ムの一部に組み込んだ」です。 解答:ウ

基本情報技術者試験 平成 26 年秋

ウイルス対策ソフトのパターンマッチング方式を説明したものはどれか。
ア:感染前のファイルと感染後のファイルを比較し、ファイルに変更が加
わったかどうかを調べてウイルスを検出する。
イ:既知ウイルスのシグネチャと比較して、ウイルスを検出する。
ウ:システム内でのウイルスに起因する異常現象を監視することによって、
ウイルスを検出する。
エ:ファイルのチェックサムと照合して、ウイルスを検出する。

パターンマッチング方式は、既知ウイルス情報を使用して、対象の
解説
ファイルと比較してウイルスを検出します。シグネチャは、コンピ
ュータウイルスの情報やパターンです。 解答:イ

333
★ ★ ★
9
3 暗号化と認証

●データの暗号化
暗号化とは、その名のとおり、データを第三者には解読できない「暗号文」に変
換することです。暗号化することによって、たとえ通信中にデータが他の人に盗ま
れてしまっても、データの内容を知られることはありません。暗号化したデータを
元に戻すことを復号といいます。
暗号化と復号には、それぞれ鍵を使ってデータを変換します。鍵とは、データを
変換するための特別なデータです。この鍵の違いによって、さまざまな暗号方式が
あります。

●共通鍵暗号方式
暗号化と復号に同じ鍵を使う暗号方式を共通鍵暗号方式といいます。データの
送信者と受信者が同じ共通鍵をもっている必要があります。鍵はあらかじめ送
信者から受信者へ配布しておきますが、鍵を盗まれてしまうと誰でも復号でき
てしまうので、鍵の受け渡しには注意が必要です。
共通鍵暗号方式は、暗号化と復号の処理が速いのが特徴です。しかし、データ
を送る相手の数だけ鍵を作成する必要があるので、不特定多数の人にデータを
送るときには不向きです。
ディーイーエス エーイーエス
代表的な共通鍵暗号方式には、D ES や AES などがあります。

〈共通鍵暗号方式〉

同じ共通鍵

送信者 受信者

暗号化 復号

送信
暗号文 暗号文

334
9-3 暗号化と認証

●公開鍵暗号方式
暗号化するときと復号するときに、それぞれ対になる 2 つの鍵を使う暗号方式
を公開鍵暗号方式といいます。受信者は、あらかじめ暗号化に使う公開鍵をイ
ンターネットなどで公開しておき、送信者はその鍵を使ってデータを暗号化

第 章 ●
します。復号は、受信者がもっている秘密鍵で行います。公開鍵は公開して
もかまいませんが、秘密鍵は受信者以外には知られないようにしなくてはな 9
りません。
鍵を公開しているので、不特定多数の相手からデータを受け取るのに向いてい

セキュリティ
ますが、暗号化と復号の処理に時間がかかるという短所があります。
代表的な公開鍵暗号方式には、巨大な数の素因数分解の困難さを利用した
アールエスエー だえん
R S A や楕円曲線暗号などがあります。

〈公開鍵暗号方式〉

受信者の 受信者の
公開鍵 秘密鍵

送信者 受信者

暗号化 復号

送信
暗号文 暗号文

試験問題では、暗号化するときに使う鍵を暗号化鍵、復号に使う
鍵を復号鍵と表記しています。公開鍵暗号方式では、暗号化鍵=
受信者の公開鍵、復号鍵=受信者の秘密鍵となります。

ココが
出る! 用語
[共通鍵暗号方式]:同じ鍵(共通鍵)で暗号化・復号を行う
[公開鍵暗号方式]:受信者の公開鍵で暗号化し、秘密鍵で復号
する
[ RSA ]
:巨大な数の素因数分解の困難さを利用した公開鍵暗
号方式

335
●ディジタル署名
公開鍵暗号方式を応用した技術を用いて、ディジタルデータに、自分が作成した
データであることを証明するために署名を付けることができます。これをディジタ
ル署名といいます。ディジタル署名は、ハッシュ関数(「4-6 探索アルゴリズム 」
参照)を使って、メッセージからメッセージダイジェストと呼ばれる要約データを
作成、さらに自分の秘密鍵を使って暗号化したものです。
受信者は、メッセージとディジタル署名を受け取ります。メッセージはハッシュ
関数を使ってメッセージダイジェストを作成、ディジタル署名は送信者の公開鍵で
復号することでメッセージダイジェストを作成します。
メッセージダイジェストを比較し一致すれば、メッセージの内容が送信中に改ざ
んされておらず、送信者本人が作成したものであることが証明できます。

〈ディジタル署名〉

送信
送信者 メッセージ メッセージ 受信者
ハッシュ ハッシュ
関数 関数
メッセージ
ダイジェスト
メッセージ
ダイジェスト 比較
送信者の 送信者の
秘密鍵 公開鍵 メッセージ
ダイジェスト

暗号化 復号

送信
ディジタル ディジタル
署名 署名

これも ディジタル証明書をスマートフォンに導入

知っと 社員が利用するスマートフォンにディジタル証明書を導入する
ことで、社内システムヘアクセスするとき、そのスマートフォ
ンがアクセスを許可されたデバイスであることを確認できま
す。

336
9-3 暗号化と認証
シーエー
●認証局( CA )
公開鍵が本当に本人のものであるか、その正当性を証明するための第三者機関を
サーティフィケーション オ ー ソ リ テ ィ
認証局( CA:Certification Authority )といいます。認証局は、通信相手からの
申請に基づいてディジタル証明書を発行し、公開鍵が本人のものであることを証明

第 章 ●
します。

〈認証局
( CA )

9

CA
どっちが こっちが

セキュリティ
本人の公開鍵? 本人の公開鍵だ!!


ディジタル証明書

エスエスエル
●SS L
セ キ ュ ア ソ ケ ッ ト レ イ ヤ
SSL( Secure Socket Layer )は、インターネット上でセキュリティを確保す
るために、Web サーバとクライアント間の通信を暗号化するプロトコルです。公
開鍵暗号方式や共通鍵暗号方式などのセキュリティ技術を使って、データの盗聴や
改ざんを防ぎます。Web ブラウザに標準搭載され、インターネット上で安全にデー
タをやりとりするための業界標準となっています。

アイピーセック エ ス マ イ ム
これも IPsec と S/MIME

知っと IPsec は、インターネットで暗号通信を行うための規格です。
IP パケットを暗号化して送受信することでセキュリティを高
めることができます。
セ キ ュ ア マ ル チ パ ー パ ス イ ン タ ー ネ ッ ト メ ー ル
S / M I M E( S e c u r e / M u l t i p u r p o s e I n t e r n e t M a i l
エクステンションズ
Extensions )は、電子メールの公開鍵暗号方式による暗号化
とディジタル署名について定めた標準規格です。

337
ココが
用語
出る!
[ディジタル署名]:データ送信者の証明と改ざんされていない
かどうかを確認する技術
[ CA ]:公開鍵の正当性を証明する第三者機関
[ SSL ]:インターネット上でデータを安全にやりとりする業
界標準プロトコル
スキル
→公開鍵暗号方式やディジタル署名においてデータを暗号化、
復号する際に、誰のどの鍵を使うかを理解しておこう。

基本情報技術者試験 平成 23 年特別

非常に大きな数の素因数分解が困難なことを利用した公開鍵暗号方式は
どれか。
ア:AES    イ:DSA    ウ:IDEA    エ:RSA

RSA 暗号を解読するには、非常に大きな数を素因数分解する必要
解説
があります。 解答:エ

基本情報技術者試験 平成 24 年春

文書の内容を秘匿して送受信する場合の公開鍵暗号方式における鍵と暗号化
アルゴリズムの取扱いのうち、適切なものはどれか。
ア:暗号化鍵と復号鍵は公開するが、暗号化アルゴリズムは秘密にしなけれ
ばならない。
イ:暗号化鍵は公開するが、複号鍵と暗号化アルゴリズムは秘密にしなけれ
ばならない。
ウ:暗号化鍵と暗号化アルゴリズムは公開するが、復号鍵は秘密にしなけれ
ばならない。
エ:復号鍵と暗号化アルゴリズムは公開するが、暗号化鍵は秘密にしなけれ
ばならない。

338
9-3 暗号化と認証

公開鍵暗号方式では、暗号化鍵と暗号化アルゴリズムは公開されま
解説
すが、復号鍵は秘密にしておかなければなりません。 解答:ウ

第 章 ●
9
基本情報技術者試験 平成 26 年秋

ディジタル証明書をもつ A 氏が、B 商店に対して電子メールを使って商品の

セキュリティ
注文を行うときに、A 氏は自分の秘密鍵を用いてディジタル署名を行い、B
商店は A 氏の公開鍵を用いて署名を確認する。この手法によって実現でき
ることはどれか。ここで、A 氏の秘密鍵は A 氏だけが使用できるものとする。
ア:A 氏から B 商店に送られた注文の内容は、第三者に漏れないようにでき
る。
イ:A 氏から発信された注文は、B 商店に届くようにできる。
ウ:B 商店に届いた注文は、A 氏からの注文であることを確認できる。
エ:B 商店は、A 氏に商品を売ることが許可されていることを確認できる。

ディジタル署名によって実現できるのは、送信者である A 氏本人の
解説
注文であることです。また、A 氏の注文が改ざんされていないこと
も確認できます。                     解答:ウ

339
★ ★ ★
9
4 ネットワークセキュリティ

●ネットワークセキュリティ技術
コンピュータをネットワークに接続すると、ネットワークを介して他のコン
ピュータにアクセスできるので便利ですが、逆に他のコンピュータから不正にアク
セスされてしまう危険性もあります。そのため、ネットワークを介した不正なアク
セスを防止するためのさまざまな技術があります。

●ユーザ認証
アイディー
データにアクセスするときに I D とパスワードの入力を求め、ユーザ本人による
アクセスであることを確かめます。これをユーザ認証といいます。ただし ID とパ
スワードを盗まれると、本人以外でもアクセスできてしまうため、パスワードは定
はいりょ
期的に変更するなどの配慮が必要です。

●パスワードのハッシュ化
パスワードを保管する際は、パスワードそのものではなくハッシュ関数で変換
したハッシュ値を登録します。これをハッシュ化といいます。認証時も同様に
入力パスワードをハッシュ化し、ハッシュ値で比較する方法がとられます。万
が一ハッシュ値が流出しても、パスワードそのものを得ることができないため、
よく用いられている方法です。

〈パスワードのハッシュ化〉
パスワード保管

aAbB ハッシュ関数 AF32D5…

パスワード パスワード入力 ハッシュ値


登録

比較

aAbB ハッシュ関数 AF32D5…

ユーザ認証時 パスワード入力 ハッシュ値

340
9-4 ネットワークセキュリティ

これも ハッシュ値を使ったコンテンツ改ざん検知

知っと ハッシュ値は、Web サーバなどのコンテンツ改ざんの検知に
も利用されます。Webサーバのコンテンツの各ファイルのハッ
シュ値を保管しておき、定期的に各ファイルからハッシュ値を

第 章 ●
生成し比較することで、コンテンツが改ざんされていないか 9
チェックします。

セキュリティ
ラ デ ィ ウ ス
● RADIUS
リ モ ー ト オ ー セ ン テ ィ ケ ー シ ョ ン ダイアル イン ユ ー ザ サ ー ビ ス
RADIUS( Remote Authentication Dial I n User Service )は、ネット
ワークにアクセスしてきた利用者を認証サーバを使って認証するシステムで
す。無線 LAN や VPN 接続などで使われます。

●バイオメトリクス認証
こうさい
文字や数字を入力するパスワードではなく、人間の指紋や目の虹彩などの身体
的特徴によって認証を行うのが、バイオメトリクス認証(生体認証)です。バ
イオメトリクス認証には、身体的特徴を抽出して認証する方式のほかに、署
名するときの速度や筆圧から行動的特徴を抽出して認証する方式もあります。
ID やパスワードに比べて、なりすましの危険性が少なく、高い信頼性と利便
性を備えていますが、一方で装置の調整には、本人を誤って拒否する確率と他
人を誤って許可する確率の双方を考慮に入れる必要があります。

これも 虹彩認証

知っと バイオメトリクス認証の一種で、瞳孔の外側にある虹彩と呼ば
れる環状部分のパターンで本人確認を行う認証方式を虹彩認証
といいます。大人は虹彩が変化しないので、認証デバイスでの
パターン更新がほとんど不要です。

ココが
出る! 用語
[ RADIUS ]
:無線 LAN や VPN 接続などで使用される利用者
認証システム

341
ココが
用語
出る!
[バイオメトリクス認証]:人間の指紋や虹彩など身体的特徴に
よって認証。筆記速度や筆圧など行動的特徴により認証する方
式もある
スキル
→バイオメトリクス認証において、身体的特徴と行動的特徴を
抽出して認証する方式には具体的にどんなものがあるか理解し
ておこう。

●ファイアウォール
ラ ン
LAN などの内部ネットワークとインターネットなどの外部ネットワークの間に
配置し、LAN へ不正なアクセスができないようにするシステムをファイアウォー
ルといいます。
ファイアウォールを設置すると、内部ネットワークと外部ネットワークの間に、
ディーエムゼット
どちらからも隔離された区域ができます。これを D M Z(非武装地帯)といいます。
例えば、Web サーバと DB サーバで構成された利用者向けのサービスをインター
ネットに公開する場合、以下のようにサーバを設置することが一般的です。
インター
ネットへ情報を公開する Web サーバは DMZ に置き、重要なデータを持つ DB サー
バは不正アクセスを防ぐため内部ネットワークに配置します。

〈ファイアウォール 〉
インターネット

DMZ

ファイアウォール Webサーバ

内部ネットワーク

DBサーバ

342
9-4 ネットワークセキュリティ

ワ フ
これも WAF

知っと Web アプリケーションのやりとりを管理することによって不正
ウ ェ ブ
侵入を防御することのできるファイアウォールを WAF( Web
アプリケーション ファイアウォール
Application Firewall )といいます。Web サーバに渡される入

第 章 ●
力内容などをチェックし、SQL インジェクションなどの攻撃や 9
不正と見なされたアクセス要求を遮断します。

セキュリティ
●パケットフィルタリング
パケットのあて先 IP アドレスや送信元 IP アドレス、ポート番号を判別して、ネッ
トワークへの通過を許可したり、遮断したりする技術をパケットフィルタリングと
いいます。これによって不正侵入を試みるパケットを排除します。ルータやファイ
アウォールに実装されています。

これも ARP を利用した通信可否判定



知っと ARP は、IP アドレスから MAC アドレスを動的に取得するプ
ロトコルです。この仕組みを利用することで、PC の MAC ア
ドレスを確認し、事前に登録されている MAC アドレスをもつ
場合だけ通信を許可することができます。無線 LAN のクライ
アント認証などで使われています。

●プロキシ
内部ネットワークにあるコンピュータのアクセスを中継し、代理でインターネット
へ接続を行うコンピュータを、プロキシといいます。接続先にはプロキシがアクセス
した履歴しか残らないため、内部ネットワークの IPアドレスを隠すことができます。

●ペネトレーションテスト
コンピュータやネットワークのセキュリティ上の弱点を発見するために、システ
ムを実際に攻撃して侵入を試みるテストをペネトレーションテストといいます。定
期的にテストをすることで、新たなセキュリティホールや設定ミスを発見し、シス

343
テムの安全性を確保します。

●侵入検知システム
アイディーエス
侵入検知システムは、 I D S( Intrusion Detection System )ともいい、コン
ピュータやネットワークに対する不正行為を検出し、通知するためのシステムです。
ネットワーク上の通信を解析し、侵入手口のパターンと一致した場合や、異常を検
出した場合には管理者へ通知します。

これも バックドア

知っと 通常の経路以外から不正に侵入するために、侵入者がサーバに
仕掛けた裏の侵入経路をバックドアといいます。侵入や攻撃を
受けたサーバにはバックドアが仕掛けられた可能性が高いため、
ディスクのフォーマットや OS の再インストールが必要です。

ココが
出る! 用語
[ ファイアウォール ]
:内部ネットワークを外部攻撃から守る
もの
[ DMZ ]
:外部と内部のネットワークの間にある地帯
[ パケットフィルタリング ]: IP やポート番号を識別し、通過
させるパケットを制限
[ プロキシ ]:代理でインターネットへ接続し内部ネットワー
クを隠す
[ WAF ]
:Web アプリケーションの脆弱性への外部攻撃から
守るもの
[ ペネトレーションテスト ]
:システムを実際に攻撃して侵入
を試みるテスト
[ バックドア ]:侵入者が通常の経路以外から不正侵入するた
めに仕掛けた裏経路

344
9-4 ネットワークセキュリティ

基本情報技術者試験 平成 26 年秋

WAF( Web Application Firewall )を利用する目的はどれか。


ぜい
ア:Web サーバ及び Web アプリケーションに起因する脆 弱性への攻撃を
遮断する。

第 章 ●
イ:Web サーバ内でワームの侵入を検知し、ワームの自動駆除を行う。
9
ウ:Web サーバのコンテンツ開発の結合テスト時に Web アプリケーション
の脆弱性や不整合を検知する。

セキュリティ
エ:Web サーバのセキュリティホールを発見し、OS のセキュリティパッチ
を適用する。

WAF は、Web アプリケーションのやり取りを管理することによっ


解説
て、SQL インジェクションなどの攻撃や不正と見なされたアクセ
ス要求を遮断します。 解答:ア

基本情報技術者試験 平成 27 年春

バイオメトリクス認証には、身体的特徴を抽出して認証する方式と行動的特
徴を抽出して認証する方式がある。行動的特徴を用いているものはどれか。
ア:血管の分岐点の分岐角度や分岐点間の長さから特徴を抽出して認証す
る。
イ:署名するときの速度や筆圧から特徴を抽出して認証する。
ウ:瞳孔から外側に向かって発生するカオス状のしわの特徴を抽出して認証
する。
エ:隆線によって形作られる紋様からマニューシャと呼ばれる特徴点を抽出
して認証する。

筆記時の速度や筆圧は、個人の行動的特徴です。
解説
解答:イ

345
基本情報技術者試験 平成 26 年春

企業内ネットワークやサーバに侵入するために攻撃者が組み込むものはどれ
か。
ア:シンクライアントエージェント   
イ:ストリクトルーティング
ウ:ディジタルフォレンジックス    
エ:バックドア

通常の経路以外から不正侵入するために、攻撃者はバックドアを組
解説
み込みます。 解答:エ

346
マネジメント
★ ★ ★
10
1 プロジェクトマネジメント

●プロジェクトマネージャの役割
プロジェクトとは、モノやサービスを作り出すための計画のことで、システム開
発もプロジェクトの 1 つです。プロジェクトの特性として、期間が決まっている有
期性と、今までに実施したことがない要素が含まれる独自性の 2 つが挙げられます。
プロジェクトを管理することをプロジェクトマネジメント、管理する人をプロジェ
クトマネージャといいます。プロジェクトマネージャの仕事には、システム開発に
おけるコストの見積もりやスケジュール管理などがあります。

●コストの見積もり
システムの開発工数や費用を見積もる手法には、ファンクションポイント法とい
う考え方があります。画面数といった入出力などのシステム機能に着目し、すべ
ての機能に処理内容の難易度に応じて「ファンクションポイント 」という点数を
つけ、機能の個数×点数を計算してシステム全体の開発規模を見積もります。

〈ファンクションポイントの計算〉

ユーザファンクションタイプ 個数 点数
①各機能の
外部入力 1 4 → 1× 4 = 4
個数×点数を計算
外部出力 2 5 → 2× 5 = 10
内部論理ファイル 1 10 → 1 × 10 = 10

外部インタフェースファイル 0 7 → 0× 7 = 0
外部照会 0 4 → 0× 4 = 0
②各点数を
       ※複雑さの補正係数:0.75 合計 24
合計する

③補正係数を
→ 24 × 0.75 = 18
かける

ファンクションポイント:18

●スケジュール管理
システム開発全体のスケジュールを常に管理するのは大変なので、トップダウ
ン方式で作業を細分化し、以下のように階層構造にして管理する手法が広く使

348
10-1 プロジェクトマネジメント

ダブリュービーエス ワ ー ク ブ レ ー ク ダ ウ ン ス ト ラ ク チ ャ
われています。これを W B S( Work Breakdown Structure )といいます。

〈 WBS 〉

システム

サブシステム1 サブシステム 2 トップダウンで


作業を細分化して
管理する
設計 開発 テスト

第 章 ●
10
●アローダイアグラム
プロジェクトを管理するとき、作業項目が多かったり、各作業の順序関係が入り

マネジメント
組んでいたりすると、スケジュール管理が大変です。その場合は、アローダイアグ
パート
ラム( PERT )を使って図にするとわかりやすくなります。アローダイアグラムは、
1 つひとつの作業を「→」で表し、矢印の上に作業名、下に所要日数を記載します。
作業と作業の結合点は「○」で表します。

〈アローダイアグラム 〉

作業名
A C 作業の順番 : A  C
5 4 所要日数 : 5 + 4 = 9日

B D 作業の順番 : B  D
3 4 所要日数 : 3 + 4 = 7日
日数

●クリティカルパス
各作業は、並行して進められるものもあれば、「作業 D は、作業 A が完了してい
ないと始められない」といった制限があることもあります。例えば料理をするとき、
作業名
材料を切ったり調味料を用意したりすることは並行して進められますが、材料を炒
A B C
めるのは、切ったあとにしかできないのと同じです。
5 3 4
作業 A から作業 F まであるとき、各作業の順序関係には次の制限があるとします。
日数

作業の順番 : A  B  C
所要日数 : 5 + 3 + 4 = 12日

349
〈制限〉

作業名 その前に完了していなければいけない作業

作業 C 作業 A

作業 D 作業 A、作業 B

作業 E 作業 C

作業 F 作業 D、作業 E

この場合、アローダイアグラムで表現すると、下の図のようになります。実際の
作業は存在せず、作業の前後関係だけを表す作業をダミー作業といい、アローダイ
アグラムでは「 」を使います。

〈並行した作業〉
作業 F は、作業 DとE
が完了してから開始

A C E F

5 3 4 7
B D
3 10
作業Dは、作業Aと作業B
ダミー作業
が完了してから開始
(所要日数 0)

並行して進める作業がある場合、作業開始から作業終了までに複数の作業経路が
できあがるわけですが、その中でも一番時間がかかる経路のことをクリティカルパ
スといいます。先の図のクリティカルパスを求めると、
「 A → D → F 」の経路になり
ます。

〈クリティカルパス 〉
5 22
A C E F

5 3 4 7
15
B D
3 10
クリティカルパス
5
クリティカルパス上の作業は全部で 22 日かかっていることがわかります。この
日数が、プロジェクト全体の所要日数となります。そのため、クリティカルパス上
で遅れが生じるとプロジェクト全体が遅れてしまうので、特に注意して管理しなけ

350
10-1 プロジェクトマネジメント

ればなりません。

●最早結合点時刻と最遅結合点時刻
作業経路上の対象となる作業において、もっとも作業を早く開始できる日時のこ
とを最早結合点時刻といいます。言い換えると、「いつから次の作業に取りかかれ
るか」という最短所要日数です。

〈最早結合点時刻〉
④の最早結合点時刻は

第 章 ●
A(5)+C(3)=8日
10
A C E F
1 2 4 5 6
5 3 4 7

マネジメント
B D
3 10 ⑤の最早結合点時刻は
A(5)+ダミー(0)+D(10)=15日
3

一方、対象となる作業において、プロジェクト全体に影響を与えない範囲で、もっ
とも作業を遅らせて開始した場合の日時を最遅結合点時刻といいます。
「いつまで
に作業すれば全体の進捗に影響がでないか」を逆算して求めます。

〈最遅結合点時刻〉
④の最遅結合点時刻は、⑤の4日前から作業すれば間に合うので、
⑤の最遅である15日からE(4)を引いて11日(最早は8日なので、
3日余裕あり)

A C E F
1 2 4 5 6
5 3 4 7
B D
3 10 ⑤の最遅結合点時刻は
全体の所用日数(22)−F(7)=15日
3

ココが
出る! 用語
[プロジェクト ]:独自性や有期性がある
[ファンクションポイント法]:画面数といった入出力などのシ
ステム機能に着目し開発規模を見積もる

351
ココが
用語
出る!
[ WBS ]
:プロジェクトの作業をトップダウン方式で細分化し、
構造化する作業計画手法
[アローダイアグラム( PERT )]:プロジェクトの日程計画に使
われる、各作業の順序関係を示した図
[クリティカルパス ]:作業開始から終了までの経路で一番時間
がかかる経路。全体の遅れに直結する作業を把握できる
スキル
→ファンクションポイントを計算できるようにしておこう
→クリティカルパスの所要日数を計算できるようにしておこう
→最早結合点日数、最遅結合点日数を計算できるようにしておこう

基本情報技術者試験 平成 26 年春

図のように、プロジェクトチームが実行すべき作業を上位の階層から下位の
階層へ段階的に分解したものを何と呼ぶか。

システム開発

企画プロセス 要件定義プロセス …

プロセス開始 利害関係者 …
の準備 要件の定義

ア:CPM  
イ:EVM  
ウ:PERT  
エ:WBS

プロジェクトの作業をトップダウン方式で分解し、構造化する作業
解説
計画手法は WBS です。 解答:エ

352
10-1 プロジェクトマネジメント

基本情報技術者試験 平成 26 年秋

システム開発の見積方法の一つであるファンクションポイント法の説明とし
て、適切なものはどれか。
ア:開発規模が分かっていることを前提として、工数と工期を見積もる方法
である。ビジネス分野に限らず、全分野に適用可能である。
イ:過去に経験した類似のシステムについてのデータを基にして、システム
の相違点を調べ、同じ部分については過去のデータを使い、異なった部
分は経験から規模と工数を見積もる方法である。

第 章 ●
ウ:システムの機能を入出力データ数やファイル数などによって定量的に計
10
測し、複雑さとアプリケーションの特性による調整を行って、システム
規模を見積もる方法である。

マネジメント
エ:単位作業量の基準値を決めておき、作業項目を単位作業項目まで分解
し、その積算で全体の作業量を見積もる方法である。

ファンクションポイント法では、入出力データ数やファイル数など
解説
のシステム機能の個数や複雑さに着目してシステム規模を見積もり
ます。 解答:ウ

基本情報技術者試験 平成 22 年春

九つの作業からなるプロジェクトがある。作業 E の所要日数を 9 日から 6 日


に短縮すると、このプロジェクトの最短作業日数を何日短縮できるか。

B C
7 2
A G I
4 D E 3 2
2 9 H
5 凡例
F 作業名
6
所要日数

ア:0(短縮できない)  
イ:1  
ウ:2  
エ:3

353
作業 E の所要日数が 9 日のときは、クリティカルパスは A → D → E
解説
→ G → I となり、最短作業日数は 20 日。作業 E が 6 日に短縮すると、
クリティカルパスは A → D → F → H → I となり、最短作業日数は 19 日に
なります。よって、図のとおりプロジェクトの最短作業日数を 20 日から
19 日に 1 日短縮することができます。

かつての 11
クリティカルパス
13 16
B C
A
4 7 2
15 G 18 I 20

D E 3
4 2
6 H 17 19
2 9
F 5
新しい
クリティカルパス 6 6
12

解答:イ

354
10-2 サービスマネジメント
★ ★ ★
10
2 サービスマネジメント

● IT サービスマネジメント
企業がシステムを導入するのは、業務を効率的に行ったり問題を解決したりする
ためです。システムを導入したとしても、そのシステムが正しく使われなかったり、

第 章 ●
故障したりしてばかりだったら、結局問題は解決されません。
システムを提供するだけでなく、運用や管理まで行うことによって問題解決の実 10
現までを提供するサービスを、IT サービスといいます。そして、IT サービスを適
切に提供し、サービスレベルを管理することをITサービスマネジメントといいます。

マネジメント
日々の運用プロセスについて定めたサービスマネジメントプロセスでは、4 つの
プロセスがあり、それぞれのノウハウがまとめられています。

●サービスマネジメントプロセス

〈サービスマネジメントプロセス 〉

項目 内容

サービス提供プロセス

サービスレベル管理 IT サービス提供者と利用者間で合意したサービスレベルを管
理する

IT サービス財務管理 IT サービスにかかるコストを算出し、財務状況を管理する

キャパシティ管理 将来的な視点に基づいて必要となる IT サービスの需要を見積


もり、それに見合う IT 資源を供給できるよう管理する

可用性管理 日常的に発生する障害頻度を見積もり、IT サービスが中断し


ないように管理する

IT サービス継続性管 IT サービス全体に影響を与える災害などに対して、事業を継
理 続させるコンティンジェンシープラン(非常事態発生時対応
計画)を策定し、実行する

関係プロセス

事業関係管理 IT サービスの顧客、利用者、利害関係者を特定し、顧客関係
や顧客満足を管理する

供給者管理 サービス供給者との関係、契約、パフォーマンスを管理する

355
項目 内容

解決プロセス

インシデント管理 システム障害の発生から対策、解決までを管理する。原因の
(障害管理) 追究ではなく、業務の迅速な再開を優先した対策を行う。イ
ンシデント発生時は、まず情報を記録する

問題管理 発生した障害の原因を追究し、再発を防止するための根本的
な解決を行う

統合的制御プロセス

構成管理 サービスを構成するハードウェア、ソフトウェア、運用マニュ
アル、スタッフなどの IT 資産を管理する

変更管理 変更要求の内容について、変更によるインパクトや優先度を
評価して、許可または却下を決定する

リリース管理 システムの変更内容を、本番環境で実行する

これも 既知の誤り
(既知のエラー)

知っと IT サービスマネジメントの問題管理では、根本原因が特定され
ている問題や回避策が存在している問題を既知の誤り(既知の
エラー)といいます。

ココが
スキル
出る!
→サービスマネジメントプロセスにおける各プロセスの名称と
内容を理解しておこう。

エスエルエー
●SLA
IT サービスを提供するベンダと発注側の間で、あらかじめ IT サービスの内容や品
質を決めて文書化しておくことにより、のちのトラブルを防ぐことができます。こ
サ ー ビ ス レ ベ ル ア グ リ ー メ ン ト
の文書をサービスレベル合意書( SLA:Service Level Agreement )といいます。

356
10-2 サービスマネジメント

●システム管理基準
システム管理基準は、経済産業省が公表している文書で、情報戦略を立案し、効
果的な情報システム投資やリスク管理を行うための事項をとりまとめたものです。
システム管理基準では、システムライフサイクルを企画・開発・運用・保守という
4 つの業務に定義した上で、以下 6 つの項目から構成されています。

・情報戦略 →情報化投資計画、全体最適化計画など
・企画業務 →開発計画、分析、調達

第 章 ●
・開発業務 →開発手順、設計、プログラミング、テストなど
・運用業務 →構成管理、建物管理など 10
・保守業務 →保守手順や移行、廃棄
・共通業務 →ドキュメント管理、進捗管理、品質管理など

マネジメント
ココが
用語
出る!
[ SLA ]
:IT サービスの品質や内容を合意して文書化したもの
[システム管理基準]:効果的な情報システム投資とリスク低減
のための実施要綱
スキル
→システム管理基準の各業務において、どのような項目が定め
られているかを理解しておこう。
→システム管理基準におけるシステムライフサイクルの定義や
計画の位置付けを理解しておこう。

基本情報技術者試験 平成 24 年春

ITサービスマネジメントの管理プロセスはどれか。
ア:サービスレベル管理   イ:スケジュール管理
ウ:品質管理        エ:リスク管理

IT サービスマネジメントでは、サービスレベル管理プロセスが規定
解説
されています。 解答:ア

357
基本情報技術者試験 平成 27 年春

IT サービスマネジメントのインシデント及びサービス要求管理プロセスにお
いて、インシデントに対して最初に実施する活動はどれか。
ア:記録   イ:段階的取扱い
ウ:分類   エ:優先度の割当て

インシデント(障害)が発生したときは、まず情報を記録します。
解説
解答:ア

基本情報技術者試験 平成 26 年春

IT サービスマネジメントにおける“既知の誤り(既知のエラー)”の説明はどれ
か。
ア:根本原因が特定されている又は回避策が存在している問題
イ:サービスデスクに問合せがあった新たなインシデント
ウ:サービスマネジメント計画での矛盾や漏れ
エ:静的検査で検出したプログラムの誤り

「既知の誤り(既知のエラー)」とは、エラー原因が特定されていたり、
解説
回避策がある問題です。 解答:ア

基本情報技術者試験 平成 25 年春

“ システム管理基準”によれば、組織全体の情報システムのあるべき姿を明確
にする計画はどれか。
ア:開発計画
イ:事業継続計画
ウ:全体最適化計画
エ:年間運用計画

情報戦略の段階で、組織全体の情報システムのあるべき姿を検討し、
解説
全体最適化計画を立てます。 解答:ウ

358
10-3 システム監査
★ ★
10
3 システム監査

●システム監査とは
システムの導入によって、利用者は、期待していた効果が得られているかを評価
する必要があります。しかし、自社で客観的に評価するのは難しいので、企業とは独

第 章 ●
立した立場の人であるシステム監査人に評価を依頼します。これをシステム監査とい
います。システム監査を行うことで、システムの信頼性や安全性に関するリスクを 10
把握し、課題や対策を検討することができます。システム監査人は、監査中に問題
が発見されたときは、監査依頼者に報告する責任があります。システム監査人が行っ

マネジメント
た監査業務の実施記録であり、監査意見の根拠となるものを監査調書といいます。

●システム監査人の独立性
システム監査は、監査対象部門から独立した客観的な立場の人間が実施しなけれ
ばなりません。経済産業省が定めた「 システム監査基準」には、以下のように記述
されています。

●外観上の独立性
システム監査人は、システム監査を客観的に実施するために、監査対象から独
立していなければなりません。監査の目的によっては、被監査主体と身分上、
密接な利害関係を有することがあってはなりません。

●精神上の独立性
システム監査人は、システム監査の実施に当たり、偏向を排し、常に公正かつ
客観的に監査判断を行わなければなりません。

これも ヒアリングの実施

知っと システム監査では情報収集のためにヒアリングを行います。問
題と思われる事項を発見した場合、その裏付けとなる文書や記
録を入手したり現場確認を行います。

359
●内部統制
企業などの内部組織で、違法行為や不正、ミスが発生することがないように、各
業務で所定の基準や手続きを定め、チェックする体制や仕組みを取り入れることを
内部統制といいます。例えば、社員の不正を防止するために作業の実施者と承認者
を分けることは、内部統制にあたります。システム監査は、内部統制を有効にする
ための仕組みといえます。

ココが
出る! 用語
[システム監査]:情報システムを点検・評価し、監査依頼者に
問題の報告・助言を行う
[システム監査人]:被監査部門から独立した第三者
[監査調書]:監査業務の実施記録で、監査意見の根拠となる
もの
[内部統制]:企業自らが正常に活動しているかをチェックする
体制や仕組み

基本情報技術者試験 平成 24 年春

システム監査人の独立性が保たれている状況はどれか。
ア:営業部門の要員を監査チームのメンバに任命し、営業部門における個人
情報保護対策についての監査を行わせる。
イ:監査法人からシステム監査人を採用して内部監査人に位置付け、社内の
業務システム開発についての監査を行わせる。
ウ:システム部門の要員を監査部門に異動させ、システム部門に所属してい
たときに開発に参加したシステムの保守についての監査を担当させる。
エ:社内の業務システム運用を委託している IT ベンダの監査部門に依頼し、
社内の業務システム運用についての外部監査を担当させる。

独立性が保たれているのはイです。アは、監査人と監査される部門
解説
が同じなので誤り。ウとエは、監査人が監査対象と利害関係にある
ため誤りです。                      解答:イ

360
10-3 システム監査

基本情報技術者試験 平成 25 年秋

システム監査で実施するヒアリングに関する記述のうち、適切なものはどれ
か。
ア:監査対象業務に精通した被監査部門の管理者の中からヒアリングの対象
者を選ぶ。
イ:ヒアリングで被監査部門から得た情報を裏付けるための文書や記録を入
手するよう努める。
ウ:ヒアリングの中で気が付いた不備事項について、その場で被監査部門に

第 章 ●
改善を指示する。
10
エ:複数人でヒアリングを行うと記録内容に相違が出ることがあるので、1
人のシステム監査人が行う。

マネジメント
ヒアリングは情報収集のために行い、その情報を裏付けるために文
解説
書や記録を入手したり現場確認を実施します。 解答:イ

基本情報技術者試験 平成 27 年春

IT に係る内部統制を評価し検証するシステム監査の対象となるものはどれ
か。
ア:経営企画部が行っている中期経営計画の策定の経緯
イ:人事部が行っている従業員の人事考課の結果
ウ:製造部が行っている不良品削減のための生産設備の見直しの状況
エ:販売部が行っているデータベースの入力・更新における正当性確保の方

システム監査とは、企業の情報システムを総合的に点検及び評価す
解説
ることです。システムに関する監査対象はエです。 解答:エ

361
情報化と経営
★ ★ ★
11
1 企業活動

アイティー
● IT 社会と企業
企業にとっても、業務を効率化するためのシステムを導入したり、
自社製品やサー
ビスに IT を取り入れたりするなど、IT の活用が企業利益を大きく左右する時代に
なっています。そのため、IT を企業活動において有効に活用する必要があり、エ
ンジニアにとっても経営や業務に関する知識が必要不可欠となっています。

これも ディジタルディバイド

知っと 情報リテラシの有無や IT の利用環境の違いによって生じる、
社会的または経済的格差をディジタルディバイドといいます。
解消のためには、習得機会を増やしたり IT サービスを利用し
やすい環境整備に取り組むことが必要です。

●企業の責任者
企業には必ず責任者がいます。日本では企業の責任者を代表取締役と呼んでいま
す。しかし最近では、責任を負う内容によって、次のような呼称を使うようになっ
てきています。

〈責任者の呼称〉

呼称 内容
シーイーオー
CEO 最高経営責任者。企業経営に対して最大の責任
チ ー フ エ グ ゼ ク テ ィ ブ オフィサー
( Chief Executive Officer ) を持つ
シーオーオー
COO 最高執行責任者。CEO が決定したことを実践
チ ー フ オペレーティング オフィサー
( Chief Operating Officer ) する、業務上の最高責任者
シーアイオー
CIO 最高情報責任者。企業の情報化戦略を立案し、
チ ー フ インフォメーション オフィサー
( Chief Information Officer ) 実行することに対して責任を持つ

364
11-1 企業活動

これも アカウンタビリティ

知っと 経営層が、株主やその他の利害関係者に対して、経営活動の内
容・実績に関する説明責任を負うことをアカウンタビリティと
いいます。

これも ステークホルダ

知っと 企業に対する利害関係者のことをステークホルダといいます。
具体的には、顧客、企業の従業員、株主、得意先などを指しま
す。企業は継続した発展を図ることを目的に、ステークホルダ
を重視した経営を行います。

第 章 ●
11
●組織の形

情報化と経営
企業では、
「お金を管理する人」、
「社員を管理する人」、
「商品を作る人」など、役
割をもって仕事をしています。このように役割を分けて仕事をする集団を組織とい
います。組織には、さまざまな形があります。

〈組織の形〉

種類 特徴

事業部制組織 社長
商品や市場、地域ごとに組織を分け、
それぞれが独立して仕事を行い、利
益責任を負う。1 つの組織の規模が
A 事業部 B 事業部
小さくなるため、内部の意思疎通が
図りやすくなる
製造 営業 管理 製造 営業 管理

職能別組織 社長
同じ専門知識をもったスタッフごと
に編成。専門家が集まることにより、
個人個人の専門技能を最大限に生か
製造 営業 管理
すことができる

マトリックス組織 社長 A 事業部 B 事業部 事業部制、職能別などの異なる組織


構造をミックスした組織。それぞれ
製造
の組織構造のメリットを得ることが
営業
できる。スタッフは複数の上司から
管理 指示を受ける可能性がある

365
種類 特徴

プロジェクト組織 社長
システム開発など特定の目的のため
に各部門から必要な専門家を集めて
編成し、一定期間活動する組織
製造 営業 管理 プロジェクト

これも フランチャイズチェーン

知っと 主に小売業において、本部が加盟店に対して、同一の屋号やロ
ゴなどの使用権を与え、経営サポートをして販売活動をさせる
組織形態をフランチャイズチェーンといいます。

ココが
出る! 用語
[ ディジタルディバイド ]
:IT 知識や利用環境の違いにより生
じる社会的・経済的格差
[ CIO ]:企業の情報化戦略を立案
[アカウンタビリティ]:経営活動に関する説明責任
[ステークホルダ ]:顧客、従業員、株主などの企業に対する利
害関係者
[事業部制組織]:製品や市場、地域ごとに組織を分けて独立し
て仕事を行う
[職能別組織]:同じ専門知識をもったスタッフごとに編成
[マトリックス組織]:構成員が、事業部門と職能部門といった
異なる部門の両方に所属する
[プロジェクト組織]:一定期間、特定の目的のために活動する

●業務プロセスの改善
業務の流れのことを業務プロセスといいます。企業活動において、業務プロセス
に問題が発見された場合は、改善を行います。業務プロセスを抜本的に見直し、企
ビーピーアール ビジネス プロセス リエンジニアリング
業の体質や構造を改善することを B PR( Business Process Reengineering )

366
11-1 企業活動

といいます。また、長期的にとらえて、継続的に業務プロセスを改善していくこと
ビーピーエム ビジネス プロセス マネジメント
を BPM( Business Process Management )といいます。

これも ベンチマーキング

知っと ほかの優良企業の経営や業務のやり方と比較して、自社の業務
プロセスを定性的・定量的に把握し改善していく手法をベンチ
マーキングといいます。

これも BCP

知っと 災害など予期せぬ事態が発生した場合でも、重要な業務が継

第 章 ●
続できるように、事前に規定しておく方針や行動手順を BCP
( Business Continuity Plan )といいます。 11

情報化と経営
ココが
出る! 用語
[ BPR ]
:業務プロセスを抜本的に見直し、企業の体質や構造
を改善すること
[ BPM ]:業務プロセスの継続的な改善サイクル
[ ベンチマーキング ]
:自社の業務プロセス改善のために優良
企業を参考にすること
[ BCP ]:予期せぬ事態が発生した場合でも、事業を継続する
ための行動計画

基本情報技術者試験 平成 25 年春

CIO が経営から求められる役割はどれか。
ア:企業経営のための財務戦略の立案と遂行
イ:企業の研究開発方針の立案と実施
ウ:企業の法令遵守の体制の構築と運用
エ:ビジネス価値を最大化させる IT サービス活用の促進

367
CIO は最高情報責任者であり、全社的観点から情報化戦略を立案し、
解説
ビジネス価値を最大化させる IT サービス活用を促進することが求め
られます。 解答:エ

基本情報技術者試験 平成 23 年特別

図のような構造をもつ企業組織はどれか。

経営者

生産 販売 研究開発 経理 人事

ア:事業部制組織    イ:職能別組織
ウ:プロジェクト組織  エ:マトリックス組織

同じ専門知識をもったスタッフごとに編成された企業組織は、職能
解説
別組織です。 解答:イ

基本情報技術者試験 平成 27 年春

企業活動における BPM( Business Process Management )の目的はど


れか。
ア:業務プロセスの継続的な改善
イ:経営資源の有効活用
ウ:顧客情報の管理、分析
エ:情報資源の分析、有効活用

BPM は、業務プロセスを継続的に改善していくための管理手法で
解説
す。 解答:ア

368
11-2 経営戦略
★ ★ ★
11
2 経営戦略

●経営戦略とは
経営戦略は、企業が目的を達成するために、人・モノ・金・情報といった経営資
源をどのように配分し、行動していくかを決める中長期的な計画のことです。企業
経営の考え方をまとめた経営理念に沿って、何をするべきなのか、他社との競争に
勝てる商品やサービス、ブランドをどう確立していくかを考えます。
経営戦略の善し悪しによって、企業が成長することもあれば、存続の危機に立た
されてしまう場合もあります。経営戦略には、以下のようなものがあります。

第 章 ●
11
●ニッチ戦略
ほかの企業が参入していない、隙間となっている市場を開拓する戦略をニッチ

情報化と経営
戦略といいます。また、ニッチ戦略をとっている企業をマーケットニッチャと
いいます。

●コアコンピタンス
他社にまねのできない独自のノウハウや技術のことをコアコンピタンスといい
ます。自社のコアコンピタンスを強化し発展させることができれば、他社と差
別化を図ることができます。

これも プロダクトイノベーション

知っと 新たな商品や他社との差別化ができる革新的な商品を開発し
て、差別化を図ることをプロダクトイノベーションといいます。

●新たな経営資源の調達
自社ですべての資源を調達するのではなく、他社がもつ経営資源を有効に利用す
ることも、他社よりも優位な立場を築く戦略になります。事業の一部やすべてを、
他社の資源を使って行うことにより、自社資源をメイン事業に集中投下できるから

369
です。他社がもつ経営資源を有効に利用する方法を紹介します。

●アウトソーシング( BPO )
ビーピーオー
自社の業務の一部を専門業者に依頼することをアウトソーシング( BPO:
ビジネス プロセス アウトソーシング
Business Process Outsourcing )といいます。

●アライアンス
複数の企業が連携することをアライアンスといいます。主力事業が異なる企業
同士がアライアンスを組むと、お互いの弱点を補完し合うことができ、事業展
開を有利に進められます。

エムアンドエー
●M&A
目的の事業をすでに行っている企業と合併(複数の企業が 1 つの企業にな
る)したり、買収(企業の一部、あるいは全部を買い取る)したりすることを
エムアンドエー マージャーズ アンド アクィジションズ
M & A( Mergers and Acquisitions )といいます。

ティーオービー
●T O B
株式の買い付け価格と買い付けを行う期間を公表して、不特定多数の株主から
株式を取得することを TOB といいます。企業が自社株を購入するときや、他
企業を買収したいときに利用されます。

これも グリーン購入
(調達)

知っと 製品を製造するための原材料や部品を、環境負荷の低減に努める
事業者から優先して購入することをグリーン購入(調達)といい
ます。企業が社会的責任を果たすために、環境対策の観点で実施
します。

これも CSR 調達

知っと 自然環境、人権などへの配慮を調達基準として示し、調達先に遵
守を求めることをCSR調達といいます。

370
11-2 経営戦略

ココが
出る! 用語
[ニッチ戦略]:ほかの企業が参入していない隙間市場を開拓す
る戦略
[コアコンピタンス ]
:独自のノウハウや技術で競争優位を確立
[プロダクトイノベーション ]
:新商品や他社と差別化できる商
品を開発すること
[ アウトソーシング( BPO )]:自社の業務の一部を外部の専門
業者に依頼
[アライアンス ]:企業の連携
[ M&A ]:企業の合併・買収
[ TOB ]
:株式の買付価格と買付期間を公表して、株式を取得

第 章 ●
する方法
[ グリーン購入(調達)]:原材料や部品を、環境負荷の低減に 11
努める事業者から優先して購入
[ CSR 調達]:自然環境や人権への配慮を調達基準とし、調達

情報化と経営
先に遵守を要求

●現状分析
経営戦略を考えるには、自社が置かれている状況を把握することが重要です。
そのための手法を紹介します。

スウォット
● SWOT 分析
スウォット ス ト レ ン グ ス
SWOT 分析とは、企業に対して影響を与えている環境を強み( Strengths )、
ウ ィ ー ク ネ ス オ ポ チ ュ ニ テ ィ ー ズ ス レ ッ ツ
弱み( Weaknesses )、機会( Opportunities )、脅威( Threats )の 4 つの要
素に分けて分析する分析手法です。この 4 つの要素は、経済情勢やライバル企
業の新規参入などの企業自身ではどうすることもできない外部環境と、雇用
環境、人材、技術力などの企業内部で改善できる内部環境に分かれます。

〈 SWOT分析〉

内部環境 外部環境

よい影響 S(強み) O(機会)

悪い影響 W(弱み) T(脅威)

371
ピーピーエム
●PP M
ピーピーエム
PPM(プロダクト・ポートフォリオ・マネジメント )とは、企業が扱う製品や
事業が、市場でどのような位置にあるかを把握し、経営資源を効率的に配分す
るための分析手法です。
「市場は成長しているのか」
を表す市場成長率を縦軸に、
「自社製品が市場を占めている割合」を表す市場占有率を横軸にとった表を使
います。

〈 PPM マトリックス 〉


市場成長率

花形 問題児

金のなる木 負け犬

高 低
市場占有率

分類 内容

花形 市場が成長しているため、さらなる投資を行う

金のなる木 少ない投資で利益を得られるため、投資を必要最小限に抑えて、
得た利益を他の事業の資金にする

問題児 早いうちに集中的な投資を行って「花形」にするか、「負け犬」にな
らないうちに撤退する

負け犬 即撤退か売却が必要

これも IT ポートフォリオ

知っと 情報化投資を検討するときに、リスクや投資価値が似たものを
区分けし、それらを組み合わせて最適な資源配分を行う手法を
IT ポートフォリオといいます。

●プロダクトライフサイクル
製品が市場で販売され、普及し、やがて売れなくなって姿を消すまでのサイク
ルをプロダクトライフサイクルといいます。売上の推移を導入期、成長期、成
熟期、衰退期の 4 つの期間に分けて表します。自社の製品がどの期間を迎えて
いるかを把握することにより、今後の対策を決めます。

372
11-2 経営戦略

〈プロダクトライフサイクル 〉

売上
成熟期に売上が
ピークを迎える

導入期 成長期 成熟期 衰退期 時間

期間 売上と戦略

導入期 商品の認知度が低いため、売上が少ない。宣伝して認知度を高める

第 章 ●
成長期 商品の認知度が上がり、商品が売れ始める。競合他社が参入してく
るため、商品の差別化を行う 11
成熟期 売上がピークを迎え、徐々に下がり始める。競合他社との競争が激
化するため、コスト削減などの対策を行う

情報化と経営
衰退期 急速に売上が下がっていく。商品を新しくするか、撤退を行う

●バリューチェーン分析
企業の事業活動を機能ごとに主活動と支援活動に分け、企業が顧客に提供する
製品やサービスの利益は、どの活動で生み出されているかを分析する手法をバ
リューチェーン分析といいます。

〈衣料品製造販売のバリューチェーンの例〉

販売と
購買物流 製造 出荷物流 サービス
マーケティング

生地を発注し、 縫製作業を 衣料品を 広告宣伝を アフター


検品し、 行う 配送する 行う サービスを
在庫管理する 販売を行う 行う

●バランススコアカード
バランススコアカードは、財務の視点・顧客の視点・業務プロセスの視点・
成長と学習の視点の 4 つの視点から業績目標と指標値を定め、経営戦略を管
理する手法です。例えば、顧客の視点では、主要な顧客との継続的な関係構
築を目標と定め、指標値としてクレーム件数を管理することで、業績を評価

373
します。また、戦略マップとよばれる、4 つの視点をもとにした課題・施策・
目標の因果関係を表現するツールを活用することもあります。

これも ナレッジマネジメント

知っと 企業内に散らばっている知識を共有・活用して、全体の問題解
決力を高める経営手法をナレッジマネジメントといいます。

ココが
用語
出る!
[ SWOT 分析]:「強み」
「弱み」
「機会」
「脅威」の 4 つの要素で
自社の環境を分析
[ PPM ]:市場成長率と市場占有率によって、「花形」
「金のな
る木」
「問題児」
「負け犬」の 4 つに分類して製品や事業を分析
[ IT ポートフォリオ ]:リスクや投資価値が似たものを区分け
し、組み合わせて最適な資源配分を行う手法
[バリューチェーン分析]:企業活動を機能ごとに分け、どこで
利益が出ているかを分析
[ ナレッジマネジメント ]
:企業内に散在した知識を共有し、
全体の問題解決力を高める手法
スキル
→プロダクトライフサイクルの各期間の特徴を理解しておこ
う。
→バランススコアカードの 4 つの視点における戦略目標と業績
評価指標の事例を理解しておこう。

基本情報技術者試験 平成 22 年春

企業経営におけるニッチ戦略はどれか。
ア:キャッシュフローの重視   イ:市場の特定化
ウ:垂直統合          エ:リードタイムの短縮

374
11-2 経営戦略

ニッチ戦略は、ほかの企業が参入していない隙間となっている市場
解説
に特化した戦略です。                解答:イ

基本情報技術者試験 平成 26 年秋

コアコンピタンスを説明したものはどれか。
ア:経営活動における基本精神や行動指針
イ:事業戦略の遂行によって達成すべき到達目標
ウ:自社を取り巻く環境に関するビジネス上の機会と脅威
エ:他社との競争優位の源泉となる経営資源

第 章 ●
コアコンピタンスとは、他社にまねのできない独自のノウハウや技
解説 11
術のことです。 解答:エ

情報化と経営
基本情報技術者試験 平成 26 年秋

BPO を説明したものはどれか。
ア: 自社ではサーバを所有せずに、通信事業者などが保有するサーバの処理
能力や記憶容量の一部を借りてシステムを運用することである。
イ:自社ではソフトウェアを所有せずに、外部の専門業者が提供するソフト
ウェアの機能をネットワーク経由で活用することである。
ウ:自社の管理部門やコールセンタなど特定部門の業務プロセス全般を、業
務システムの運用などと一体として外部の専門業者に委託することであ
る。
エ:自社よりも人件費が安い派遣会社の社員を活用することで、ソフトウェ
ア開発の費用を低減させることである。

BPO とは、自社の業務の一部を外部の専門業者に依頼することで
解説
す。 解答:ウ

375
基本情報技術者試験 平成 25 年秋

SWOT 分析を説明したものはどれか。
ア:企業の財務諸表を基に、収益性及び安全性を分析する手法である。
イ:経営戦略を立てるために、自社の強みと弱み、機会と脅威を分析する手
法である。
ウ:自社製品・サービスの市場での位置付けや評価を明らかにする手法である。
エ:自社製品の価格設定のために、市場での競争力を分析する手法である。

SWOT 分析は、自社の強みと弱み、機会と脅威の 4 つの要素で自


解説
社の環境を分析する手法です。 解答:イ

基本情報技術者試験 平成 24 年春

プロダクトポートフォリオマネジメント( PPM )における“花形”を説明し


たものはどれか。
ア:市場成長率、市場占有率ともに高い製品である。成長に伴う投資も必要
とするので、資金創出効果は大きいとは限らない。
イ: 市場成長率、市場占有率ともに低い製品である。資金創出効果は小さく、
資金流出量も少ない。
ウ:市場成長率は高いが、市場占有率が低い製品である。長期的な将来性を
見込むことはできるが、資金創出効果の大きさは分からない。
エ:市場成長率は低いが、市場占有率は高い製品である。資金創出効果が大
きく、企業の支柱となる資金源である。

花形は、市場が商品を理解し始める時期で、市場成長率、市場占有
解説
率ともに伸びますが、成長に伴う投資も必要になります。解答:ア

376
11-2 経営戦略

基本情報技術者試験 平成 27 年春

IT ベンダにおけるソリューションビジネスの推進で用いるバランススコア
カードの、学習と成長の KPI の目標例はどれか。ここで、ソリューション
とは“顧客の経営課題の達成に向けて、情報技術と専門家によるプロフェッ
ショナルサービスを通して支援すること”とする。
ア:サービスを提供した顧客に対して満足度調査を行い、満足度を5段階評
価で平均 3.5 以上とする。
イ:再利用環境の整備によってソリューション事例の登録などを増やし、顧
客提案数を前年度の 1.5 倍とする。
ウ:情報戦略のコンサルティングサービスに重点を置くために、社内要員
30 名を IT のプロフェッショナルとして育成する。
エ:情報戦略立案やシステム企画立案に対するコンサルティングの受注金額

第 章 ●
を、全体の 15%以上とする。 11

アは顧客の視点、イは業務プロセスの視点、エは財務の視点での目
解説
標例です。 解答:ウ

情報化と経営

377
★ ★ ★
11
3 データ分析ツール

●さまざまなグラフやツール
経営分析では、さまざまなデータ分析を行います。データ分析には、グラフを使
うと便利です。グラフ化することによって、ただ並べられた数値を見ただけでは気
づかなかった、データの規則性や関連性に気づくことがあります。ここでは、分析
に役立つグラフやツールを紹介します。

●散布図
2 つの項目を縦軸と横軸にとり、点のばらつき方からその関係性を調べるグラフ
を散布図といいます。ばらつき方により、正の相関、負の相関、無相関の 3 つに分
類できます。

〈散布図の例:店の売上と時間・気温・月の関係〉

右上がりは 右下がりは ばらばらは


「正の相関」 「負の相関」 「無相関」
売上

売上

売上

時間 気温 月

●ヒストグラム
データをいくつかの階 〈ヒストグラムの例:ある店の顧客年齢度数〉
級ごとに分けることに
(人)50
よって、データの分布を
40
調べる棒グラフをヒスト
顧客

30
グラムといいます。 20

10
未満

以上

10 10 20 30 40 50 60 70 年代

378
11-3 データ分析ツール

●管理図
異常なデータを発見するために使う下のような折れ線グラフを管理図といいま
す。管理限界線を設定することにより、それよりはみ出したデータは異常値と見な
します。

〈管理図の例:ある製品の製造時間と重さ〉

異常値
管理限界線
製品の重さ

  
平均

異常値

第 章 ●
時間

11
●パレート図

情報化と経営
データを値が大きい項目順に並べた棒グラフと、それぞれの値が全体に占める割
合を累計していった折れ線グラフを組み合わせたグラフを、パレート図といいます。
重要な項目が何であるかを把握することができ、ABC 分析によく使われます。

〈パレート図の例:不良品の ABC 分析〉

40 1

0.8
30
不良品数

累計割合

0.6
20
0.4
10
0.2

0 0
原因1 原因2 原因3 原因4 原因5 原因6

379
●特性要因図
特性(結果)と、それに影響を及ぼす要因(原因)との関係を整理して体系化し
た図を特性要因図といいます。大骨から中骨、小骨と原因を深堀りして因果
関係を記述していきます。形が魚の骨に似ていることから、フィッシュボー
ン図ともいいます。

〈特性要因図〉
要因(原因)

小骨

中骨

特性(結果)
小骨 小骨

中骨 中骨

要因(原因) 要因(原因)

これも ABC 分析

知っと エービーシー
A B C 分析とは、値が全体に占める割合によって、項目を割
合が高いものから順に A・B・C の 3 つのランクに分け、重要度
を分析する手法です。例えば商品ごとの売上データを ABC 分
析で分析すれば、売れ筋商品を把握できますし、不良品の原因
ごとにその発生件数を分析すれば、優先的に改善すべき点を把
握できます。

40 1

0.8
30
不良品数

累計割合

0.6
20
0.4
10
0.2

0 0
原因1 原因2 原因3 原因4 原因5 原因6

A区分 B区分 C区分

380
11-3 データ分析ツール

ココが
スキル
出る!
→ ABC 分析手法を適用する具体的な事例を理解しておこう。

●レーダチャート
データのバランスを調べるため、項目ごとに大きさや量を表した下のようなグラ
フをレーダチャートといいます。

〈レーダチャートの例:飲食店の満足度〉 価格
5
4
3
提供までの早さ 味

第 章 ●
2
1 11
0

情報化と経営
立地 接客

雰囲気
●決定表
決定表は、条件とそれに対する処理を表形式で表現したもので、
「デシジョンテー
ブル 」とも呼ばれます。
「条件」の欄には条件を書き込み、条件が成立するときには Yes の「 Y 」を、条件
が不成立のときには No の「 N 」を記入します。一方、
「動作」の欄にはそれらの条件
にしたがって実行される処理を書き込み、実行される処理には eXecute の「 X 」が
記入されます。execute は「実行する」という意味です。
条件がたくさんあったり、複雑だったりするときの記述手段として有効です。ま
た、プログラムに条件漏れがないかなどをチェックする際にもよく使われます。

〈提案内容に応じて賞金を決定する決定表〉

改善額10万円未満 Y Y N N

期間短縮1週間未満 Y N Y N

賞金: 500円 X − − −

賞金:1,000円 − X X −

賞金:3,000円 − − − X

381
●親和図法
親和図法は、収集した情報をグループ化し、解決すべき問題点を明確にする方法
です。要素が多数あって、問題点があいまいな場合に有効です。
手順は、特定のテーマに関して収集した情報をカードや付箋紙に記入し(下図で
は「元データ 」)、関連するカードごとに並べ、見出しを作成します。同じ作業を繰
り返し、枠線などを書き込んで図で表し、文書にまとめます。

〈親和図法〉

元データ
見出し
元データ
見出し 見出し
元データ
元データ 元データ
元データ
元データ 元データ 文書化
元データ
元データ 元データ
元データ
元データ 元データ
元データ

元データ

●デルファイ法
専門家の意見や経験を集約して、見解を得る予測技法です。他の技法では答えが
得られにくい未来予測のような問題に多く用いられます。以下の流れで実施します。

1.複数の専門家を回答者として選定

2.質問に対する回答結果をフィードバックし、再び質問

3.回答結果を統計的に処理し、分布と回答結果を提示

ココが
スキル
出る!
→各グラフの特徴、利用目的、読み取り方を理解しておこう。

382
11-3 データ分析ツール

基本情報技術者試験 平成 24 年春

パレート図を説明したものはどれか。
ア:原因と結果の関連を魚の骨のような形態に整理して体系的にまとめ、結
果に対してどのような原因が関連しているかを明確にする。
イ:時系列的に発生するデータのばらつきを折れ線グラフで表し、管理限界
線を利用して客観的に管理する。
ウ:収集したデータを幾つかの区間に分類し、各区間に属するデータの個数
を棒グラフとして描き、品質のばらつきを捉える。
エ:データを幾つかの項目に分類し、出現頻度の大きさの順に棒グラフとし
て並べ、累積和を折れ線グラフで描き、問題点を絞り込む。

アは特性要因図、イは管理図、ウはヒストグラムの説明です。 

第 章 ●
解説
 解答:エ
11

情報化と経営
基本情報技術者試験 平成 24 年秋

散布図のうち,
“負の相関”を示すものはどれか。
ア:            イ:
20 20

10 10

−20 −10 0 10 20 −20 −10 0 10 20

−10 −10

−20 −20

ウ:            エ:
20 20

10 10

−20 −10 0 10 20 −20 −10 0 10 20

−10 −10

−20 −20

負の相関を示すものは、右下がりのグラフです。 
解説
 解答:イ

20 20
383
10 10
基本情報技術者試験 平成 27 年春

ABC 分析手法の説明はどれか。
ア:地域を格子状の複数の区画に分け、様々なデータ(人口、購買力など)
に基づいて、より細かに地域分析をする。
イ:何回も同じパネリスト(回答者)に反復調査する。そのデータで地域の
傾向や購入層の変化を把握する。
ウ:販売金額、粗利益金額などが高い商品から順番に並べ、その累計比率に
よって商品を幾つかの階層に分け、高い階層に属する商品の販売量の拡
大を図る。
エ:複数の調査データを要因ごとに区分し、集計することによって、販売力
の分析や同一商品の購入状況などの分析をする。

ABC 分析では、値が全体に占める割合によって項目を割合が高い
解説
ものから並べ、重要度を分析する手法です。 解答:ウ

384
11-4 システム戦略
★ ★ ★
11
4 システム戦略

●情報システム戦略
企業活動において、情報は非常に重要です。情報システム戦略は、IT を活用す
ることによって、どのように経営戦略を実現していくかを描いたものです。情報を
どのように経営に活かすか、具体的にはどのような手法や情報システムがあるのか
を見ていきましょう。

●経営管理システム

第 章 ●
11
企業の経営を管理するための代表的な情報システムには、以下のようなものがあり
ます。

情報化と経営
〈経営管理システム 〉

システム 説明
イーアールピー エ ン タ ー プ ラ イ ズ
E R P( E n t e r p r i s e 企業全体の経営資源を統合的に管理するためのシステム。
リ ソ ー ス プ ラ ン ニ ン グ
Resource Planning ) 受注管理や生産管理、販売管理などの業務ごとのシステム
で管理するのではなく、1 つのシステムで一元管理するこ
とによって、経営資源を有効に活用できる
エスシーエム サ プ ラ イ チ ェ ー ン
S CM( S upply C hain 商品を作るための資材の調達から製造、流通、販売までの
マ ネ ジ メ ン ト
Management ) 一連のプロセスを管理するシステム。プロセスごとでなく
全体で管理し、関わる部門や企業の間で情報を共有するこ
とによって余分な在庫を減らしたり、コストを削減したり
できる
エスエフエー セ ー ル ス フ ォ ー ス
S F A( S ales F orce 営業活動の状況を記録し、その情報を共有したり分析した
オ ー ト メ ー シ ョ ン
Automation:営業支援 りするためのシステム。顧客訪問日、営業結果などの履歴
システム ) を管理するコンタクト管理機能などをもち、見込み客や既
存客に対して効果的な営業活動を行うことができる
シーアールエム カ ス タ マ ー
C R M( C u s t o m e r 顧客に関する情報を集めて分析し、長期的視点から顧客と
リ レ ー シ ョ ン シ ッ プ
R e l a t i o n s h i p 良好な関係を築くためのシステム。自社の顧客として囲い
マ ネ ジ メ ン ト
Management ) 込みを行い、収益の拡大を図る手法である
アールエスエス リ テ ー ル サ ポ ー ト
RSS( Retail Support 卸売業者・メーカが、小売店の経営活動を支援するシステ
シ ス テ ム
System:小売店支援シ ム。小売店の売上と利益を伸ばすことによって、自社との
ステム ) 取引拡大につなげる

385
ココが
出る! 用語
[ ERP ]:経営資源を統合的に管理するシステム
[ SCM(サプライチェーンマネジメント )
]:調達から販売まで
の一連のプロセスを全体で管理し、時間の短縮やコストの削減
を図るシステム
[ SFA ]:営業活動の情報を共有・分析するシステム。営業活
動の履歴を管理するコンタクト管理機能などをもつ
[ CRM ]
:顧客情報を分析し、収益の拡大を図るためのシステム

●流通管理システム
企業から顧客へ商品が行き渡るまでの過程を「流通」といいます。流通を管理す
るシステムには、以下のものがあります。

〈流通管理システム 〉

システム 説明

トレーサビリティ 商品の生産から流通までの履歴情報を追跡できるシステム。
システム 例えば消費者は食品の産地や育成方法を、生産者は食品に何
か問題が発生したときの原因を調べることができる
ポ ス ポ イ ン ト オブ
P OS( P oint O f 店舗のレジで、バーコードなどによって商品の販売情報を記
セ ー ル ス
Sales )システム 録するシステム。販売情報を即時に知ることができ、在庫管
理などに反映できる

●生産工程の自動化システム
商品の設計や製造など、生産工程を自動化するためのシステムとして、以下のも
のがあります。

〈生産管理システム 〉

システム 説明
キ ャ ド コ ン ピ ュ ー タ エイデッド デ ザ イ ン
CAD( Computer Aided Design ) コンピュータを使って、製品の形状や
構造などのデータから、製品の設計図
面を作るシステム
エフエー
FA コンピュータの制御によって、工場の
ファクトリー オ ー ト メ ー シ ョ ン
( Factory Automation ) 機械を自動的に動かすシステム

386
11-4 システム戦略

これも MRP

知っと エムアールピー マテリアル リクワイアメンツ プランニング
M R P( Material Requirements Planning )は生産管理手
法の 1 つで、生産が予定されている製品の部品表と在庫情報か
ら資源の発注量と発注時期を決定する方法です。予想される需
要を事前に反映させることで、効率的な在庫管理を実現します。

●その他の便利な技術やシステム
これまで紹介したシステムの他にも、さまざまなシステムが活用されています。

〈その他のシステム 〉

システム 説明

第 章 ●
ジーピーエス
G P S システム 人工衛星を利用して位置情報を地図上に表示するシステ 11
ム。カーナビなどに使われる
アイシー
I C カード IC チップ(半導体集積回路)を薄いカードに埋め込んで、

情報化と経営
情報を記録できるようにしたカード。多くの情報を記録
できるので、データを暗号化でき、そのために偽造され
にくい
アールエフアイディー
RFID IC タグと呼ばれる小さなチップに製品情報や流通経路を
記録し、無線電波を使って記録された情報を梱包の外か
ス イ カ パ ス モ
ら読むことができる。Suica や Pasmo などの非接触型
カードに利用
イーディーアイ
EDI 受発注や見積もり、決済など商取引のためのデータを標
準的な書式に統一して、ネットワークを介して企業間で
交換する仕組み

テザリング 携帯電話端末をアクセスポイントのように使って、PC や
ゲーム機からインターネットを利用するデータ通信の仕
組み

スマートグリッド 通信と情報処理技術によって、発電と電力消費を総合的
に制御し、再生可能エネルギーの活用、安定的な電力供給、
最適な需給調整を図る
シージーエム コ ン シ ュ ー マ
C G M( C o n s u m e r 個人が制作したディジタルコンテンツを配信したり、利
ジェネレイティッド メ デ ィ ア
Generated Media ) 用者同士で共有できる仕組み

387
これも デビットカード

知っと 買い物をした時点では現金を払わず、後日銀行の口座から料金
が引き落とされるクレジットカードが有名ですが、買い物した
時点で銀行口座から直接引き落とされるデビットカードという
カードもあります。

ココが
出る! 用語
[ CAD ]
:コンピュータを使って設計図面を作成
[ GPS システム ]:位置情報を地図上に表示するシステム
[ RFID ]
:無線電波を使って IC タグの情報を読み書きする仕
組み
[ EDI ]
:商取引のためのデータを標準的な書式に統一し、ネッ
トワーク経由で交換する仕組み
[ デビットカード ]
:買い物した時点で口座から直接引き落と
す決済カード
[ スマートグリッド ]
:発電と電力消費を総合的に制御し最適

[ CGM ]
:個人が制作コンテンツを配信、利用者同士で共有す
る仕組み

●電子商取引
インターネットの普及により、ビジネスシーンでもインターネットを使ったサー
ビスやツールが使われるようになりました。インターネットを使って商品やサービ
イーシー エレクトロニック コ マ ー ス
スを売買することを電子商取引( EC:Electronic Commerce )といいます。売買
に伴う手続きがデータ化され、ネットワークを通じてやりとりができるため、コス
トの削減や業務の効率化を実現できます。
電子商取引は、取引相手によって、以下の種類に分類されます。

388
11-4 システム戦略

〈電子商取引の種類〉

種類 意味 例
ビー ツー ビー
B to B 企業と企業によ インターネット上に設けられた、
ビ ジ ネ ス ツー ビ ジ ネ ス
( Business to Business ) る取引 中間流通業者を介さず、売り手
と買い手が直接取引を行う e マー
ケットプレイス
ビー ツー シー
B to C 企業と個人によ ネットショッピングや、インター
ビ ジ ネ ス ツー コ ン シ ュ ー マ
( Business to Consumer ) る取引 ネットを使って銀行のサービスを
利用するネットバンキング
シー ツー シー
C to C 個人と個人によ インターネットを使ってオーク
コ ン シ ュ ー マ ツー コ ン シ ュ ー マ
( Consumer to Consumer ) る取引 ションを行うネットオークション
ジー ツー シー
G to C 政府・自治体と インターネットを使った確定申告
ガ バ メ ン ト ツー シ チ ズ ン
( Government to Citizen ) 個人による取引 や住民票の申請

第 章 ●
ジー ツー ビー
G to B 政府・自治体と インターネットを使った資材の調 11
ガ バ メ ン ト ツー ビ ジ ネ ス
( Government to Business ) 企業による取引 達や入札

情報化と経営
これも ロングテール

知っと インターネットショッピングでは、売上の全体に対して、あま
り売れない商品群の売上合計が無視できない割合になっていま
す。この現象をロングテールといいます。実店舗と違い、商品
棚の制限を受けず多くの品揃えが可能なため、多品種を少量販
売できるようになりました。

これも 逆オークション

知っと インターネット上で、一般消費者が買いたい品物と購入条件を
提示し、売り手がそれに応じる取引形態を逆オークションとい
います。

ココが
出る! 用語
[ e マーケットプレイス ]
:インターネット上で売り手と買い
手が直接取引

389
ココが
スキル
出る!
→電子商取引には、取引相手によってどのような例があるのか
を理解しておこう

基本情報技術者試験 平成 21 年秋

CRM を説明したものはどれか。
ア:卸売業者・メーカが、小売店の経営活動を支援してその売上と利益を伸
ばすことによって、自社との取引拡大につなげる方法である。
イ:企業全体の経営資源を有効かつ総合的に計画して管理し、経営の高効率
化を図るための手法である。
ウ:企業内のすべての顧客チャネルで情報を共有し、サービスのレベルを引
き上げて顧客満足度を高め、顧客ロイヤルティの最適化に結び付ける考
え方である。
エ:生産、在庫、購買、販売、物流などのすべての情報をリアルタイムに交
換することによって、サプライチェーン全体の効率を大幅に向上させる
経営手法である。

CRM は、顧客に関する情報を集めて分析し、サービスのレベルを
解説
引き上げて顧客満足度を高め、顧客と良好な関係を築くための考え
方です。アは RSS、イは ERP、エは SCM の説明です。    解答:ウ

基本情報技術者試験 平成 22 年春

RFID を利用したものはどれか。
ア:IC タグ  
イ:磁気カード  
ウ:バーコード  
エ:メモリカード

RFIDを利用したものは、ICタグです。製品情報や流通経路を記録し、
解説
無線電波を使って読み取ります。           解答:ア

390
11-4 システム戦略

基本情報技術者試験 平成 27 年春

電子自治体において、G to B に該当するものはどれか。
ア:自治体内で電子決裁や電子公文書管理を行う。
イ:自治体の利用する物品や資材の電子調達、電子入札を行う。
ウ:住民基本台帳ネットワークによって、自治体間で住民票データを送受信
する。
エ:住民票、戸籍謄本、婚姻届、パスポートなどを電子申請する。

G to B( Government to Business )とは、政府・自治体と企業


解説
による取引で、電子入札や電子調達があります。 解答:イ

第 章 ●
11

情報化と経営

391
★ ★ ★
11
5 効率的なIT 投資

● IT サービスの種類
企業活動に IT を活用するといろいろと便利ですが、サーバや通信機器などの機
材やソフトウェアをすべて自社で用意するには、多額のお金が必要です。また、そ
れらを継続して管理する人員も必要です。そこで、それらの機材やソフトウェアを
事業者から提供してもらうことにより、効率的な IT 投資を実現するサービスがあ
ります。

これも ROI( Return On Investment )



知っと 投資利益率ともいい、投下した資本に対し、どれだけの利益が
得られたかを示す指標です。売上増やコスト削減などによって
創出された利益額を投資額で割って計算します。ROI が大きい
と収益性が高いといえます。

●ハウジングサービス
サーバや通信機器などを設置する場所を提供するサービスをハウジングサービ
スといいます。利用者は、自分で用意したサーバや通信機器を、提供された施
設に設置します。社内にサーバを設置するよりも、ネットワークや家賃・電力
など施設の維持管理にかかるコストを削減できます。

●ホスティングサービス
サーバや通信機器を貸し出すサービスをホスティングサービスといいます。ハ
ウジングサービスと異なり、サーバや通信機器は、サービスを提供する側が用
意します。そのため利用者には、サーバの管理は必要ありません。ホスティン
グサービスは、レンタルサーバサービスということもあります。

エーエスピー
●AS P
インターネットを通じて、利用者にアプリケーションソフトウェアを提供
エーエスピー ア プ リ ケ ー シ ョ ン サ ー ビ ス
す る 事 業 者、 ま た は そ の サ ー ビ ス の こ と を ASP( Application Service

392
11-5 効率的な IT 投資

プ ロ バ イ ダ
Provider )といいます。アプリケーションソフトウェアは ASP のサーバ内に
あるので、利用者は自分でソフトを管理する必要がありません。

サ ー ス
● SaaS
インターネットを通じて、利用者にソフトウェアの機能を提供するサービスを
サース ソ フ ト ウ ェ ア アズ ア サ ー ビ ス
SaaS
(Software as a Service)
といいます。
ASPが利用者ごとに個別にサー
バやデータベースを用意するのに対して、SaaS では複数の利用者でそれらを
共有するマルチテナント方式であるという違いがあります。そのため、ASP
よりさらに費用を安く抑えられます。

ビーワイオーディ
これも BYOD

知っと

第 章 ●
従業員が個人で所有する PC やスマートフォンを業務のために
ブリング ユ ア オ ウ ン デ バ イ ス
使用することを BYOD( Bring Your Own Device )といいま 11
す。企業側は、情報機器購入コストを節約できる反面、情報漏
えいのリスクも大きくなります。

情報化と経営
エスオーエー
これも SOA

知っと 既存のアプリケーションソフトウェアを部品化し、サービス
単位で組み合わせて新しいシステムを作る設計手法を SOA
サ ー ビ ス オリエンテッド ア ー キ テ ク チ ャ
( Service Oriented Architecture:サービス指向アーキテク
チャ)といいます。サービスを組み替えることでビジネスの変
化に対応しやすくなり、利用者の要望に合ったシステムを短期
間で開発することができます。

ココが
出る! 用語
[ハウジングサービス ]:機器の設置場所を提供する
[ホスティングサービス ]
:Web サーバのデータ領域を提供する
[ ASP ]
:インターネットを通じてソフトを提供
[ SaaS ]
:インターネットを通じてソフトの機能を提供。マ
ルチテナント方式

393
ココが
用語
出る!
[ BYOD ]:個人所有の情報機器を業務に使用
[ SOA ]
:既存のソフトを部品化し、組み合わせてシステムを
作る設計手法
スキル
→ ROI を計算できるようにしておこう

基本情報技術者試験 平成 23 年秋

利用者が、インターネットを経由してサービスプロバイダ側のシステムに接
続し、サービスプロバイダが提供するアプリケーションの必要な機能だけを
必要なときにオンラインで利用するものはどれか。
ア:ERP    
イ:SaaS  
ウ:SCM  
エ:XBRL

インターネットを通じて、利用者にソフトウェアの「機能だけ」を
解説
提供するサービスは SaaS です。           解答:イ

基本情報技術者試験 平成 26 年秋

BYOD( Bring Your Own Device )の説明はどれか。


ア:会社から貸与された情報機器を常に携行して業務にあたること
イ:会社所有のノート PC などの情報機器を社外で私的に利用すること
ウ:個人所有の情報機器を私的に使用するために利用環境を設定すること
エ:従業員が個人で所有する情報機器を業務のために使用すること

BYOD とは、個人で所有する情報機器を業務に使用することです。
解説
解答:エ

394
11-5 効率的な IT 投資

基本情報技術者試験 平成 26 年春

SOA を説明したものはどれか。
ア:業務体系、データ体系、適用処理体系、技術体系の四つの主要概念から
構成され、業務とシステムの最適化を図る。
イ:サービスというコンポーネントからソフトウェアを構築することによっ
て、ビジネス変化に対応しやすくする。
ウ:データフローダイアグラムを用い、情報に関するモデルと機能に関する
モデルを同時に作成する。
エ:連接、選択、反復の三つの論理構造の組合せで、コンポーネントレベル
の設計を行う。

SOA は、既存のソフトウェアをサービスという単位で扱い、これ
解説

第 章 ●
らを組み合わせてシステムを作る設計手法です。 解答:イ
11

情報化と経営

395
★ ★ ★
11
6 企業会計

●企業とお金
企業は、お金を儲けなくてはなりません。もちろん企業の存在意義は他にもあり
ますが、お金を儲けられないと、企業活動を続けること自体が難しくなります。商
品やサービスをたくさん売って売上を上げていたとしても、費用( コスト )が売上
以上にかかっていたら儲けは出ません。そのため企業は常に、売上と費用の両方を
管理していく必要があります。売上や費用などのお金の出納を記録し、管理するこ
とを会計といいます。

●売上高と費用
商品やサービスを売った金額を売上高、商品を作ったり運んだりするのにかかっ
た金額を費用、売上高から費用を引いた、いわゆる「儲けた金額」を利益といいます。

《利益を求める公式》

 利益=売上高-費用

費用には、人件費や家賃、光熱費など、商品の生産数とは関係なくかかる固定
費と、材料費や運搬費など生産数に比例して増える変動費があります。

《費用を求める公式》

 費用=固定費 + 変動費

●損益分岐点
利益を得るためには、
「商品を何個以上売れば利益が出るのか」や、逆に「100 個
しか売れないことが想定される商品の場合、固定費や変動費をどのくらいに抑えれ
ば利益が出るのか」といった分析が必要です。そのためには、売上高と費用がちょ
うど同じ金額になるところ、つまり利益が「0」になるところである損益分岐点を知

396
11-6 企業会計

る必要があります。損益分岐点は、固定費と変動費を足した費用(総費用)と、売
上高をグラフにしたときに、ちょうど交差する点のことです。

〈損益分岐点〉
損益分岐点 売上高
利益

売上高・各費用
総費用

変動費

固定費

売上

損益分岐点は、次の式で求めることができます。変動費率とは、売上高に対する

第 章 ●
変動費の割合です。
11
《損益分岐点を求める公式》

情報化と経営
 損益分岐点=固定費÷(1 -変動費率)

ココが
用語
出る!
[損益分岐点]:損益分岐点の売上高は、固定費と変動費の和に
等しい
スキル
→損益分岐点を計算して求められるようにしておこう。

ざいむしょひょう
●財務諸表
企業が営業活動などで行った取引を記録し、企業の財務状況やどのくらい儲けた
そんえきけいさんしょ
かを示すために作成する資料を財務諸表といいます。代表的なものに、損益計算書
たいしゃくたいしょうひょう
と貸 借 対 照 表があります。

●損益計算書
損益計算書は、企業が会計期間中にどのくらい儲けたのかを表す、経営の成績
表です。

397
〈損益計算書の例〉

単位:億円
売上高 100 人件費や材料費など、
売上原価 75 製品やサービスを構成するのに必要な原価

売上総利益 25 売上高−売上原価
(粗利益)
販売費及び一般管理費 15 販売部門や管理部門で生じた費用

営業利益 10 売上総利益−販売費及び一般管理費
営業外利益 2 金融上の収益や余資を運用した結果の収益
営業外費用 5 投資活動や財務活動など、本業以外にかかわる費用

経常利益 7 営業利益+(営業外収益−営業外費用)
特別利益 0 固定資産売却益など、例外的に発生した利益
特別損失 1 固定資産売却損など、例外的に発生した損失

税引前当期純利益 6 経常利益+特別利益−特別損失
法人税等 2 法人が得た所得(売上−必要経費)に課税される税金

当期純利益 4 税引前当期純利益−法人税等

●貸借対照表
貸借対照表は、企業のもっている資産や負債などを記載した書類です。企業が
たくさんお金をもっていても、実はそのほとんどが借りたお金であれば、財政
状態がよいとはいえません。貸借対照表ではそのような、企業の財政状態が分
かります。

ココが
用語
出る!
[損益計算書]:一定期間における企業の経営成績
[貸借対照表]:一定時点における企業の資産や負債を示す。財
務状態を把握できる
スキル
→損益計算書の各項目の意味と関係を理解しておこう。

398
11-6 企業会計

●在庫評価方法
普通、製造された商品はすぐに全部売れてしまうことはなく、一部は在庫として
たなおろし
倉庫に保管されます。この在庫は、企業の棚卸資産(販売目的で保有している資産)
として金額に換算して決算書に記載されます。ただし、
商品の仕入単価は時期によっ
て異なることもあるため、在庫として残っている商品の仕入単価をいつの時点の単
さきいれさきだしほう あといれさきだしほう
価にするかで評価方法が変わります。評価方法には先入先出法、後入先出法、総平
均法があります。

〈在庫評価方法〉

方法 説明

先入先出法 先に仕入れた商品から先に出荷したものと見なして計算する方法

後入先出法 後に仕入れた商品から先に出荷したものと見なして計算する方法

第 章 ●
総平均法 対象期間中に仕入れた商品の総額を、総仕入れ数量で割って平均
単価を計算する方法 11

情報化と経営
部品の受払記録が以下の表の場合について考えてみます。

取引日 取引内容 数量(個) 単価(円) 金額(円)


4月1日 前月繰越 2,000 100 200,000 
4月5日 購入 3,000  130 390,000 
4 月 10 日 払出 3,000   

先入先出法の場合、4 月 10 日払出 3,000 個は、4 月 1 日前月繰越の 2,000


個と 4 月 5 日購入の 3,000 個のうちの 1,000 個が割り当てられます。

 払出合計:2,000 個× 100 円 + 1,000 個× 130 円= 330,000 円


 払出単価:330,000 円÷ 3,000 個= 110 円

後入先出法の場合、4 月 10 日払出 3,000 個は、4 月 5 日購入の 3,000 個が割


り当てられます。

 払出合計:3,000 個× 130 円= 390,000 円


 払出単価:390,000 円÷ 3,000 個= 130 円

総平均法の場合、これまでの購入総額を、総仕入数量で割って計算します。

399
 購入総額:2,000 個× 100 円+ 3,000 個× 130 円= 590,000 円
 払出単価:590,000 円÷(2,000 + 3,000)個= 118 円

ココが
スキル
出る!
→それぞれの評価方法に応じて、在庫商品の仕入単価を計算で
きるようにしておこう。

基本情報技術者試験 平成 22 年春

損益分岐点の特性を説明したものはどれか。
ア: 固定費が変わらないとき、変動費率が低くなると損益分岐点は高くなる。
イ: 固定費が変わらないとき、変動費率の変化と損益分岐点の変化は正比例
する。
ウ: 損益分岐点での売上高は、固定費と変動費の和に等しい。
エ: 変動費率が変わらないとき、固定費が小さくなると損益分岐点は高く
なる。

損益分岐点では売上高と費用の額は等しくなります。よって、費用
解説
である固定費と変動費の和に等しくなります。      解答:ウ

基本情報技術者試験 平成 25 年春

財務諸表のうち、一定時点における企業の資産、負債及び純資産を表示し、
企業の財政状態を明らかにするものはどれか。
ア: 株主資本等変動計算書
イ:キャッシュフロー計算書
ウ:損益計算書
エ:貸借対照表

一定時点における企業の資産や負債を示す財務諸表は、貸借対照表
解説
です。 解答:エ

400
11-1 企業活動

基本情報技術者試験 平成 23 年特別

商品 A を先入先出法で評価した場合、当月末の在庫の評価額は何円か。

受払個数 単価
日付 摘要
(円)
受入 払出

1 前月繰越 10 100

4 仕入 40 120

5 売上 30

7 仕入 30 130

10 仕入 10 110

30 売上 30

ア:3,300  

第 章 ●
イ:3,600   11
ウ:3,660  
エ:3,700

情報化と経営
先入先出法は、先に仕入れた商品から順に出していきます。5 日の
解説
「30 個の払出し」は、
「繰越在庫」から 10 個、4 日「仕入」分から 20
個払出します。30日の「30個の払出し」は、4日の残りから20個、7日
「仕
入」分から 10 個払出します。よって、月末の在庫の評価額は、7 日「仕入」
分の 20 個 × 130 円+ 10 日「仕入」分の 10 個× 110 円= 3,700 円と
なります。 解答:エ

401
★ ★ ★
11
7 法律と権利

●企業と法律
企業活動において、法律は守らなければなりません。
そのためには、企業活動に関する法律を知っておく必要があります。以下に代表
的な法律を紹介します。

●個人情報保護法
氏名・生年月日・住所など、個人を特定できる情報(個人情報)の取扱いにつ
いて定めた法律を個人情報保護法といいます。個人情報を扱う場合は、利用目
的を明示し、その目的以外で利用することが禁止されています。また、本人の
同意なしに、第三者へ個人情報を提供してはいけません。

●労働基準法
従業員の賃金や労働時間、休日などについて、最低限の労働基準を定めた法律
を労働基準法といいます。労働者を守るための法律であり、
正社員だけでなく、
アルバイトやパート社員にも適用されます。

●不正競争防止法
市場で公正な競争が行われることを保護する法律を不正競争防止法といいま
す。
「企業が秘密にしている営業上のノウハウを他社へ漏らす」、
「コピー商品を
販売する」、「食品の産地を偽装する」などの行為は、この法律に照らして違法
行為となります。

●不正アクセス禁止法
パスワードでアクセス制限が行われているコンピュータに不正にアクセスする
行為を不正アクセスといい、不正アクセスを禁止する法律を不正アクセス禁止
法といいます。
「他人の ID とパスワードを無断で利用してコンピュータにアク
セスする」、「他人の ID とパスワードを、無断で第三者に教える」などの行為は
違法行為となります。

402
11-7 法律と権利

ココが
スキル
出る!
→それぞれの法律で、どのような行為が違法行為にあたるのか
を理解しておこう

●企業と労働者の契約形態
ここでは、企業で働く「人」である労働者に関する法律や権利について説明します。
企業が労働者を雇う場合、企業と労働者の間で雇用契約を結びます。雇用形態には、
次の種類があります。

●直接雇用契約 〈直接雇用契約〉

第 章 ●
企業と労働者の間で直接に雇用契約を (株)××
雇用契約 11
結ぶ雇用形態を直接雇用契約といいま
す。 指揮・命令

情報化と経営
これも 裁量労働制

知っと 特定の専門業務や企画業務において、実際の労働時間に関係なく、
労使間であらかじめ取り決めた労働時間を働いた時間とみなし給
与を支払う制度です。

これも ワークシェアリング

知っと
従業員1人当たりの勤務時間を短縮し、仕事の配分を見直すこと
で雇用を確保する取組みをワークシェアリングといいます。

●派遣契約
企業と労働者の間に派遣会社が入る派遣契約があります。労働者は、実際に働
く企業ではなく、派遣会社と契約を結び、給料も派遣会社からもらいます。仕
事内容に関する指揮・命令は、直接雇用の社員と同じように、実際に働く企業
から受けます。ただし、派遣先での時間外労働に関する法令上の届出などは派
遣元が責任をもって管理します。派遣では、労働基準法に加えて、労働者派遣

403
法という法律に従います。労働者は派遣先企業の指揮命令を受けて労働に従事
するほか、派遣先への転職の自由、派遣会社には二重派遣の禁止などの条件が
定められています。

○○派遣
〈派遣契約〉

派遣契約 派遣元 雇用契約

(株)××

指揮・命令

派遣先

これも 請負契約と準委任契約

知っと 請負契約とは、労働者が企業から「仕事をまるごと請け負う」
という契約です。企業は、
「仕事をしたこと」に対してお給料を
払うのではなく、
「仕事を完成させた結果」に対して、その対価
を払います。そのため、例えば発注元責任者の指揮命令に従っ
て設計書を作成するなど、作業の実態が請負契約に沿わない場
合、偽装請負とみなされます。
準委任契約は、専門家がコンサルティング作業などの「仕事を
すること」を約束する契約です。請負契約とは異なり仕事の完
成は約束しません 〈請負契約〉
○○請負

が、 専 門 家 と し て
一般的に期待され
雇用契約
請負契約
るレベルの注意義
(株)
××
指揮・命令
務(善管注意義務)
を果たさなければ
なりません。

ココが
出る! 用語
[ ワークシェアリング ]:1 人当たりの勤務時間を短縮、仕事
配分を見直し雇用確保
[準委任契約]:善管注意義務をもって作業を受託

404
11-7 法律と権利

ココが
スキル
出る!
→労働者派遣法で定められた、労働者の働かせ方を理解してお
こう。

●知的財産権とは
企業は市場を分析したり、商品の研究開発をしたりするなどして、独自の商品や
サービスで売上を上げます。しかし、独自に開発した商品が大ヒットとなっても、
すぐに他社からまねをした商品が売り出されると、売れ行きは落ちてしまい、予想
した利益が得られなくなってしまう可能性があります。このような状態では、企業

第 章 ●
に新しい商品を開発する意欲がなくなってしまいます。
11
そのため、人や企業が考えて作ったものを、その人や企業の財産として保護する
知的財産権という考え方があります。知的財産権は法律によって守られ、第三者が

情報化と経営
勝手にまねしたり、売ったりすることが禁止されています。知的財産権には次のよ
うな種類があります。

〈知的財産権〉

知的財産権 著作権

特許権 意匠権
産業財産権
実用新案権 商標権

●著作権
著作権とは、自分の思想・感情を創作的に表現した文章、音楽、絵画、写真、
コンピュータプログラム、データベースなどの著作物を創作したことによって、
著作者に自動的に発生する権利のことです。そのため、著作物の権利に関する
特段の取決めをせず、プログラム開発を行った場合、プログラムの著作権は作
成した受注側に帰属します。コンピュータプログラムは、プログラム言語で書
かれたソースプログラム、実行可能形式のオブジェクトプログラム、アプリケー
ションプログラムなど、いずれも著作物ですが、アルゴリズム、プログラム言
語および規約は著作物とは見なされません。著作権は著作権法によって守られ
ます。以下のような行為は、著作権法の違法行為となります。

405
・私的利用の範囲を超えて著作物を無断でコピーする
・演劇や音楽の著作物を、公共の場で無断で上演・演奏する
・他人の撮影した写真を勝手に Web サイトで公開する

ココが
スキル
出る!
→著作権法では、何が保護の対象となるのか、またどのような
行為が違法行為にあたるのかを理解しておこう

●産業財産権
工業製品の発明やデザインは、特許庁に申請し、登録することによって産業財
産権が適用され、保護されます。産業財産権には次の 4 種類があり、それぞれ
の権利に対応する法律が用意されています。

・特許権
新しいアイデアや発明には特許権があり、特許法によって保護されます。

これも 特許クロスライセンス

知っと 特許クロスライセンスとは、特許権の権利者どうしが相互に相手
の特許権を使用できるように契約することです。また、技術分野
や製品分野を特定し、その分野に関するすべての特許権を使用で
きるようにすることを包括的クロスライセンスといいます。

・実用新案権
商品の形状や構造、組み合わせ方など、商品をよりよくするためのアイデア
には実用新案権があり、実用新案法によって保護されます。

・意匠権
デザインには意匠権があり、意匠法で保護されます。

・商標権
事業者の取り扱う商品やサービスを、他者の商品やサービスと区別するため
の文字・図形・記号やロゴマークには商標権があり、商標法によって保護さ

406
11-7 法律と権利

れます。

ココが
スキル
出る!
→それぞれの産業財産権では、どのようなものが保護されるの
かを理解しておこう

基本情報技術者試験 平成 21 年秋

他人の ID とパスワードを使って、インターネットでオンラインショップの
Web サーバに侵入し、会員情報を窃取しようとした。この行為を違法とす
る法律はどれか。

第 章 ●
ア:刑法          
11
イ:電気通信事業法  
ウ:不正アクセス禁止法   

情報化と経営
エ:プロバイダ責任制限法

他人の ID とパスワードを無断で利用してコンピュータにアクセス
解説
する行為は、不正アクセス行為として処罰の対象となります。
解答:ウ

基本情報技術者試験 平成 24 年秋

派遣元会社 A 社と派遣先会社 B 社が派遣契約を結び、A 社は社員である N


氏を派遣した。労働者派遣法に照らして適切な行為はどれか。
ア:B 社の繁忙期と N 氏の休暇申請が重なったので、B 社から直接 N 氏に休
暇の変更を指示した。
イ:N 氏からの作業環境に関する苦情に対し、B 社は雇用関係にないので,
対応は A 社だけで行った。
ウ:N 氏は派遣期間中の仕事に関する指示を、B 社の担当者から直接受ける
ことにした。
エ:派遣期間中に N 氏の作業時間が空いたので、B 社は派遣取決め以外の作
業を依頼した。

407
労働者に対する指揮命令は派遣先の会社にあるため、ウは正しい。ア
解説
の休暇の変更は、派遣元と派遣先で合意する必要があるため誤り。イ
の苦情も、
両社で連携して処理にあたる必要があるため誤り。派遣先会社は、
派遣取決め以外の作業を依頼してはいけないため、エも誤り。 解答:ウ

基本情報技術者試験 平成 27 年春

従業員 1 人当たりの勤務時間を減らして社会全体の雇用維持や雇用機会増加
を図るものはどれか。
ア:カフェテリアプラン   
イ:フリーエージェント制
ウ:ワークシェアリング   
エ:ワークライフバランス

ワークシェアリングにより、1 人当たりの勤務時間を短縮、仕事配
解説
分を見直し雇用確保を図ります。 解答:ウ

基本情報技術者試験 平成 23 年秋

著作権法において、保護の対象とならないものはどれか。
ア:インターネットで公開されたフリーソフトウェア
イ:ソフトウェアの操作マニュアル
ウ:データベース
エ:プログラム言語や規約

プログラム言語や規約は、著作権法の保護対象とはなりません。フ
解説
リーソフトウェア(「11-8 ソフトウェアの利用形態」参照)は自由に
使うことができますが、著作権が放棄されていない場合は著作物として保
護対象となります。 解答:エ

408
11-7 法律と権利

基本情報技術者試験 平成 23 年特別

特許法による保護の対象となるものはどれか。
ア:自然法則を利用した技術的思想の創作のうち高度なもの
イ:思想又は感情を創作的に表現したもの
ウ:物品の形状、構造又は組合せに係る考案
エ:物品の形状、模様又は色彩など、視覚を通じて美感を起こさせるもの

特許法では、「自然法則を利用した技術的思想の創作のうち高度な
解説
もの」と定義された発明を保護対象としています。 解答:ア

第 章 ●
11

情報化と経営

409
★ ★
11
8 ソフトウェアの利用形態

●オープンソースソフトウェア
オープンソースソフトウェアとは、プログラムの作成者がソースコードを公開し、
誰でも改変や再配布ができるようにしたソフトウェアのことです。ただし著作権は
放棄されていないので、著作権はあくまで作成者にあります。また、必ずしも無料
ではありません。代表的なオープンソースソフトウェアには、UNIX 系の OS であ
リナックス
る Linux などがあります。

●オープンソースソフトウェアの定義
オーエスアイ オ ー プ ン ソ ー ス
オ ー プ ン ソ ー ス 文 化 を 啓 蒙 す る 非 営 利 組 織 で あ る O SI( Open Source
イ ニ シ ア チ ブ オーエスディー ザ オープン
Initiative )では、オープンソースソフトウェアの定義( O SD:The Open
ソ ー ス デ フ ィ ニ シ ョ ン
Source Definition )を次のように定めています。

1 . 再配布の自由を許可する
2 . ソースコードの再配布を許可する
3 . 派生ソフトウェアの配布を許可する
4 . 作者のソースコードの完全性を守る
5 . 個人やグループに対して差別を禁止する
6 . 利用する分野の差別を禁止する
7 . 再配布時に、追加ライセンスを必要としない
8 . 特定のソフトウェアに依存しない
9 . 同じ媒体で配布される他のソフトウェアを制限しない
10 . 特定の技術やインタフェースに依存しない

●フリーウェア、フリーソフト
無料で自由に利用できるソフトウェアです。改変や再配布は禁止されていること
が多いです。著作権は、作成者が保持しています。

410
11-8 ソフトウェアの利用形態

●シェアウェア
利用期間が限定されているか、または一部の機能だけが無料で試用できるソフト
ウェアです。利用を継続する場合や、
全機能を利用したい場合には料金を支払います。
著作権は、作成者が保持しています。

ピーディーエス
●パブリックドメインソフトウェア( P DS )
著作権が放棄されたソフトウェアで、自由に改変したり再配布したりすることが
可能です。

ココが
用語
出る!

第 章 ●
[ オープンソースソフトウェア ]
:一定の条件で使用、複製、
改変、再頒布を許可。著作権は保持。Linux などがある 11
[フリーウェア ]:無料で使用できる。著作権は保持
[シェアウェア ]:有料で使用できる。著作権は保持

情報化と経営
[ パブリックドメインソフトウェア ]
:改変、再配布を許可。
著作権は放棄
スキル
→オープンソースソフトウェアの定義を基に、どんな場合にラ
イセンス違反になるのかを理解しておこう。

基本情報技術者試験 平成 20 年春

Linux に代表されるソフトウェアであって、再配布の自由、再配布時のソー
スコード包含、派生ソフトウェア改変の許諾などが要求されるものを何とい
うか。
ア:オープンソースソフトウェア イ:コンポーネントウェア
ウ:シェアウェア エ:ミドルウェア

 
オープンソースソフトウェアは、著作権は放棄しないで、ソースコー
解説
ドを公開したライセンスです。個人・団体、使用分野を問わず、ま
た商用システムの開発においても利用が可能です。 解答:ア

411
基本情報技術者試験 平成 21 年春

OSI によるオープンソースソフトウェアの定義に従うとき、適切なものはど
れか。
ア:ある特定の業界向けに作成されたオープンソースソフトウェアは、ソー
スコードを公開する範囲をその業界に限定することができる。
イ:オープンソースソフトウェアを改変し再配布する場合、元のソフトウェ
アと同じ配布条件となるように、同じライセンスを適用して配布する必
要がある。
ウ:オープンソースソフトウェアを第三者が製品として再配布する場合、そ
のオープンソースソフトウェアの開発者は第三者に対してライセンス費
を請求することができる。
エ:社内での利用などのようにオープンソースソフトウェアを改変しても再
配布しない場合、改変部分のソースコードを公開しなくてもよい。

 
解説 オープンソースソフトウェアは、ソフトウェアの著作者の権利を保
持しながら、ソースコードを公開するソフトウェアです。ソースコー
ドを公開する範囲を限定してはならないため、アは誤り。オープンソース
ソフトウェアを改変し再配布する場合、元のソフトウェアと同じライセン
スを適用して配布しなくてもよいため、イも誤り。再配布にライセンス費
を請求してはいけないため、ウも誤り。改変しても再配布しない場合は、
改変部分のソースコードを公開しなくてもよいため、エは正しい。   
                             解答:エ

412
11-9 標準化
★ ★ ★
11
9 標準化

●標準化とは
さまざまな企業が商品を作り、販売していますが、商品を広く普及させるために
は、標準化という作業が欠かせません。標準化とは、商品の仕様などの「標準」を
決めることです。
例えば、蛍光灯が切れてしまったので新しく購入しようとしたとき、同じメーカ
のものしか使えないとなると不便です。メーカが倒産してしまった場合などは、照
明器具ごと買い換えるしかなくなってしまいます。どのメーカも標準化された同じ

第 章 ●
仕様の商品を販売すれば、消費者の利便性が高くなり、結果的に商品の普及へとつ
11
ながるのです。

〈標準化〉 標準化 標準化

情報化と経営
されていない されている
A社製 A社製

A社製 B社製 C社製 A社製 B社製 C社製

●標準化団体
標準化は、以下のような国内外の標準化団体が行っています。

〈標準化団体〉

団体 標準化の対象
アイエスオー イ ン タ ー ナ シ ョ ナ ル オ ー ガ ニ ゼ イ シ ョ ン フォー
I S O( I nternational O rganization f or 工業と技術に関する国際規格
ス タ ン ダ ー ダ イ ゼ イ シ ョ ン
Standardization:国際標準化機構)
アイトリプルイー ザ インスティチュート オブ エ レ ク ト リ カ ル アンド
I EEE( T he I nstitute o f E lectrical a nd 有線 LAN、無線 LAN、
エ レ ク ト ロ ニ ク ス エ ン ジ ニ ア ー ズ インク
Electronics Engineers, Inc.:電気電子学会) Bluetooth の技術など
ダブリュースリーシー ワ ー ル ド ワ イ ド ウ ェ ブ コ ン ソ ー シ ア ム
W 3 C( World Wide Web Consortium ) Web で利用される技術
ジ ス
日本工業標準調査会 日本国内の工業製品規格( JIS )

413
ココが
出る! 用語
[ ISO ]
:工業と技術に関する国際規格を定める団体
[日本工業標準調査会]:日本国内の工業製品規格( JIS )を審議

●バーコード
標準化された規格として身近な例は、バーコードです。バーコードとは、商品に
関するさまざまな情報を、棒( バー)が集まったコードなどで表したものです。小
売店舗のレジのバーコードリーダで情報を読み取り、精算を行うのに使われていま
す。代表的な 2 つのバーコードを紹介します。

〈バーコードの種類〉

種類 特徴 例
ジ ャ ン
JAN コード 日本で最も普及しているバーコード。製
造国、メーカ、商品名のほか、読取りエ
ラーを検出するための数値や記号である
チェックディジットの情報が入っている   
キューアール
Q R コード 英数字や漢字など、多くの情報を記録で
きる。3 個の検出用シンボルをもち、縦か
らも横からも読み取ることができる 2 次
元バーコードであり、読取りエラーを訂
正する機能もある。

ココが
出る! 用語
[ JAN コード ]
:製造国、メーカ、商品名、チェックディジッ
ト情報が入る
[ QR コード ]
:縦からも横からも読み取れる 2 次元バーコード。
3 個の検出用シンボルがあり、多くの情報を記録できる

基本情報技術者試験 平成 21 年秋

WTO 加盟国の政府関係機関での採用が見込まれる製品の開発に際して、ど
の規格を採用すべきか。
ア:ANSI 規格   イ:IEEE 規格   ウ:ISO 規格   エ:JIS 規格

414
11-9 標準化

WTO(世界貿易機関)は国際機関のため、採用が見込まれる製品は
解説
国際規格に準拠している必要があります。選択肢の中で国際規格で
あるのは ISO 規格です。 解答:ウ

基本情報技術者試験 平成 27 年春

日本工業標準調査会を説明したものはどれか。
ア:経済産業省に設置されている審議会で、工業標準化法に基づいて工業標
準化に関する調査・審議を行っており、特に JIS の制定、改正などに関
する審議を行っている。
イ:電気・電子技術に関する非営利の団体であり、主な活動内容としては、

第 章 ●
学会活動、書籍の発行、IEEE 規格の標準化を行っている。 11
ウ:電気機械器具・材料などの標準化に関する事項を調査審議し、JEC 規
格の制定及び普及の事業を行っている。

情報化と経営
エ:電子情報技術産業の総合的な発展に資することを目的とした団体であ
り、JEITA 規格の制定及び普及の事業を行っている。

日本工業標準調査会は、JIS の制定改正を審議する団体です。
解説
解答:ア

基本情報技術者試験 平成 19 年秋

QR コードの特徴はどれか。
ア:3 個の検出用シンボルで、回転角度と読取り方向が認識できる。
イ:最大で英数字なら 126 文字、漢字なら 64 文字を表すことができる。
ウ:バイナリ形式を除いた文字をコードで表現することができる。
エ:プログラム言語であり、携帯電話で実行できる。

QR コード は、3 個の検出用のシンボルがあり、どの方向からでも


解説
読み取ることができます。携帯電話で多く使用されています。
解答:ア

415
スマホで学べる単語帳アプリ(無料)  <対応 OS >

「でる語句 200」の使い方
Android 版:
Android 4.0 以上
iPhone 版:
iOS 7.0 以降(iPad/
ズ ノ ウ
注意 !! 「でる語句 200」は、株式会社ビズリーチのスマートフォンアプリ「zuknow」で動作 iPod touch でも利用
可)
します。単語帳を無料で利用するには、お手持ちのスマートフォン(iPhone / Android)へ
の「zuknow」のインストールと、
「zuknow」を利用するためのユーザー登録が必要になります。

「でる語句 200」とは
「でる語句 200」とは、
「試験によくでる語句 厳選 200 語」の略で、スマートフォンで使える単語帳アプ
リです。情報処理技術者試験の専門家が、各試験の特性と出題頻度を徹底分析し、合格に必要なキーワー
ド・用語を厳選して、200 語にまとめました。通勤・通学などのすき間学習や、試験直前の最終チェック
などにご活用ください。
「でる語句 200」の利用には「zuknow」のインストール(導入手順 1)と、本書
用の単語帳の登録
(導入手順 2)
が必要になります。下記の手順を参照して操作を行なってください。なお、
すでに「zuknow」をお使いの方は、導入手順 2 から行なってください。

導入手順 1 スマートフォンに「zuknow」をインストールする
ここでは、iPhone の画面で説明を進めますが、Android でもほぼ同じ手順での操作になります。

1お 使 い の ス マ ー 2 インストールしたアプリを起動して、画面の指示に従い、初回のユーザー登録手続
トフォンで 「App きを進めてください。
Store」
(iPhone /
iPad の場合)また
は「Google Play」
(Android の場 合 )
を起動してから
「zuknow」を 検 索
し、インストール
してください。

初めて起動するとアプリの機能紹介が始まる 登録が終わると「おすすめ 「プッシュクイズ」画面が表


ので[次へ]をタップして読み進め、 [zuknow 設定」画面が表示されるの 示されるので、[送信確認画
をはじめる]をタップするとこの画面が出る。 で、画面の指示に従って選 面へ]をタップする。「学習」
Facebook アカウント、Twitter アカウント、 択していく。なにも選択し 画面が表示され、アプリが
メールアドレスの 3 種類の登録方法があるの ないと先に進めないので必 使えるようになる。「おすす
で、任意の方法を選択し、画面の指示に従っ ず 1 つ以上選択する め設定」で選択した単語帳
てユーザー登録を進める。 [ユーザー登録せず がすでに登録されている
に試す]を選ぶと「でる語句 200」が利用で
きないので、必ずいずれかの方法で登録する

導入手順 2 本書専用の単語帳「でる語句 200」を登録する


1「zuknow」の
 QR コード読み取り機能を呼び出します。
【Android での手順】
画面左上の [zuknow]
マークをタップ⇒[設
定とヘルプ]をタッ
プ⇒[QR コード]を
タップ
画面下部にあ
る[学習]を
タップしたあ
と画面左上の
「その他」画面が表示されるの
[ …] を タ ッ 「設定」画面が表示されるので、
で、[アプリ設定]をタップする
プする [QR コード]をタップする

416
2 QR コードを読み込んで、単語帳を登録してください。

「QR コード」画面が表示
されるので、[QR コード 単語帳の詳細画面
読み取り]をタップする。 が表示されるので、
「カメラへのアクセスを求 [追加する]をタッ
カメラが起動するので、この QR コー
めています」が表示され ドを読み取る。読み取りが成功する プ す る と「 で る 語
た場合は[OK]をタップ と自動的に画面が切り替わる 句 200」 の 登 録 が
する 完了する
※ Android の場合、QR コードが読み取りにくいことがあります。zuknow を一旦終了し、別の QR コード読み取りアプリを使うと、読み取ることができます。

「でる語句 200」を使った学習方法の例
1「zuknow」
 を起動したら、画面下部 2[カードで暗記する]をタッ
 3[クイズで確認する]をタッ

にある[学習]をタップし、単語帳 プすると、単語カードを使っ プすると、クイズ形式による
一覧にある「でる語句 200」を選ん た暗記学習ができます。 暗記確認ができます。
で学習画面を開いてください。

[?]をタップすると単語の意味が
表示される。カードを左右にスワイ 画面の上部に表示された単語の意味
単語カードを使った暗記学習と、 プすると、前後の単語カードに移動 を、下部に表示されている 4 つの選
クイズ形式での暗記確認ができる できる。画面左上の[<]をタップ 択肢から選んで解答する
すると1の画面に戻る

アプリの詳しい機能説明や操作方法
「zuknow」はたくさんの 「zuknow」の公式サイトでは、さらに様々な情報
機能が搭載されています。 が掲載されているので、パソコンなどでアクセス
機能紹介や使い方の詳細 してご参照ください。
は、アプリ内の「ヘルプ」 http://www.zuknow.net/
を参照してください。
通知について
「学習」画面で[…]⇒[ヘ クイズの通知が 1日に 3 回、アプリから届きます。この
ルプ]の順にタップすると 通知は、画面下部の[学習記録]⇒画面右上の歯車
「ヘルプ」画面を表示できる。
[スタートアップガイド]を
マークをタップして表示される画面の[プッシュクイズ]
タップすると、詳しい操作 のスイッチをOFFにすることで止めることができます。
方法の解説が参照できる

■注意事項■
・zuknow は、株式会社ビズリーチが提供するサービスです。zuknow に関する質問・問い合わせなどは株式会社ビズリーチへお問い合わせください。
・本アプリに関するトラブルについて、株式会社インプレスは一切責任を負いかねますので、あらかじめご承知ください。
・単語帳「でる語句 200」の内容は、著作権法により保護されています。株式会社インプレスの許可を得ず、転載・複写・複製などはできません。

417
ASCII コード ………………………… 116
ASP ………………………………… 392
ATM 交換方式 ……………………… 272
Atomicity(原子性) ……………… 311
AVG 関数 …………………………… 303

INDEX
●● B
B ……………………………………… 088
B to B ……………………………… 389
さく い ん B to C ……………………………… 389
BCP ………………………………… 367
●●記号・数字 BD …………………………………… 043
* ……………………………………… 299 Bluetooth ………………………… 053
. ……………………………………… 077 BMP ………………………………… 121
.. ……………………………………… 077 BPM ………………………………… 367
/ ……………………………………… 077 BPO ………………………………… 370
¥……………………………………… 077 BPR ………………………………… 366
μ……………………………………… 026 BYOD ……………………………… 393
10 進数 ……………………………… 082 Byte ………………………………… 088
16 進数 ……………………………… 084 ●● C
1 次キャッシュメモリ ……………… 034 C to C ……………………………… 389
1 次元配列 …………………………… 129 CA …………………………………… 337
2 次キャッシュメモリ ……………… 034 CAD ………………………………… 386
2 次元配列 …………………………… 130 CATV ………………………………… 273
2 進数 ………………………………… 082 CD …………………………………… 043
2 分木 ………………………………… 139 CD-R ………………………………… 044
2 分探索木 …………………………… 140 CD-ROM …………………………… 044
2 分探索法 …………………………… 147 CD-RW ……………………………… 044
3 層クライアントサーバシステム … 215 CEO ………………………………… 364
8 進数 ………………………………… 084 CGI …………………………………… 249
●● A CGM ………………………………… 387
ABC 分析 …………………………… 380 CIO …………………………………… 364
ACID 特性 …………………………… 311 CISC ………………………………… 030
ADSL ………………………………… 273 Consistency(一貫性)…………… 311
AES ………………………………… 334 COO ………………………………… 364
Ajax ………………………………… 250 COUNT(*) 関数 …………………… 303
AND ………………………………… 105 CPI …………………………………… 025
API …………………………………… 059 CPU ………………………………… 022
ARP ……………………………269, 343 CRC ………………………………… 279
ASC ………………………………… 306 CREATE VIEW 文 ………………… 307

418
CRM ………………………………… 385 G to B ……………………………… 389
CRT ディスプレイ ………………… 048 G to C ……………………………… 389
CSMA/CD 方式 …………………… 266 GIF …………………………………… 121
CSR 調達 …………………………… 370 GPS システム ……………………… 387
CSS ………………………………… 248 GROUP BY 句 ……………………… 304
●● D GUI …………………………………… 181
DBMS ……………………………… 310 ●● H
DES ………………………………… 334 HAVING 句 ………………………… 305
DESC ……………………………… 306 HTML ……………………………… 248
DFD ………………………………… 177 HTTP ……………………………244, 248
DHCP ……………………………… 256 HTTPS ……………………………… 248
DLL ………………………………… 190 ●● I
DMZ ………………………………… 342 IC カード …………………………… 387
DNS ………………………………… 254 IDE …………………………………… 053
DNS キャッシュポイズニング …… 323 IDS …………………………………… 344
DoS 攻撃 …………………………… 324 IEEE ………………………………… 413
DRAM ……………………………… 033 IEEE1394 …………………………… 052
Durability(永続性)………………… 311 IPsec ………………………………… 337
DVD ………………………………… 043 IPv4 ………………………………… 253
DVD-R ……………………………… 044 IPv6 ………………………………… 257
DVD-RAM ………………………… 044 IP アドレス ………………………… 253
DVD-ROM ………………………… 044 IP マスカレード …………………… 256
DVD-RW …………………………… 044 IrDA ………………………………… 053
●● E ISMS ………………………………… 326
EC …………………………………… 389 ISO …………………………………… 413
EDI …………………………………… 387 Isolation(独立性)………………… 311
EEPROM …………………………… 037 IT サービス継続性管理 …………… 355
EPROM ……………………………… 037 IT サービス財務管理 ……………… 355
ERP ………………………………… 385 IT サービスマネジメント ………… 355
E-R 図 ………………………………… 178 IT ポートフォリオ ………………… 372
EUC ………………………………… 116 ●● J
●● F JAN コード ………………………… 414
FA ……………………………………386 JavaScript ………………………… 250
FIFO 方式 ……………………………071 Java アプレット …………………… 250
FROM ………………………………299 Java サーブレット ………………… 250
FTP …………………………………244 JIS コード …………………………… 116
FTTH …………………………………273 JPEG ………………………………… 121
●● G ●● K
G ……………………………………… 026 k ……………………………………… 026

419
●● L PERT ………………………………… 349
LAN ………………………………… 265 ping ………………………………… 253
LFU 方式 …………………………… 071 PNG ………………………………… 121
LRU 方式 …………………………… 071 POP3………………………………… 244
●● M POS ………………………………… 386
M ……………………………………… 026 PPM ………………………………… 372
m ……………………………………… 026 PROM ……………………………… 037
M&A ………………………………… 370 ●● Q
MAC アドレス ……………………… 268 QR コード …………………………… 414
MAX 関数 …………………………… 304 ●● R
microSD カード …………………… 045 RADIUS …………………………… 341
MIDI ………………………………… 121 RAID ………………………………… 227
MIL 記号 ……………………………… 105 RAID0 ……………………………… 227
MIME ………………………………… 245 RAID1 ……………………………… 227
miniSD カード ……………………… 045 RAID5 ……………………………… 228
MIN 関数 …………………………… 304 RAM ………………………………… 032
MIPS ………………………………… 025 RARP ……………………………… 269
MP3 ………………………………… 121 RAS ………………………………… 233
MPEG ……………………………… 121 RASIS ……………………………… 233
MRP ………………………………… 387 RFID ………………………………… 387
MTBF ……………………………… 233 RISC ………………………………… 030
MTTR ……………………………… 233 ROI …………………………………… 392
●● N ROM ………………………………… 032
n ……………………………………… 026 RSA ………………………………… 335
NAND ……………………………… 108 RSS ………………………………… 385
NAPT ……………………………… 255 ●● S
NAT ………………………………… 255 S/MIME ………………………245, 337
NOR ………………………………… 107 SaaS ………………………………… 393
NOT ………………………………… 105 SCM ………………………………… 385
NTP ………………………………… 244 SCSI ………………………………… 053
●● O SD カード …………………………… 045
OR …………………………………… 105 SELECT 文 ………………………… 298
ORDER BY 句 ……………………… 306 SFA ………………………………… 385
OS ………………………………058, 060 SGML ……………………………… 248
OSI 基本参照モデル ………………… 240 SLA ………………………………… 356
O 記法 ………………………………… 165 SMTP ……………………………… 244
●● P SNMP ……………………………… 244
p ……………………………………… 026 SOA ………………………………… 393
PDS ………………………………… 411 SOAP ……………………………… 251

420
SQL ………………………………… 298 アウトラインフォント……………… 117
SQL インジェクション …………… 323 アカウンタビリティ………………… 365
SRAM ……………………………… 033 アクセス時間………………………… 042
SSD ………………………………… 045 アクセス制御方式…………………… 265
SSL ………………………………… 337 アサーションチェック……………… 204
SUM 関数 …………………………… 303 アジャイル開発……………………… 175
SVC 割込み ………………………… 065 アセンブラ…………………………… 188
SWOT 分析 ………………………… 371 圧縮…………………………………… 120
●● T 後入先出法…………………………… 399
T ……………………………………… 026 アドレス指定方式…………………… 023
TCP ………………………………… 245 アプリケーション…………………… 058
TCP/IP ……………………………… 243 アプリケーション層……………216, 241
TELNET …………………………… 244 アプレット…………………………… 250
TOB ………………………………… 370 アライアンス………………………… 370
●● U アルゴリズム………………………… 124
UDP ………………………………… 245 アローダイアグラム………………… 349
UML ………………………………… 197 暗号化………………………………… 334
Unicode …………………………… 116 ●●い
USB ………………………………… 052 意匠権………………………………… 406
USB メモリ ………………………… 045 意匠法………………………………… 406
●● V 一意…………………………………… 287
Video RAM ………………………… 049 位置決め時間………………………… 042
VRAM ……………………………… 049 一様分布……………………………… 150
●● W イメージスキャナ…………………… 047
W3C ………………………………… 413 インクジェットプリンタ…………… 048
WAF ………………………………… 343 インシデント管理…………………… 356
WAN ………………………………… 271 インスタンス………………………… 195
WBS ………………………………… 349 インスペクション…………………… 208
Web アプリケーション …………… 249 インタフェース……………………… 052
Web サーバ ………………………… 214 インタプリタ………………………… 189
Web ビーコン ……………………… 324 インデックス機能…………………… 314
WHERE 句 ………………………… 299 ●●う
●● X ウイルス対策ソフト………………… 331
XML ………………………………… 248 ウイルス定義ファイル……………… 331
XOR ………………………………… 107 ウェルノウンポート………………… 243
●●あ ウォークスルー……………………… 208
アーカイバ…………………………… 120 ウォータフォールモデル…………… 174
あいまい検索………………………… 301 ウォームスタンバイ方式…………… 220
アウトソーシング…………………… 370 打切り誤差…………………………… 102

421
請負契約……………………………… 404 仮想記憶システム…………………… 070
売上高………………………………… 396 稼働率………………………………… 233
運用テスト…………………………… 203 金のなる木…………………………… 372
●●え カプセル化…………………………… 194
液晶ディスプレイ…………………… 048 可変区画方式………………………… 068
枝……………………………………… 138 可用性……………………………233, 322
エミュレータ………………………… 189 可用性管理…………………………… 355
エンキュー…………………………… 132 カレントディレクトリ……………… 076
演算装置……………………………… 018 関係…………………………………… 178
●●お 関係データベース………………284, 287
応答時間……………………………… 230 間接アドレス指定方式……………… 024
応用ソフトウェア…………………… 058 完全性……………………………233, 322
オーダ………………………………… 165 完全 2 分木 …………………………… 139
オープンソースソフトウェア……… 410 管理図………………………………… 379
オブジェクト指向…………………… 194 ●●き
オブジェクト図……………………… 198 キーボード…………………………… 047
オプティマイザ……………………… 314 キーロガー…………………………… 324
オペランド…………………………… 022 記憶管理……………………………… 068
オペランド読出し…………………… 023 記憶装置……………………………… 018
重み…………………………………… 082 ギガ…………………………………… 026
親……………………………………… 138 機会…………………………………… 371
●●か 機械語………………………………… 060
会計…………………………………… 396 規格…………………………………… 052
回線交換方式………………………… 271 木構造……………………………129, 138
回線利用率…………………………… 276 擬似言語……………………………… 127
階層型データベース………………… 284 技術的脅威…………………………… 323
階層構造……………………………… 076 基数…………………………………… 083
解像度………………………………… 049 奇数パリティ………………………… 277
回転待ち時間………………………… 043 既知の誤り…………………………… 356
外部環境……………………………… 371 揮発性メモリ………………………… 032
外部キー……………………………… 287 基本ソフトウェア…………………… 058
外部キー制約………………………… 288 機密性……………………………233, 322
外部設計…………………………171, 181 逆アセンブル………………………… 332
外部割込み…………………………… 064 逆オークション……………………… 389
鍵……………………………………… 334 キャッシュメモリ…………………… 033
可逆圧縮……………………………… 120 キャパシティ管理…………………… 355
加算器………………………………… 111 キュー……………………………129, 132
画素…………………………………… 049 行……………………………………… 287
仮想記憶管理………………………… 068 脅威…………………………………… 371

422
供給者管理…………………………… 355 虹彩認証……………………………… 341
共通鍵暗号方式……………………… 334 降順…………………………………… 152
業務のモデル化……………………… 177 高水準言語…………………………… 187
業務プロセス………………………… 366 構成管理……………………………… 356
共有ロック…………………………… 311 コーディング………………………… 187
キロ…………………………………… 026 コードレビュー……………………… 208
●●く コールドスタンバイ方式…………… 221
クイックソート……………………… 159 誤差…………………………………… 102
偶数パリティ………………………… 277 個人情報保護法……………………… 402
繰返し………………………………… 125 固定区画方式………………………… 068
区画方式……………………………… 068 固定小数点表示……………………… 098
クライアントサーバシステム……… 214 固定費………………………………… 396
クライアント層……………………… 215 コミュニケーションサーバ………… 214
クラウドコンピューティング……… 217 コンパイラ………………………188, 190
クラス………………………………… 195 コンピュータウイルス……………… 330
クラス A ……………………………… 260 コンピュータウイルス対策基準…… 330
クラス B ……………………………… 260 ゴンベルツ曲線……………………… 204
クラス C ……………………………… 260 ●●さ
クラス図……………………………… 198 サーチ………………………………… 144
クラスタリング……………………… 223 サーチ時間…………………………… 043
グリーン購入………………………… 370 サーバ層……………………………… 215
クリティカルパス…………………… 349 サービスプログラム………………… 059
グローバル IP アドレス …………… 254 サービスマネジメントプロセス…… 355
クロック周波数……………………… 025 サービスレベル管理………………… 355
●●け サービスレベル合意書……………… 356
継承…………………………………… 196 最遅結合点時刻……………………… 351
ゲートウェイ………………………… 258 再帰アルゴリズム…………………… 162
桁あふれ……………………………… 103 再帰的なプログラム……………162, 192
桁落ち………………………………… 103 再構成機能…………………………… 313
結合………………………………289, 301 在庫評価方法………………………… 399
結合テスト…………………………… 202 最適化………………………………… 190
決定表………………………………… 381 再入可能なプログラム……………… 191
言語プロセッサ…………………059, 187 再配置可能なプログラム…………… 191
原始プログラム……………………… 187 最早結合点時刻……………………… 351
●●こ 財務諸表……………………………… 397
子……………………………………… 138 裁量労働制…………………………… 403
コアコンピタンス…………………… 369 先入先出法…………………………… 399
公開鍵暗号方式……………………… 335 サブディレクトリ…………………… 076
交換法………………………………… 152 サブネットマスク…………………… 261

423
サラミ法……………………………… 325 出力装置…………………………018, 048
算術シフト…………………………… 095 準委任契約…………………………… 404
散布図………………………………… 378 巡回冗長検査………………………… 279
●●し 順次…………………………………… 125
シーク時間…………………………… 042 障害回復機能………………………… 312
シーケンス図………………………… 199 詳細設計……………………………… 171
シェアウェア………………………… 411 昇順…………………………………… 152
ジェネレータ………………………… 188 状態遷移図…………………………… 179
シェルソート………………………… 158 衝突…………………………………… 149
磁気ディスク………………………… 040 商標権………………………………… 406
事業関係管理………………………… 355 商標法………………………………… 406
事業部制組織………………………… 365 情報落ち……………………………… 102
システム開発手法…………………… 174 情報資産……………………………… 322
システム監査………………………… 359 情報セキュリティ…………………… 322
システム監査人……………………… 359 情報セキュリティマネジメントシステム
システム管理基準…………………… 357 ………………………………………… 326
システムテスト……………………… 203 情報セキュリティマネジメント試験 010
システムのライフサイクル………… 170 情報漏えい…………………………… 327
システム領域感染型ウイルス……… 330 職能別組織…………………………… 365
実記憶管理…………………………… 068 処理記号……………………………… 125
実効アクセス時間…………………… 034 シリアル ATA ……………………… 052
実効アドレス計算………………022, 023 シリンダ……………………………… 041
実行可能状態………………………… 062 シンクライアントシステム………… 216
実行状態……………………………… 062 人的脅威…………………………323, 325
実体…………………………………… 178 侵入検知システム…………………… 344
実用新案権…………………………… 406 信頼性………………………………… 233
実用新案法…………………………… 406 信頼度成長曲線……………………… 204
シノニム……………………………… 149 真理値表……………………………… 105
指標アドレス指定方式……………… 024 親和図法……………………………… 382
シフト JIS コード …………………… 116 ●●す
シフト演算…………………………… 094 衰退期………………………………… 372
射影…………………………………… 289 垂直パリティ………………………… 278
集計関数……………………………… 303 スイッチングハブ…………………… 267
集中処理……………………………… 212 水平垂直パリティ…………………… 278
修復に要するコスト………………… 174 水平パリティ………………………… 278
周辺機器……………………………… 052 スーパスカラ………………………… 029
集約…………………………………… 196 スーパパイプライン………………… 029
主キー………………………………… 287 スキーマ……………………………… 285
主記憶………………………………… 032 スター型……………………………… 265

424
スター型接続………………………… 053 ●●そ
スタック…………………………129, 132 相対パス…………………………077, 078
スタブ………………………………… 203 挿入…………………………………… 290
ステークホルダ……………………… 365 挿入法………………………………… 157
ストアドプロシージャ……………… 217 総平均法……………………………… 399
ストライピング……………………… 227 双方向連結リスト…………………… 135
ストレステスト……………………… 203 添字…………………………………… 129
スパイラルモデル…………………… 175 ソーシャルエンジニアリング……… 325
スプーリング………………………… 065 ソート………………………………… 152
スプリッタ…………………………… 273 即値アドレス指定方式……………… 024
スマートグリッド…………………… 387 疎結合マルチプロセッサシステム… 222
スラッシング………………………… 071 組織…………………………………… 365
スループット………………………… 231 ソフトウェア………………………… 018
スワッピング方式………………068, 069 ソフトウェア受入れ………………… 171
●●せ ソフトウェア詳細設計…………171, 184
正規化……………………………100, 292 ソフトウェア方式設計……………… 171
制御装置……………………………… 018 ソフトウェア要件定義…………171, 181
制御プログラム……………………… 059 ソフトリアルタイムシステム……… 213
成熟期………………………………… 372 損益計算書…………………………… 397
成長期………………………………… 372 損益分岐点…………………………… 396
静的テストツール…………………… 204 ●●た
静的リンク…………………………… 190 ターンアラウンドタイム…………… 230
正の相関……………………………… 378 第 1 正規形 …………………………… 293
整列…………………………………… 152 退行テスト…………………………… 203
セクタ………………………………… 041 第 3 正規形 …………………………… 294
セション層…………………………… 241 貸借対照表…………………………… 397
節……………………………………… 138 第 2 正規形 …………………………… 293
絶対値表現…………………………… 090 代入…………………………………… 125
絶対パス…………………………077, 078 代表取締役…………………………… 364
接点…………………………………… 138 タイマ割込み………………………… 065
全加算器……………………………… 112 タイムスライス方式………………… 064
線形探索法…………………………… 144 タグ…………………………………… 248
線形リスト…………………………… 135 多重度………………………………… 198
選択………………………………125, 289 多重プログラミング………………… 064
選択法………………………………… 154 タスク………………………………… 062
占有ロック…………………………… 311 タスク管理…………………………… 062
専用線方式…………………………… 271 タスクスケジューリング方式……… 064
戦略マップ…………………………… 374 タッチパネル………………………… 047
ダミー作業…………………………… 350

425
探索…………………………………… 144 データリンク層……………………… 241
端子記号……………………………… 124 テキストエリア……………………… 182
単体テスト…………………………… 201 テキストボックス…………………… 182
単方向連結リスト…………………… 135 デキュー……………………………… 132
●●ち デザインレビュー…………………… 208
チェックディジット………………… 280 テザリング…………………………… 387
チェックボックス…………………… 182 テスト………………………………… 171
逐次再使用可能プログラム………… 191 テストカバレージ分析……………… 202
逐次制御方式………………………… 029 デッドロック………………………… 312
知的財産権…………………………… 405 デバイスドライバ…………………… 061
抽象化………………………………… 196 デビットカード……………………… 388
直接アドレス指定方式……………… 024 デュアルシステム…………………… 219
直接雇用契約………………………… 403 デュプレキシング…………………… 227
直列システム………………………… 234 デュプレックスシステム…………… 219
著作権………………………………… 405 テラ…………………………………… 026
著作権法……………………………… 405 デルファイ法………………………… 382
●●つ 電子商取引…………………………… 388
通信プロトコル……………………… 240 電子透かし…………………………… 322
強み…………………………………… 371 電子メール…………………………… 245
●●て ●●と
デイジーチェーン接続……………… 053 ド・モルガンの法則………………… 108
ディジタル署名……………………… 336 動的リンク…………………………… 190
ディジタルディバイド……………… 364 動的リンクライブラリ……………… 190
低水準言語…………………………… 187 導入期………………………………… 372
ディスクキャッシュ………………… 036 特性要因図…………………………… 380
ディレクトリ………………………… 076 特化…………………………………… 196
ディレクトリトラバーサル攻撃…… 324 特許クロスライセンス……………… 406
データウェアハウス………………… 318 特許権………………………………… 406
データ構造…………………………… 129 特許法………………………………… 406
データ層……………………………… 216 ドット………………………………… 049
データディクショナリ……………… 314 トップダウンテスト………………… 202
データ転送時間……………………… 043 ドメイン名…………………………… 254
データ伝送時間……………………… 275 ドライバ……………………………… 202
データフロー図……………………… 177 トラック……………………………… 041
データベース………………………… 284 トランザクション…………………… 310
データベース管理システム………… 310 トランスポート層…………………… 241
データベースサーバ………………… 214 トランスレータ……………………… 189
データマート………………………… 319 トレーサビリティシステム………… 386
データマイニング…………………… 319 トレース……………………………… 126

426
トロイの木馬………………………… 331 ハウジングサービス………………… 392
●●な バグ…………………………………… 201
内部環境……………………………… 371 パケット交換方式…………………… 272
内部設計……………………………… 171 パケットフィルタリング…………… 343
内部統制……………………………… 360 派遣契約……………………………… 403
内部割込み…………………………… 064 パス…………………………………… 077
流れ図………………………………… 124 バス型………………………………… 265
流れ線………………………………… 124 バスタブ曲線………………………… 236
ナノ…………………………………… 026 パスワードのハッシュ化…………… 340
なりすまし…………………………… 325 パターンマッチング方式…………… 331
ナレッジマネジメント……………… 374 バックドア…………………………… 344
●●に ハッシュ関数………………………… 148
ニッチ戦略…………………………… 369 ハッシュ探索法……………………… 148
日本工業標準調査会………………… 413 ハッシュ値………………………148, 341
入出力記号…………………………… 125 バッチ処理…………………………… 212
入出力割込み………………………… 065 花形…………………………………… 372
入力装置…………………………018, 047 パブリックドメインソフトウェア… 411
認証局………………………………… 337 バブルソート………………………… 152
●●ね ハミング符号方式…………………… 279
根……………………………………… 138 バランススコアカード……………… 373
ネットワークアドレス……………… 263 パリティ……………………………… 277
ネットワーク型データベース……… 284 パリティチェック…………………… 277
ネットワーク層……………………… 241 バリューチェーン分析……………… 373
ネットワーク部……………………… 260 パレート図…………………………… 379
●●の 汎化…………………………………… 195
ノード………………………………… 138 半加算器……………………………… 111
ノンプリエンプティブ……………… 064 判断記号……………………………… 125
●●は 番兵…………………………………… 145
葉……………………………………… 138 ●●ひ
バーコード…………………………… 414 ヒアリング…………………………… 359
バーコードリーダ…………………… 047 ヒープ………………………………… 142
ハードウェア………………………… 018 ヒープソート………………………… 160
ハードリアルタイムシステム……… 213 非可逆圧縮…………………………… 120
バイオメトリクス認証……………… 341 比較演算子…………………………… 300
排他制御機構………………………… 311 光ディスク………………………040, 043
排他的論理和………………………… 107 非機能要件…………………………… 171
バイト……………………………041, 088 ピクセル……………………………… 049
パイプライン処理…………………… 029 ピコ…………………………………… 026
配列…………………………………… 129 ヒストグラム………………………… 378

427
非正規形……………………………… 292 不正アクセス………………………… 402
左部分木……………………………… 138 不正アクセス禁止法………………… 402
ビット……………………………041, 088 不正競争防止法……………………… 402
ビット/秒…………………………… 275 プッシュ……………………………… 132
ビット誤り…………………………… 277 物理層………………………………… 241
ビットマップフォント……………… 117 物理的脅威………………………323, 325
ヒット率……………………………… 034 浮動小数点表示……………………… 098
否定…………………………………… 105 負の相関……………………………… 378
否定論理積…………………………… 108 プライベート IP アドレス ………… 254
否定論理和…………………………… 107 ブラウザ……………………………… 248
秘密鍵………………………………… 335 プラズマディスプレイ……………… 048
ビュー表……………………………… 307 ブラックボックステスト…………… 201
ヒューマンインタフェース………… 181 フラッシュメモリ………………040, 044
表……………………………………… 287 フランチャイズチェーン…………… 366
費用…………………………………… 396 フリーウェア………………………… 410
標準化………………………………… 413 フリーソフト………………………… 410
●●ふ ブリッジ……………………………… 267
ファイアウォール…………………… 342 プリントサーバ……………………… 214
ファイル……………………………… 061 プルダウンメニュー………………… 182
ファイル感染型ウイルス…………… 330 プレゼンテーション層…………216, 241
ファイル管理………………………… 076 フローチャート……………………… 124
ファイルサーバ……………………… 214 ブロードキャストアドレス………… 263
ファンクション層…………………… 216 プロキシ……………………………… 343
ファンクションポイント法………… 348 プログラミング…………………171, 187
フィッシング………………………… 323 プログラミングの標準化…………… 187
フールプルーフ……………………… 226 プログラム格納方式………………… 020
フェールセーフ……………………… 226 プログラム言語……………………… 187
フェールソフト……………………… 226 プログラム構造化設計……………… 184
フォールトアボイダンス…………… 225 プログラム割込み…………………… 065
フォールトトレラント……………… 225 プロジェクト組織…………………… 366
フォルダ……………………………… 076 プロジェクトマネージャ…………… 348
フォント……………………………… 116 プロジェクトマネジメント………… 348
負荷分散……………………………… 221 プロセス……………………………… 062
不揮発性メモリ……………………… 032 プロダクトイノベーション………… 369
復号…………………………………… 334 プロダクトライフサイクル………… 372
副問合せ……………………………… 306 ブロック単位での書込み…………… 042
符号ありデータ……………………… 090 プロトタイピングモデル…………… 175
符号なしデータ……………………… 090 分解…………………………………… 196
負数…………………………………… 090 分散処理……………………………… 212

428
分散データベース…………………… 318 負け犬………………………………… 372
●●へ マシンチェック割込み……………… 065
平均故障間隔………………………… 233 マスク ROM ………………………… 037
平均修復時間………………………… 233 待ち状態……………………………… 062
並列システム………………………… 235 マトリックス組織…………………… 365
ページアウト………………………… 070 マルウェア…………………………… 330
ページイン…………………………… 070 マルチコアプロセッサ……………… 030
ページフォールト…………………… 070 マルチタスク………………………… 064
ページング方式……………………… 070 マルチテナント方式………………… 393
ペネトレーションテスト…………… 343 マルチプログラミング……………… 064
変更管理……………………………… 356 マルチプロセッサシステム………… 221
ベン図………………………………… 105 マルチメディア……………………… 120
変数…………………………………… 125 丸め誤差……………………………… 102
ペンタブレット……………………… 047 ●●み
ベンチマーキング…………………… 367 右部分木……………………………… 138
ベンチマーク………………………… 231 密結合マルチプロセッサシステム… 221
変動費………………………………… 396 ミドルウェア………………………… 058
変動費率……………………………… 397 ミラーリング………………………… 227
●●ほ ミリ…………………………………… 026
包括的クロスライセンス…………… 406 ●●む
ポートスキャナ……………………… 243 無限小数……………………………… 083
ポート番号…………………………… 243 無相関………………………………… 378
ホームディレクトリ………………… 077 ●●め
保守性………………………………… 233 命令実行サイクル…………………… 022
補助記憶…………………………032, 040 命令の解読…………………………… 023
補数表現……………………………… 091 命令の実行…………………………… 023
ホスティングサービス……………… 392 命令フェッチ………………………… 023
ホスト部……………………………… 260 メインメモリ………………………… 032
ホットスタンバイ方式……………… 220 メールサーバ………………………… 214
ポップ………………………………… 132 メガ…………………………………… 026
ポップアップメニュー……………… 182 メソッド……………………………… 194
ボトムアップテスト………………… 202 メッセージ…………………………… 194
ホワイトボックステスト…………… 201 メモリ………………………………… 032
●●ま メモリインタリーブ………………… 036
マーケットニッチャ………………… 369 メモリリーク………………………… 070
マイクロ……………………………… 026 ●●も
マウス………………………………… 047 モーションキャプチャ……………… 121
マクロ型ウイルス…………………… 330 モーフィング………………………… 121
マクロ機能…………………………… 182 目的プログラム……………………… 187

429
文字コード…………………………… 116 リンク………………………………… 190
モジュール…………………………… 184 リング型……………………………… 265
モジュール強度……………………… 184 ●●る
モジュール結合度…………………… 185 ルータ………………………………… 268
問題管理……………………………… 356 ルート………………………………… 138
問題児………………………………… 372 ルートディレクトリ………………… 076
●●ゆ ループ記号…………………………… 125
有機 EL ディスプレイ ……………… 048 ループバックアドレス……………… 255
有限小数……………………………… 083 ●●れ
有効けた数…………………………… 099 レイヤ 2 スイッチ …………………… 267
有効数字……………………………… 099 レーザプリンタ……………………… 048
ユーザ認証…………………………… 340 レーダチャート……………………… 381
ユーザビリティ……………………… 181 レジスタ……………………………… 022
ユースケース図……………………… 198 レスポンスタイム…………………… 230
優先度方式…………………………… 064 列……………………………………… 287
●●よ レビュー……………………………… 208
要件定義……………………………… 170 連結リスト…………………………… 135
要素…………………………………… 129 レンタルサーバサービス…………… 392
弱み…………………………………… 371 ●●ろ
●●ら 労働基準法…………………………… 402
ライトスルー方式…………………… 035 ローダ………………………………… 190
ライトバック方式…………………… 035 ロード………………………………… 190
ラジオボタン………………………… 182 ロードモジュール…………………… 190
●●り ロールバック………………………… 313
リアルタイム処理…………………… 212 ロールフォワード…………………… 312
利益…………………………………… 396 ログファイル………………………… 312
リカバリ……………………………… 312 ロングテール………………………… 389
リグレッションテスト……………… 203 論理演算……………………………… 105
リスク………………………………… 326 論理演算子…………………………… 300
リスト構造………………………129, 135 論理回路……………………………… 105
リストボックス……………………… 182 論理シフト…………………………… 094
リバースエンジニアリング………… 192 論理積………………………………… 105
リピータ……………………………… 267 論理和………………………………… 105
リファクタリング…………………… 191 ●●わ
リフレッシュ………………………… 033 ワークシェアリング………………… 403
流通管理システム…………………… 386 ワーム型ウイルス…………………… 331
リリース管理………………………… 356 ワイヤレスインタフェース………… 053
リレーショナルデータベース……… 284 割込み処理…………………………… 064
リンカ………………………………… 190

430
[著者紹介]

五十嵐順子(いがらし じゅんこ)
兵庫県生まれ。神戸大学国際文化学部卒業後、NTT コムウェアに入社。落ちこぼれ
の新人時代を経て、女性では珍しい IT インフラ系技術者として活躍。多数の PJ 経験

後、異業種のベンチャー企業へ転職しシステム部門トップを務める。現在は独立し「文

系出身エンジニアの駆け込み寺」として若手の人材育成に携わる。著書に、
『いちばん

やさしいネットワークの本』
(技術評論社刊)がある。

STAFF

監修 五十嵐 聡

編集 内藤 貴志
  畑中 二四

DTP 制作 西嶋 正
カバーデザイン 阿部 修( G-Co.Inc. )

本文フォーマット&デザイン G-Co.Inc.

カバー・本文イラスト スマイルワークス(神岡 学)

本文イラスト 神林 美生

カバー制作 高橋 結花
デスク 千葉 加奈子

編集長 玉巻 秀雄 
本書のご 感想をぜひお寄せください
http://book.impress.co.jp/books/1115101017
読者登録サービス アンケート 回答者の中から、抽選で商品券 ( 1万円分)や
図書カード(1,000円分)などを毎月プレゼント。
当選は賞品の発送をもって代えさせていただきます。

●本書の内容に関するご質問は、書名・ISBN・お名前・電話番号と、該当するページや具体的な
質問内容、お使いの動作環境などを明記のうえ、インプレスカスタマーセンターまでメールま
たは封書にてお問い合わせください。電話やFAX等でのご質問には対応しておりません。なお、
本書の範囲を超える質問に関しましてはお答えできませんのでご了承ください。
●落 丁・乱丁本はお手数ですがインプレスカスタマーセンターまでお送りください。送料弊社負担
にてお取り替えさせていただきます。但し、古書店で購入されたものについてはお取り替えできま
せん。

■読者の窓口 ■ 書店/販売店のご注文窓口
 インプレスカスタマーセンター   株式会社インプレス 受注センター
 〒101-0051 東京都千代田区神田神保町一丁目105番地   TEL  048-449-8040
 TEL 03-6837-5016 / FAX 03-6837-5023   FAX 048-449-8041
 info@impress.co.jp

かんたん合格 基本情報技術者教科書 平成 28 年度
2015 年 11 月 21 日 初版発行

著 者 五十嵐順子&ラーニング編集部
発行人 土田米一
発行所 株式会社インプレス
    〒 101-0051 東京都千代田区神田神保町一丁目 105 番地
    TEL 03-6837-4635(出版営業統括部)
    ホームページ http://book.impress.co.jp/

本書は著作権法上の保護を受けています。本書の一部あるいは全部について(ソフトウェア
及びプログラムを含む)、株式会社インプレスから文書による許諾を得ずに、いかなる方法
においても無断で複写、複製することは禁じられています。

Copyright © 2015 Junko Igarashi & Impress Corporation, All rights reserved.

印刷所 日経印刷株式会社

ISBN978-4-8443-3955-7 C3055
Printed in Japan

Anda mungkin juga menyukai