現在勉強している基本情報技術者試験についてまとめたものです。
自分のアウトプット用なので見やすさなどは期待しないでください。
ビットとバイト
バイト
8ビットを1とした単位。
末尾に小文字のbが書いてある場合はビット、大文字のBが書いてある場合はバイトを示す。
1バイトで表せる数は$2^8$で255通りあり、負の数も含めると0~127と-1~-128に分けられる。
補助単位
大きすぎたり小さすぎたりする数値を表すときに使う単位。
記憶容量などの大きい数値を表す補助単位
| 補助単位 | 意味 |
|---|---|
| キロ(k) | $10^3$ |
| メガ(M) | $10^6$ |
| ギガ(G) | $10^9$ |
| テラ(T) | 10¹² |
処理速度など小さい数値を表す補助単位
| 補助単位 | 意味 |
|---|---|
| ミリ(m) | $10⁻³$ |
| マイクロ(μ) | $10⁻⁶$ |
| ナノ(n) | $10⁻⁹$ |
| ピコ(p) | $10⁻¹²$ |
文字の表現方法
文字コード
文字に数値を割り当てたもの。
コンピューターは文字の意味など理解しておらず、この割り当てられた数値のみで判断している。
代表的な文字コードは以下のようなものがある。
ASCll(アスキー)
米国規格協会(ANSI)によって定められた、かなり基本的な文字コード。
含まれる文字はアルファベット、数字、いくつかの記号のみで、1文字を7ビットで表す。
EBCDIC(エビシディック)
IBM社が定めた文字コードで、8ビットを使って1文字を表す。
大型の汎用コンピューターなどで使われる。
シフトJISコード(S-JIS)
ASCllのコード体系の文字と混在させて使えるようになっている日本語文字コードで、ひらがな、カタカナ、漢字などが使える。
Windowsでも使われており、1文字を2バイトで表す。
EUC(イーユーシー)
拡張UNIXコードとも呼ばれ、UNIX上でよく使われる日本語文字コード。
基本的には1文字を2バイトで表すが、補助漢字などでは3バイト使う。
Unicode(ユニコード)
各国のありとあらゆる文字を1つのコード体系で表そうとした文字コード。
当初は1文字を2バイトで表す予定だったが、それでは足りずどんどん拡張されている。
マルチメディアデータの表現方法
写真や音声、動画などはいずれも連続した区切りのないアナログ情報なので、コンピューターで扱うには情報に区切りを持たせ、数値で表現できるようにする必要がある。
ビットマップ方式
コンピューターの扱う、代表的な画像データの表し方で、画像を細かいドットの集まりで表現する。
例えば、$640 × 480$ドットの場合、合計で307,200ドットとなる。
更に、1色につき1ビットの色情報がドットごとに加わり、フルカラーだと24ビット($2²⁴ = 16,777,216$)必要になる。
これらをかけると、その画像のデータサイズを求めることができる。
PCM(Pulse Code Modulation)
音声データのアナログ波形データをディジタル化する代表的な手法。
音声を微小な時間単位に区切り、その単位ごととの音程を数値化することで表現する。
標本化(サンプリング)
アナログデータを一定の時間単位で区切り、その時間ごとの信号レベルを抽出する処理(波形の横軸)。
どのような間隔で抽出するかをサンプリング周波数といい、1秒間に何回抽出するかを「Hz」で表す。
また、サンプリング周波数1つ分の間隔をサンプリング周期という。
量子化
信号レベルを何段階で表現するか定め、サンプリングしたデータをその段階数に当てはめて整数値に置き換える処理(波形の縦軸)。
量子化ビット数
量子化の段階数を表すビット数。
アナログデータのコンピューター制御
機器の制御は、下記の3つがセットとなって実現される。
センサ → コンピューター → アクチュエータ
(A/D変換) (D/A変換)
センサ
熱や光をはじめとする自然界の様々な情報を量として捉え、電気信号に変換する装置。
アクチュエータ
モーターた電磁石などを利用して、入力信号を直接信号や回転運動などの機械エネルギーに変換し、実際に動かす駆動装置。
シーケンス制御
あらかじめ定められた順序や条件に従って、制御の各段階を逐次進めていく制御装置。例えば洗濯機など。
フィードバック制御
現在の状態を定期的に測定し、目標値とのズレを入力側に戻して反映させることで、出力結果を目標値と一致させようとする制御方式。例えばエアコンなど。