情報をやりとりすること
通信(またはコミュニケーション)
古代の情報の伝え方
のろしを焚く、太鼓をたたく、伝令が走るなど
文字の発明以降
飛脚、早馬、伝書鳩などの利用
19世紀 • ( )が確立
近代郵便制度
電気通信以前の本格的な通信システム
セマホール(腕木通信)
電気通信のはじまりは、モールスが発明した短点(・)と長点(-) の符号で情報を送る( )である。
モールス電信機
モールス電信機を使うために考案されたのが、( )である。
モールス符号
モールス電信機の発明とほぼ同じ時期に、電線を使って音声を 送る研究がはじまった、電流により音声を伝える方式
電話機(「電話の父」とよばれるグラハム・ベルによって発明)
通信線や光ケーブルなどの敷説が必要なく、通信環境の整備に 大きな費用がかからない利点がある。
無線通信機(イタリアのマルコーニによって発明)
セル方式(小ゾーン方式)の実用化
端末装置から処理を依頼し、それらをコンピュータが即時に実行
オンラインリアルタイム処理
多数の利用者がコンピュータを同時に利用
タイムシェアリングシステム
アメリカのローレンス・ロバーツを中心とするグループは、アメリカ国防省の 支援のもと、( )とよばれるコンピュータネットワークの実験を行った
ARPANET
活字を用いた印刷(ドイツのグーテンベルクが発明)
活版印刷
専用のコンピュータを用いた写真植字が行われたのち、現在ではパソコ ンを使用している
DTP(Desk Top Pubilshing)による出版
紙に印刷されたものではなく、コンピュータの画面で閲覧する方法
電子書籍
アメリカのマサチューセッツ州の実験放送局から音楽とメッセージがなが れたのがきっかけ
ラジオ放送
アメリカで実験放送したものから数年後、日本でも実験放送が実施。実 際に放送がはじまったのは、太平洋戦争終了後である
テレビ放送
放送のデジタル化により、データ放送が可能となり、インター ネットに接続したテレビが視聴者側からの情報を放送局に送る( )も行われた
双方向テレビ(双方向のサービス)
情報の種類や情報の詳しさ、発信する人とそれを受けとる人な どによって異なる情報を発信するときは、( )(いつ、だれが、なぜ、何を、どこで、どのように)を具体的に考える
5W1H
両者で個人的な情報を送受信し、共有する。 秘密性の高いコミュニケーションが可能。(1対1)
個別型
1人が情報源となって発信し、複数の人が同じ情報を共有する。(1対多)
マスコミ型
複数の人が情報源となって発信し、1人が それぞれの情報を受信する。(多対1)
逆マスコミ型
複数の人がそれぞれ対等に情報源となって 発信し、それぞれが情報を共有する。(多対多)
会議型
相手と直接対面している。会話、プレゼンテーション など。
直接コミュニケーション
相手が離れたところにいる。電話、電子メール など
間接コミュニケーション
相手からすぐ反応がある。電話、ビデオチャット など
同期型コミュニケーション
相手がいつ受信したかわからない。電子メール、Webページ など
非同期型コミュニケーション
情報をいち早く伝えることができる性質
速報性
多くの人に同時に情報を伝えることができる性質
同報性
発信された情報を蓄積できる性質
蓄積性
発信された情報の中を検索できる性質
検索性
情報の流れが双方向である性質
双方向性
情報を送受信するタイミング
同期型と非同期型
発信した情報を受けとることができる人の範囲
発信範囲
メディアを使って情報発信できる人や機関など
発信者
情報の受け手の知識や能力、おかれている状況などを十分考慮 したうえで、情報の表現方法を検討する手法
情報デザイン
メールを送る相手のアドレスを入力。この欄が空欄だとメール送信できない
「To」欄
メールの写し。参考までに知っておいて欲しいときなどで使用
「CC」欄
意味合いはCCと同じ。この欄に入力されたアドレスは、他の受信者には表示されない
「BCC」欄
Aさんが、B、C、Dにメールを送る。ただしBCDはお互いの面識はな いので、それぞれのメールアドレスを知らせないようにしたい。このと き、To、CC、BCCのどこに誰のメールアドレスを記載すればよいか。
伝えたいメッセージの本質を見きわめて表現する手段として、 場所や利用する人の特性についての情報を抽象化した記号
ピクトグラム
文字の種類
フォント
明朝体
ゴシック体
筆書体 (行書体 楷書体など)
ポップ体
伝統的で高級感のある印象読みやすく、長文でも目が疲れない
用途:文字の量が多い資料
明朝体
現代的でカジュアルな印象明朝体よりも目立ちやすい
用途:プレゼンテーションのスライドなどの資料
ゴシック体
伝統的で高級感のある印象
筆書体(行書体 楷書体など)
現代的でカジュアルな印象研究発表などの真面目な場面で用いると、稚拙な印象や不真面目な印象を与えることがある。
ポップ体
判読性が高くなるようにデザインされたフォント
ユニバーサルデザインフォント(UDフォント)
• データの正確な値を表したい場合に活用
• じっくりと読むような資料に適している
表
• データの全体的な傾向を見せたい場合に活用
• 視聴できる時間や情報量に制限のあるプレゼンテーションのスライド
グラフ
流れ
相関関係
構図
赤、青、緑などの色合いのこと
色相
• 鮮やかさを表す属性
• (高)→鮮やかに
• (低)→灰色に近く
彩度
• 明るさを表す属性
• (高)→明るい色
• (低)→黒っぽく
明度
表計算ソフトウェアで、自動的にグラフを作成する機能
グラフ作成機能
ものと人の動作の関係性
アフォーダンス
ソフトウェアやwebサイトなどの使いやすさのこと
ユーザビリティ
人とコンピュータとの間で情報の受け渡しを担うもの
ユーザインタフェース(UI)
・ 情報の提示を文字だけで行い、すべての操作をキーボードで行う
・ 初期のコンピュータで主流
CUI(キャラクターユーザインタフェース)
・ 行う操作の内容やその対象を絵柄(アイコン)で表示し、ユーザがそれをマウスやタッチパネルなどで指示する
・ 直感的な操作ができる
GUI(グラフィカルユーザインタフェース)
・ まるで人間同士のコミュニケーションのような発話や手振りによるユーザインタフェース
・ スマートフォンやテレビゲームの操作を中心に利用
NUI(ナチュラルユーザインタフェース)
能力や条件によらない、幅広い人々にとっての情報やサービスへのアクセスのしやすさ
アクセシビリティ
高齢の人や身体の不自由な人が、支障なく生活できるような機器や建物などをつくり、生活する上での障壁をとり除く工夫
バリアフリー
年齢、言語、国籍、身体能力などに関係なく、すべての人にとって使いやすい製品や生活しやすい環境を設計すること
ユニバーサルデザイン
ピクトグラム
連続して変化する量を、連続
した量で表現すること
アナログ
連続して変化する量を、一定の間隔で区切った数字や、段階的な数値で表現すること
デジタル
情報を伝達・複製すると( )が混じり、波形が変化
ノイズ(雑音)
デジタル情報の利点について(4つ)
1 情報の失われにくさ
2 情報の記録や通信のしやすさ
3 情報の統合のしやすさ
4 情報の処理のしやすさ
デジタル化すると情報は、( )や( )などの複雑な計算も可能となる
「圧縮」「符号化」
圧縮されたデータをもとのデータに戻すこと
展開(解凍、復元、伸張)
圧縮前と展開後のデータが完全に同じになる方式
• 文書ファイル、プログラムファイルなど。展開してから使用する。
可逆圧縮
多少のデータの変更を認めて圧縮効率を高める方式
• 画像、音声など。人間が認識しにくい成分を削り、その状態で使用する。
非可逆圧縮
デジタルでは、数値や文字、音声、静止画、動画などの情報を( )と( )の組み合わせで表すことができる。
「0」「1」
0と1の2つの状態しかもたない情報量の最小単位
2進数の1桁に相当する
ビット
8ビットをまとめたもの(8ビット = 1バイト)
• 1バイトは256通りの情報を表現できる
バイト
• 「0」と「1」という2つの信号で演算や制御を行う回路
• コンピュータは論理積(AND)回路、論理和(OR)回路、否定(NOT)回
路の組み合わせですべての計算を行うことができる。
論理回路
• 2つの入力がともに1の時だけ、出力信号が1になる回路
• 数学「集合」における A∩B のイメージ
AND回路
AND回路
2つの入力がともに1の時だけ、出力信号が1になる回路
• 入力のいずれか一方が1であれば、1を出力する回路
• 数学「集合」における A∪B のイメージ
OR回路
OR回路
入力のいずれか一方が1であれば、1を出力する回路
• 入力した信号を反転した値を出力する回路
• 数学「集合」における A のイメージ
NOT回路
NOT回路
入力した信号を反転した値を出力する回路
文字や記号といった文字列も( )と( )の組み合わせで表現できる
「0」「1」
この文字や記号を、2進数でどのように表すか取り決めたも( )という
文字コード
7ビットで表現する文字コード
ASCI I コード
2バイトの文字コード
... 2^8×2^8=256×256=( )種類の文字や記号を表すこととができる。
65,536(約6万)
日本語に対応している文字コード(2つ)
「JISコード」「 シフトJISコード」
Unixで使用する文字コード
EUC
世界各国の文字体系に対応した文字コード
Unicode(ユニコード)
同じ文字列でも、想定した文字コードと異なる文字コードで表すと、( )が起こる。
文字化け
文字コード化
エンコード
文字列に戻す
デコード
1秒間に含まれる波の数、単位はヘルツ[Hz]
周波数
周波数の単位
ヘルツ[Hz]
1個の波が伝わる時間、単位は秒[s]
周期
【音のデジタル表現】波を一定の時間間隔に分割し、量として取り出す。
標本化(サンプリング)
【音のデジタル表現】電圧に対しても一定間隔に分割し、標本点の値に最も近い段階値で表す。
電子化
【音のデジタル表現】量子化した数値を2進数の0と1の組み合わせに置き換える。
符号化
【音のデジタル表現】波を量として取り出した点
標本点
【音のデジタル表現】分割する時間間隔
標本化周期
【音のデジタル表現】1秒間に標本化する回数
標本化周波数(サンプリング周波数)
【音のデジタル表現】1秒間とすると、標本化周波数は( )[Hz]
3[Hz]
標本化(サンプリング)
量子化
符号化
量子化する際の段階の数(ビット数)
量子化ビット数
標本化(サンプリング)→量子化→符号化の方式を( )という。
PCM(パルス符号変調)方式
【画像のデジタル表現】画素の濃淡情報を光センサで一定の距離間隔で読み取る
標本化
【画像のデジタル表現】音声と同様、読み取った色を数値化
量子化
【画像のデジタル表現】量子化した値を2進数で表し、0と1の組み合わせに置き換える
符号化
【画像のディジタル化】画像の明るさを画素(一定の距離間隔)ごとに取り出す。取り出した各画素の代表的な明るさを求める。
標本化
【画像のディジタル化】各画素の明るさを、最も近い段階地の明るさにそろえ、数値化する。
量子化
【画像のディジタル化】2進数にする。
符号化
画像の精度であり、画素の数で決まる
• 画像を細かく分割 → きめ細かくなめらかな画像(解像度が高い)
解像度
解像度の表現(ディスプレイ、画像ファイルなど)
横×縦の総画素数で表す
【解像度の表現(プリンタやスキャナなど)】
( )(= 2.54cm)の中に入る画素数で表す
1インチ
【解像度の表現(プリンタやスキャナなど)】
単位に( )や( )を用いる
「dpi」「ppi」
【横:縦 が 4:3】640×480
VGA
【横:縦 が 4:3】800×600
SVGA
【横:縦 が 4:3】1024×768
XGA
【横:縦 が 4:3】1600×1200
UXGA
【横:縦 が 16:9】1920×1080
フルHD
【横:縦 が 16:9】3840×2160
4K
光の三原色
赤、緑、青
光の三原色は混ぜると( )が増し( )に近づく
「明るさ」「白」
混ぜると明るさが増し白に近づく
加法混色
色の三原色
シアン、マゼンタ、イエロー
色の三原色は混ぜると( )なり、( )に近づく
「暗く」「黒」
混ぜると暗くなり、黒に近づく
減法混色
光の三原色は主に何に使われるか。
テレビやコンピュータのディスプレイなど
光の三原色は主に何に使われるか。
カラープリンタなど(実際の印刷は黒(Key plate)も使用)
画像を構成する最小の単位
画素(ピクセル、ドット)
赤、緑、青に対して、それぞれ8ビット割り当てると、各色 2^8 = ( )段階の明るさで表現できる。
256
赤、緑、青に対して、それぞれ8ビット割り当てると、約( )色(28×28×28=256×256×256 = 16,777,216)まで表現できる。
1677万
赤、緑、青に対して、それぞれ8ビット割り当てることを24ビット( )と呼ぶ。
フルカラー
フルカラーでは、1画素あたり 8ビット×3色 = ( ) ビットのデータ量が必要
24
画素の明るさを、何段階に分けるかを表す段階数
階調
1ビット ... 各色( )階調(2^1=2) → 全8色
2
2ビット ... 各色( )階調(2^2=4) → 全64色
4
8ビット ... 各色( )階調(2^8=256) → 全16,777,216色
256
図形を使って画像を描く
• 座標や使用する図形の指定などで記述
→ データ量を少なくできる
拡大しても滑らかに表示
ベクタ形式
画素の濃淡で画像を扱う
• 画素単位で色や明るさを数値データとして表現
→ データ量は多くなる
拡大するとジャギーができる
ラスタ形式
【ベクタ形式】( )系ソフトウェアで画像
を描く
ドロー
【ラスタ形式】( )系ソフトウェアで画像
を描く
ペイント
【ベクタ形式】文字は( )を使用
アウトラインフォント
【ベクタ形式】文字は( )を使用
ビットマップフォント
【CPU】命令やデータが保存されている。
主記憶装置
【CPU】主記憶装置のどの番地の命令を次に取り出すかを指定する。
プログラムカウンタ
【CPU】主記憶装置から取り出した命令を一時的に保存する。
命令レジスタ
【CPU】命令を解読して各部を制御する。
命令読解器
【CPU】データを一時的に保存する。
データレジスタ(レジスタ)
【CPU】加算などの算術演算やその他の演算を行う。
演算装置
キーボード、ディスプレイ、CPUなどのような各装置のこと
ハードウェア
主記憶装置や補助記近い大きさの小数どうしで減算を行った時、有効数字が減る現象による誤差憶装置に保存されるプログラム
ソフトウェア
・コンピュータを動かすためのソフトウェア。全体を管理、制御している
・Windows、macOS など
オペレーティングシステム(OS、基本ソフトウェア)
「個別の目的のために使用されるソフトウェア
・文書作成(Word、ドキュメント)、表計算(Excel、スプレッドシート)、 プレゼンテーション (PowerPoint、スライド)
・Web ブラウザ (Google Chromeなど)、画像処理など
応用ソフトウェア(アプリケーションプログラム)
・周辺機器を動作させるためのプログラム。
・OSに追加することで、さまざまな周辺機器に対応することができる。
ドライバ
多くのOSでは
・画面上に画像(アイコン) でファイル等を表示。
・アイコンをマウスで操作して命令の実行や内容を表示。
→ このような環境を( )という。
GUI
動画を構成している1枚1枚の画像
フレーム
1秒に再生するフレーム数を( )と呼ぶ(単位:fps)
フレームレート
1秒に再生するフレーム数をフレームレートと呼ぶ(単位:( ))
fps
テレビやビデオ : 約( )fps、あるいは約( )fps
30、60
フィルム映画 : ( )fps
24
動画はデータ量が大きく、( )して利用する
圧縮
静止画のデータ量
→ 1画素のデータ量 × ( )
(1画素をRGB各8ビット(256階調)で表現する場合 : 3[B]×画素数)
画素数
動画のデータ量
→ 画像データ量 × ( ) × 時間
フレームレート
【データの圧縮】くりかえしのあるデータを、データと連続する回数におきかえて表す方法
ランレングス法
【データの圧縮】データ内のくりかえしパターンを、短い別の表現におきかえる方法
エントロピー符号化
BMP
「JPG」「GIF」「PNG」
「MPEG」「mp3」「WMA」
近い大きさの小数どうしで減算を行った時、有効数字が減る現象による誤差
桁落ち誤差
計算結果の桁数が、扱えるビット数を超えることによって発生する誤差
桁あふれ誤差
ビットの最大値を上回る
オーバーフロー
ビットの最小値を下回る
アンダーフロー
途中で計算を打ち切ってしまうことで発生する誤差
打切り誤差
大きい値と小さい値で和(差)を求めた時に小さな値の桁情報が無視され計算に反映されず起こる誤差
情報落ち誤差
有効桁以降の値を切り捨てることで発生する誤差
丸め誤差
計算や情報処理の手順を定式化(決まった形の式や言葉で表明)したもの
アルゴリズム
アルゴリズムをコンピュータが実行できるように記述したもの処理する順に並べた命令文の集合体ともいえる
プログラム
ルゴリズムをわかりやすく表現する方法の一つ似たものとして、アクティビティ(処理の流れを表現)中状態移図(機器などの状態の移り変わりを表現)がある
フローチャート(流れ図)
辞書の初の単語から1つずつ順番にさがしだす方法。辞書に載っている単語は非常に多く、最初の単語から順番に調べるこの方法では、探索にかかる時間が長くなってしまう
単純前方探索
開いたページの単語がさがしている単語より前か後ろかによって、ページを2 分割しながら探索する方法(教科書 P96~P98参照)
二分法探索
各処理が直線的につながっている構造。処理1→処理2の順に実行。
順次構造
条件によって実行する処理が分かれる構造
条件はYes(真)かNo(偽)で答えられる形で定義
選択構造
判定条件が満たされている(真)の間、処理を繰り返し実行(ループ)する構造
反復構造
コンピュータができるようにアルゴリズムを記述すること
プログラミングのために考えられた専用の言語をプログラミングにという、また、プログラミング言語によって記述されたアルゴリズムをプログラムという
プログラミング
コンピュータのハードウェアの機能を直接指示する
低水準言語
人間が使うことばや数式に近い書き方をする。
高水準言語
プログラムを直接解釈、実行していく
インタプリタ方式
プログラム全体をまとめて実行できる形式に翻訳する
コンパイラ方式
プログラムをつくる際には、プログラムの不具合を見つけることを支援するソフトウェア
デバッガ
プログラムをつくる際に使う、これらのソフトウェアを一体化したもの
統合開発環境(IDE)
【低水準言語】
・0と1だけで記されたプログラム
・コンピュータが直接理解できる
機械語
【低水準言語】
・機械語を英数字に置き換えて人間にわかりやすくしたもの
アセンブリ言語
【高水準言語】
・実行前にまとめて翻訳する言語
コンパイラ言語(C、Javaなど)
【高水準言語】
・命令文を一つずつ翻訳しながら実行
インタプリタ言語(BASIC、JavaScriptなど)
プログラムの手順を順番に記述する
手続き型
データとそのデータに対する処理をまとめて記述する
オブジェクト指向
プログラムを関数の集まりとして記述する
関数
プログラムを論理の集まりとして記述する
論理
キーボード、ディスプレイ、CPUなどのような各装置のこと
ハードウェア
主記憶装置や補助記憶装置に保存されるプログラム
ソフトウェア
入力装置、出力装置、演算装置、制御装置、記憶装置
五大装置
五大装置
入力装置、出力装置、演算装置、制御装置、記憶装置
命令やデータが保存されている。
主記憶装置
主記憶装置から取り出した命令を一時的に保存する。
命令レジスタ
命令を解読して各部を制御する。
命令解読器
メモリからレジスタに読み出し
READ
レジスタからメモリに書き込み
WRITE
レジスタ間の和
ADD
プログラムの停止
STOP
• コンピュータを動かすためのソフトウェア。全体を管理、制御している
• Windows、macOSなど
オペレーティングシステム(OS,基本ソフトウェア)
• 個別の目的のために使用されるソフトウェア
• 文書作成(Word、ドキュメント)、表計算(Excel、スプレッドシート)、プ
レゼンテーション(PowerPoint、スライド)
• Webブラウザ、画像処理など
応用ソフトウェア(アプリケーションプログラム)
• 周辺機器を動作させるためのプログラム。
• OSに追加することで、さまざまな周辺機器に対応することができる。
ドライバ
• アイコンなど画像をマウス等で操作することで
命令を実行したり内容を表示したりする環境
• Windows など
GUI(Graphical User Interface)
• 文字で命令を入力して実行させる環境
• コマンドプロンプト(Windows内のアプリケーション) など
• CLI(Command Line Interface)ともいう
CUI(Character User Interface)
演算した結果、数値として表せる範囲をこえた場合
オーバーフロー
近い大きさの小数どうしで減算を行った時、有効数字が減る現象による誤差
桁落ち誤差
計算結果の桁数が、扱えるビット数を超えることによって発生する誤差
桁あふれ誤差
ビットの最大値を上回る
オーバーフロー
ビットの最小値を下回る
アンダーフロー
途中で計算を打ち切ってしまうことで発生する誤差
打ち切り誤差
大きい値と小さい値で和(差)を求めた時に小さな値の桁情報が無視され計算に反映されず起こる誤差
情報落ち誤差
計算や情報処理の手順を定式化(決まった形の式や言葉で表現)したもの
アルゴリズム
• アルゴリズムをコンピュータが実行できるように記述したもの
• 処理する順に並べた命令文の集合体ともいえる
プログラム
• アルゴリズムをわかりやすく表現する方法の一つ
• 似たものとして、アクティビティ図(処理の流れを表現)がある
フローチャート(流れ図)
• 辞書の最初の単語から1つずつ順番にさがしだす方法
• 辞書に載っている単語は非常に多く、最初の単語から順番に調べる
単純前方探索では、探索にかかる時間が長くなってしまう
➡ 単純前方探索を改良して、改良型前方探索が考えられた
単純前方探索
• 開いたページの単語がさがしている単語より前か後ろかによって、
ページを2分割しながら探索する方法
二分法探索
各処理が直線的につながっている構造
順次構造
• 条件によって実行する処理が分かれる構造
• 条件は、Yes(真)かNo(偽)で答えられる形で定義
反復構造(繰り返し構造)
コンピュータが処理できるようにアルゴリズムを記述すること
プログラミング
プログラムを作成するソフトウェア
エディタ
プログラムを実行するためには、コンピュータが理解できるように処理する必要がある。このためのエディタを、プログラミング言語のなんというか
処理係
プログラムを直接解釈、実行していく
インタプリタ方式
プログラム全体をまとめて実行できる形式に翻訳する
コンパイラ方式
プログラムをつくる際には、プログラムの不具合を見つけることを支援するソフトウェア
デバッガ
プログラムをつくる際に使う、これらのソフトウェアを一体化したもの
統合開発環境(IDE)
・0と1だけで記されたプログラム
・コンピュータが直接理解できる
機械語
・機械語を英数字に置き換えて
人間にわかりやすくしたもの
アセンブリ言語
・実行前にまとめて翻訳する言語
コンパイラ言語
・命令文を一つずつ翻訳しながら実行
インタプリタ言語
C、Java
コンパイラ言語
BASIC、JavaScript
インタプリタ言語
コンパイラ言語の例
C、Java
インタプリタ言語の例
BASIC、JavaScript
プログラムの手順を順番に記述する
BASIC, JavaScript, C など
手続き型
データとそのデータに対する処理をまとめて記述する
Java, JavaScript, Python など
オブジェクト指向型
プログラムを関数の集まりとして記述する
Haskell, Lisp, Scheme など
関数型
プログラムを論理の集まりとして記述する
Prolog など
論理型