1. コンピュータ/ハードウェア原理
1.1. ディジタル回路(内部演算・2進数等)
1.1.1. n進数
情報処理において用いられる進数としては、10進数、2進数、8進数、16進数などがある。
10進数 | 2進数 | 8進数 | 16進数 |
---|---|---|---|
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | 10 |
1.1.2. 基数変換
基数変換はn進数の数をm進数の数の表記に変換すること。
n進数から10進数への変換
1101.011(2)の10進数への変換
2進数 | 1 | 1 | 0 | 1 | . | 0 | 1 | 1 |
---|---|---|---|---|---|---|---|---|
重み | 2^3 | 2^2 | 2^1 | 1 | + | 1/(2^1) | 1/(2^2) | 1/(2^3) |
計算値 | 8 | 4 | 2 | 1 | + | 1/2 | 1/4 | 1/8 |
計算: 8x1+4x1+2x0+1x1+1/2x0+1/4x1+1/8x1 = 13.375
160.4(8)の10進数への変換
2進数 | 1 | 6 | 0 | . | 4 |
---|---|---|---|---|---|
重み | 8^2 | 8^1 | 1 | + | 1/8 |
計算値 | 64 | 8 | 1 | + | 1/8 |
計算: 64x1+8x6+1x0+(1/8)x4=64+48+0+1/2=112.5
10進数からn進数への変換
整数部分は素因数分解(割り算)、小数部分は因数結合(掛け算)で変換する。
ex)13.32の2進数への変換 13/2 = 6...1 => 6/2 = 3...0 => 3/2 = 1...1 => 1/2 = 0....1 => 1011 0.32 x 2 = 0.64 => 0.64 x 2 => 1.28 => 1.28 x 2 => 2.56 => 0.010
∴ 1011.010....
1.1.2. 2進数の計算と表現
1.1.2.1. 2進数の和と差
和に関しては10進数の足し算と同じように考え、 差に関しては正の数をビット反転して最下位桁に1を足したもの(2の補数)で和をとる
ex)101(2)-11(2) = 0101 + (1100+1) = 0101 + 1101 = 10010 => 10
1.1.2.2. シフト演算と積と商
2進数を表すビット列を左右にずらす作業をシフト演算と呼ぶ。
左論理シフトと右論理シフト
左論理シフトは2^n倍を表し、右論理シフトは1/2^nを示す。 また左論理シフトにより値域を超えた場合はオーバーフローと呼ぶ。
右論理シフトにより値域を超えた場合は余りである。
算術シフト
符号を考慮して行うシフト演算のことである。 積に関しては左論理シフトをして空になった桁は0で埋めて、ビット値域の最上位桁に+αで符号ビットを合わせる。
商に関しては右論理シフトをしてビット値域の不足分とビット値域の最上位桁に+αで符号ビットで埋める。 二つともはみ出した桁数は削除する。
積
2^nを利用した和を利用して計算。
ex) n x 7 = n x (2^2 + 2 + 1) = n x 2^2 + n x 2 + n x 1
商
2^nを利用した差を利用して計算。
ex) 15/3 => 1111(2)/11(2) => 1111(2) - 1100(2) => 2^2 + 2^0 =5 =>101(2)
1.1.3. コンピュータにおける小数点の扱い
1.1.3.1. 固定小数点数
ビット列のどの位置に小数点があるかを暗黙的に決めて扱う小数表現
1.1.3.2. 浮動小数点数
指数表記を用いて小数点以下を表現する手法 コンピュータはメモリに符号と指数部と仮数部に値を分け値を保持する。 符号には+-の情報を、指数部には累乗の情報を、仮数部には値本体を保存する。
1.1.3.3. 浮動小数点数の正規化
正規化を行うことで有効な桁数を多くとることができる。 そうすることで誤差分が減り、値の精度を高めることが可能。
1.1.3.4. 小数点誤差
表記上、割り算をした場合割り切れずに永遠に続く数字ができることがある。 それは無限小数と呼ばれる。
1.1.3.5. 桁あふれ誤差
浮動小数点数の指数部が範囲を超過して精度が保てずに生じる誤差である。 限りなく大きい数字や限りなく小さい実数で起こる。
1.1.3.6. 情報落ち
絶対値の大きい数と小さい数の加減算を行ったときに、絶対値の小さい値が計算結果に反映されないことで生じる誤差である。
1.1.3.7. 打切り誤差
計算処理を終わるまで待たずに途中で打ち切ることで生じる誤差である。
1.1.3.8. けた落ち
絶対値がほぼ等しい数字の差を求めた際に、有効桁数が大きく減ることで生じる誤差である。
1.1.3.9. 丸め誤差
表現可能な桁数(値域)を超えてしまったため、最小桁より小さい数字が四捨五入や切り上げ、切り捨てなどを行 うことで生じる誤差である。
1.1.4. コンピュータ回路
1.1.4.1. 論理演算
コンピュータにおいて、AND,OR,NOT等の論理演算をビットの演算に用いることで様々処理を実現している。
AND回路
AND回路の真理値表は以下の通りです。
Y = A・B
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
OR回路
OR回路の真理値表は以下の通りです。
Y = A+B
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
NOT回路
AND回路の真理値表は以下の通りです。
Y = /A
A | Y |
---|---|
0 | 1 |
1 | 0 |
1.1.4.2. 基本論理回路を組み合わせた論理回路
AND,OR,NOTを組み合わせると様々な論理回路を作成できる。 その代表例としてNAND,NOR,XORがある。
NAND回路
NAND回路はAND回路とNOT回路を直列に組み合わせた回路である。 NAND回路の真理値表は以下の通り。
Y = /(A・B)
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
NOR回路
NOR回路はOR回路とNOT回路を直列に組み合わせた回路である。 NOR回路の真理値表は以下の通り。
Y = /(A+B)
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
XOR回路
XOR回路はNOT回路とAND回路を接続したもののNOTがない側を並列誘引し、AND出力側をOR回路で組み合わせた回路である。
XOR回路の真理値表は以下の通り。
Y = A⊕B
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
1.1.4.3. 半加算器・全加算器
加算器には下位の桁上がりを考慮しない半加算器とそれを考慮する全加算器がある。
半加算器
半加算器はAND回路とXOR回路を並列誘引接続し組み合わせた回路で作られます。
入力値A,B、出力値C,Sとすると半加算器の真理値表は以下の通り。
A | B | C |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
全加算器
全加算器は半加算器とOR回路を並列接続で組み合わせた回路。 OR回路側の出力を上位桁、2つ目以降の半加算器の出力を下位桁として扱える。
1.1.3.4. ビットの操作と反転
ビットの反転
ビットの反転にはXOR回路を用いる。 反転方法は以下の通り。
- 反転したいビット列を用意
- 反転させたい位置のみを1それ以外を0にしたビット列を用意
- 上記2つのビット列でXORをとる
ビットの取り出し
ビットの取り出しにはAND回路を用いる。 取り出し方法は以下の通り。
- ビットを取り出したいビット列を用意
- ビットを取り出したい位置に1それ以外を0にしたビット列を用意
- 上記2つのビット列でANDをとる
1.1.3.5. デジタルデータの表記
1.1.3.5.1. ビット(Bit)とバイト(Byte)の関係と単位
8bitをひとまとまりにした単位をByteとしている。 記憶容量等はByteを用いて表記される。
またByteの各単位系は以下の通りです。
記憶容量などの大きい数値を表す単位系
bit | 乗数 | 単位 |
---|---|---|
キロ(K) | 3 | 1KB=1024B |
メガ(M) | 6 | 1MB=1024KB |
ギガ(G) | 8 | 1GB=1024MB |
テラ(T) | 12 | 1TB=1024GB |
情報速度など小さい数値を表す単位系
bit | 乗数 | 単位 |
---|---|---|
ミリ(m) | -3 | - |
マイクロ(μ) | -6 | - |
ナノ(n) | -8 | - |
ピコ(p) | -12 | - |
1.1.3.5.2. コンピュータにおける文字の表現方法
コンピュータは数値を文字に割り当てることで文字を表現しています。
ASCIIの文字コード表の例です。このコードでは1文字当たり7bit。
文字コードの種類には以下のような種類がある。
- ASCII ・・・ 米国規格会が定めた基本的な文字コード、アルファベットと数字といくつかに記号のみを表し1文字7bitです
- EBCDIC ・・・ IBMが定めた文字コードで1文字8bitで表し、大型コンピュータで用いられる
- Shift-JIS ・・・ ASCIIの文字と混在させて使える日本語文字コード表。ひらがなや漢字、カタカナが使えます。windowsで使われており、1文字2Byteです
- EUC ・・・ 拡張UNIXと呼ばれ、UNIX系のOSで使われる日本語文字コード表、1文字基本2Byte、補助漢字は3Byteで表される
- Unicode ・・・ 全世界の文字コードを1つにしようとして作成された文字コード、現在は1文字4Byteで、ISOにより標準化された
1.1.3.5.3. マルチメディアデータの表現
写真や音声、動画などのマルチメディアデータは連続したデータであるため、ディジタルデータへの変換する作業が必要。
画像データ
画像データは点の情を法を集めたものであり、ドットと呼ばれる単位で構成される。
1ドット当たりの情報量
色数 | 画像 |
---|---|
2色 | 白黒画像、1ドットにつき1bit |
16色 | 1ドットにつき4bit |
256色 | 1ドットにつき8bit |
65535色 | 1ドットにつき16bit |
2^24(25ビット) | フルカラー画像、1ドット24bit |
音声データ
音声データはアナログ波形のデータであり、ディジタル化して数値表現する方式はPCMである。
標本化
アナログデータを一定の単位時間で区切り、時間ごとの信号を標本として抽出する処理 サンプリング周波数はどの間隔で標本を得るか示すものである。
例:CDのサンプリング周波数が44100Hz,量子化ビット数が16ビットだとするとサンプリング周期は? Ts = 1/44100
量子化
サンプリングしたデータを段階数に当てはめ整数値に置き換える処理 このときの量子化した段階の数を量子化ビット数と呼ぶ
符号化
量子化で得たデータを2進数に直す処理
1.2. アナログデータの制御
1.2.1. センサとアクチュエータ
コンピュータはセンサやアクチュエータを用いて、アナログ情報の取得や機械的動作を実現している。
- センサ ・・・ 熱、光などの自然界の情報を電気信号に変換し、A/D変換しコンピュータに伝える
- アクチュエータ ・・・ 電気信号を物理的な動作量に変換する装置。モータやアームなどが例です
1.2.1. 制御方式
- シーケンス制御 ・・・ 定められた順序や条件に従い、逐次処理を進めていく制御方式
- フィードバック制御 ・・・ 現在の状況を定期的に計測し、目標値とのずれを入力に戻し、出力結果を目標値と一致させようとする制御方式
1.3 CPU
1.3.1. CPUとコンピュータ周辺5大機器
1.3.2. ノイマン型コンピュータ
ノイマン型コンピュータは以下の特徴を持つコンピュータであり、現在のほとんどのコンピュータがノイマン型である。
- プログラム内蔵方式 ・・・ プログラム実行時にプログラムを予め主記憶装置上に読み込んでおく方式
- 逐次制御方式 ・・・ 命令を1つずつ取り出し順番に実行していく方式
1.3.3. 主記憶装置のアドレス
主記憶装置にはプログラムの他に処理中の演算結果などを含む様々なデータが記憶されている。
主記憶装置は一定の区画ごとに番号が振られており、それを指定することで任意の場所の読み書きが可能である。 この番号はアドレスと呼ばれる。
1.3.4. CPUの命令実行手順とレジスタ
CPUが命令を実行するために取り出された情報はレジスタと呼ばれるCPU内部の記憶装置に保存される。
CPUの命令実行手順は以下の通りです。 1. 命令の取り出し(フェッチ) 2. 命令の解読 3. オペランド呼び出し 4. 命令実行 CPUはこれらの動作を繰り返す。
レジスタの種類
レジスタの種類には以下に様なものがある。
命令取り出し(フェッチ)
プログラムカウンタが取り出す命令のメモリアドレスを持つ。 プログラムカウンタに従ってアドレスを参照し命令を取り出し、命令レジスタにそれを記憶させる。 それが終わった後プログラムカウンタの値をインクリメントする。
命令解読
命令レジスタに登録された命令は命令部とオペランド部で構成される。 命令部は命令の種類を示すコードが、オペランド部には処理対象となるデータを収めたメモリアドレスが格納される。 命令部の中身は命令デコーダへ送られます。 また、命令デコーダは命令部のコードを解読し、制御信号を必要な装置に通知する。
オペランド読み出し
オペランド(処理対象データ)は読み出しデータのメモリアドレスなどが格納され、 これを参照することでデータを読み出し、汎用レジスタに記憶させる。
命令実行
汎用レジスタからALUに処理データを読み出し演算し、その結果を汎用レジスタに書き戻す。
1.3.5. 機械語のアドレス指定方式
コンピュータは機械語と呼ばれる0と1で構成された命令語を理解し処理する。
命令レジスタに登録された命令のオペランド部には必ずメモリアドレスが入っているとは限らず、 基準値からの差分や、メモリアドレスが入っているメモリアドレスなど複雑なものが入っていることもある。 このように何かしらの計算によりアドレスを求める方式はアドレス修飾(アドレス指定) と呼ばれる。
即値アドレス指定方式
対象データそのものがオペランド部に入っている方式。
直接アドレス指定方式
オペランド部に記載してあるアドレスがそのままのアドレスとして使える方式。
間接アドレス指定方式
オペランド部に記載されているアドレス中に「対象となるデータが入ってる場所を示すメモリアドレスが記載されている。
インデックスアドレス指定方式
オペランド部の値にインデックス(指標)レジスタの値を加算することで実効アドレスを求める。
ベースアドレス指定方式
オペランド部の値にベースレジスタの値を加算することで実効アドレスを求める。
相対アドレス指定方式
オペランド部の値にプログラムカウンタの値を加算することで実効アドレスを求める。
1.3.6. CPUの性能指標
CPUの性能はクロック周波数、CPI、MIPS等の指標値を用い評価される。
クロック周波数
CPUはクロック周波数に合わせて動作を行い、クロック周波数が大きいほど高性能であると言える。 1周期で命令を1実行できるため、クロック周波数が1GHz、CPIが1クロックである場合10^9の命令を1秒で実行できることを表す。 またクロック周波数を1で割ったものはクロックサイクル時間と呼ばれ、クロック当たりの所要時間を示す。
CPI
CPI(Clock Per Instruction)は1命令当たり何クロック必要かを表すものである。
MIPS
MIPS(Million Instruction Per Second)は1秒間に実行できる命令の数を表したものである。
1.3.7. CPUの高速化技術
パイプライン処理
パイプライン処理は複数の命令を並列して実行する処理であり、全体の処理効率が高い処理です。 この処理では次々と命令を先読みしていってるため分岐命令が出た際に先読み分が無駄になることがある。 それは分岐ハザードと呼ばれる。
分岐予測と投機実行
パイプライン処理では分岐処理(ex:if)が発生する。この結果が明確になるまで次の命令を処理できないという問題がある。
そのため分岐予測と呼ばれる、次の命令はどれかを予想して無駄な待ち時間を発生させないようにする処理がある。 この処理に基づいて分岐先の命令を実行する手法が投機実行である。
スーパーパイプラインとスーパースカラ
パイプライン処理による高速化をさらに進める手法としてスーパーパイプラインやスーパースカラがある。
スーパーパイプライン
処理のレーンのステージをさらに細かいステージに分割することでパイプライン処理の効率アップを図るものである。
スーパースカラ
パイプライン処理を行う回路を複数持たせることで全く同時に複数の命令を実行できるようにしたものである。
CISCとRISC
CPUのアーキテクチャには高機能な命令を持つCISCと単純な命令のみで構成されるRISCがある。
CPUアーキテクチャ | 説明 |
---|---|
CISC | CISCはCPUに高機能な命令を持たせることで、一つの命令で複数な処理を実現するアーキテクチャである。マイクロプログラムをCPU内部に記憶させることで高機能な命令が実現可能。 |
RISC | RISCはCPU内部に単純な命令しか持たない代わりに、それらをハードウェアの実で実装し、一つ一つの命令を高速に処理するアーキテクチャである。ワイヤドロジックによりすべての命令をハードウェア的に実装される。 |
1.4. メモリ
1.4.1. メモリの分類
メモリはコンピュータの動作に必要なデータを記憶する装置である。 半導体メモリには2種類あり、それぞれRAMとROMと呼ばれる。
1.4.2. RAMの種類
DRAM
安価で容量が大きい、主記憶装置に用いられるメモリである。読み書き速度はSRAMよりも低速であり、記憶内容の維持のためには定期的に再書き込みするリフレッシュ動作が必要である。
SRAM
DRAMよりも非常に高速であるが高価である。小規模のキャッシュメモリとして用いられ、記憶内容の維持にリフレッシュ動作は不要である。
種類 | リフレッシュ動作 | 速度 | 集積度 | 価格 | 用途 |
---|---|---|---|---|---|
DRAM | 必要 | 低速 | 高 | 安価 | 主記憶装置 |
SRAM | 不要 | 高速 | 低 | 高価 | キャッシュメモリ |
1.4.3. ROMの種類
- マスクROM ・・・ 読み出し専用のメモリであり、製造時にデータが書き込まれている。
- PROM ・・・ ユーザの手でプログラミングし書き換えれるROMである
- EPROM ・・・ 紫外線でデータを消去し書き換えられる
- EEPROM ・・・ 電気的にデータを消去し書き換えられる
- フラッシュメモリ ・・・ ブロック単位でデータを消去し書き換えられる
1.4.4. 主記憶装置・高速化手法
記憶装置ごとのアクセス速度は以下の通りです。
CPUのレジスタ > メモリ(主記憶装置) > ハードディスクの磁気ディスク装置
これらの速度キャップを吸収できれば全体の効率がよくなり高速化できる。 そこで各記憶装置の待ち時間によるロスを減らすためにキャッシュがある。 レジスタとメモリの間に設けるキャッシュメモリや、メモリとハードディスクの間に設けるディスクキャッシュがある。
1.4.5. キャッシュメモリ
1.4.6. 主記憶装置への書き込み方式
キャッシュメモリは書き込みでも使われ、あるタイミングで主記憶装置にも反映されます。 主記憶装置を書き換える方式に、ライトスルー方式、ライトバック方式の2つがある。
ライトスルー方式
この方式はキャッシュメモリへの書き込みと同時に主記憶装置にも書き込みます。
ライトバック方式
この方式は通常はキャッシュメモリにのみ書き込みを行い、キャッシュメモリから追い出されるデータが発生するとそれを主記憶装置に書き込み更新する。
1.4.7. ヒット率とアクセス時間
キャッシュメモリに目的とするデータが入っている確率はヒット率で表す。 また、キャッシュメモリを使ったコンピュータの平均アクセス時間(実効アクセス時間)はヒット率で求まる。
キャッシュメモリへのアクセス時間:キャッシュメモリのアクセス時間xヒット率 主記憶装置へのアクセス時間:主記憶装置のアクセス時間x(1-ヒット率) 上記2式の和 => 実効アクセス時間
1.4.8. メモリインタリーブ
主記憶装置へのアクセスを高速化する技術にメモリインタリーブがある。 この手法では主記憶装置中を複数の区画に分け、複数の区画に同時アクセスすることで連続した番地のデータを一気に読み出す。
1.5. ハードディスクとその他の補助記憶装置
1.5.1. ハードディスクの構造と記憶方法
ハードディスクは高速回転するディスクに磁気ヘッドを使って情報を読み書きする。
セクタとトラック
ハードディスクの記憶領域
以下の使用のハードディスクの場合の総容量を求めてみます。
パラメータ | 値 |
---|---|
シリンダ数 | 1500 |
1シリンダあたりのトラック数 | 20 |
1トラックあたりのセクタ数 | 40 |
1セクタあたりのバイト数 | 512 |
{(512x4)x20}x1500 = 6.144x10^8 Byte
ファイルの記録
ハードディスクの最小単位はセクタである。 OSがファイルの読み書きをする場合は、複数のセクタを1ブロックとみなしたクラスタという単位で行われる。
データへのアクセス時間
ハードディスクへのデータの読み書きには以下3ステップで行われます。
- シーク(位置決め)
- サーチ(回転待ち)
- データ転送
- シークからサーチまでかかる時間は待ち時間として扱われます。 つまりアクセス時間はシークとサーチの時間とデータ転送時間の和で表せます。
以下のパラメータを用いてアクセス時間を算出してみます。
パラメータ | 値 |
---|---|
回転速度 | 5000t/m |
平均シーク時間 | 20ms |
1トラックあたりの記憶容量 | 15000Byte |
平均サーチ時間は{60x1000)ms/5000=12ms, 12ms/2=6ms データ転送時間は15000Byte/12ms = 1250Byte/ms, 5000/1250=4ms より 20ms + 6ms + 4ms = 30ms
1.5.2. フラグメンテーション
ハードディスク上でデータの書き込みと消去を繰り返すと、プラッタの空き容量は分散化されます。 また、その状態で新しく書き込みを行うと、書き込み箇所が離散化される。 このようにファイルがあちこちの領域に分けられ断片化する状態フラグメンテーション(断片化) と呼ばれます。
デフラグによる再整理
フラグメンテーションにより1つのファイルを読み書きするのに時間がかかります。 これを解決するために行われる作業にデフラグメンテーション(デフラグ) というものがある。
これは断片化したファイルデータを連続した領域に並べ直してフラグメンテーションを解決するものです。
1.5.3. RAID
複数のハードディスクを組み合わせ用いて、仮想的なハードディスクを構築運用する技術がRAIDである。
これらの用途はハードディスクの高速化や信頼性向上に用いられる。 RAIDはRAID0からRAID6までの7種類あり、求める速度や信頼性に応じて各種類を組み合わせて使用できる。
RAIDの代表的な種類
RAIDの種類 | 説明 |
---|---|
RAID0(ストライピング) | RAID0は一つのデータを2台以上のディスク分散させて書き込む。 |
RAID1(ミラーリング) | RAID1は2台以上のディスクに対して常に同じデータを書き込む。 |
RAID5 | RAID5は3台以上のディスクを使って、データと同時にパリティと呼ばれる誤り訂正符号も分散させて書き込む。 |
1.5.4 ハードディスク以外の補助記憶装置
駆動装置から記憶装置を簡単に取り出せるものはリムーバブルメディアと呼ばれる。
光ディスク(CD・DVD)
レーザ光線によりデータの読み書きを行うのが光ディスク装置である。
- CD ・・・ 記憶容量は650MBと700MBの2種類あり安価で大容量である。種類には再生専用と追記型、書き換え可能型の3種類である
- CD-ROM ・・・ 読み込み専用である再生用CD
- CD-R ・・・ 一度だけ書き込める追記型のCD
- CD-RW ・・・ 何度でも書き換え可能なCD
- DVD ・・・ CDよりも波長の短い赤色レーザで記録し、ビットの高密度化が可能であるため大容量を実現している
- DVD-ROM ・・・ 再生専用のDVD
- DVD-R ・・・ 追記型のDVD
- DVD-RW ・・・ 書き換え可能なDVD
光磁気ディスク(MO)
レーザ光線と磁気によりデータの読み書きを行うのが光磁気ディスク装置である。
磁気テープ(ビデオテープetc)
磁性体が塗布されたテープ状のフィルムに磁気を使って読み書きを行うカセット型の記憶媒体が磁気テープ装置である。 ブロックごとにスタート、ストップすることをせずに連続的に読み書きを行うものはストリーマと呼ばれる。
フラッシュメモリ
EEPROMの一種を補助記憶媒体に転用したものがフラッシュメモリである。 これを利用したものにメモリカードやUSBメモリがある。
SSD(Solid State Drive)
SSDは近年HDDの代替として注目を集めてる。 SSDはフラッシュメモリを記憶媒体として内蔵する装置である。 機会的な駆動部分がなく、省電力で衝撃にも強い。また高速に読み書きが可能。 ただしSSDには書き込み回数に上限がある。
1.6. その他のハードウェア
1.6.1. 入力装置
キーボードとポインティングデバイス
装置 | 説明 |
---|---|
キーボード | 数字や文字を入力するための装置 |
マウス | マウスの移動情報を入力し画面上の位置を示す装置 |
トラックパッド | 画面を触れることで移動情報を指し示す装置 |
タッチパネル | 画面を触れることで画面の位置を指し示す装置 |
タブレット | パネル上でペン等を動かすことで位置情報を入力する装置 |
ジョイスティック | スティックを傾けることで位置情報を入力する装置 |
読み取り装置とバーコード
装置 | 説明 |
---|---|
イメージスキャナ | 絵や画像をデータとして読み取る装置 |
OCR | 印字された文字や手書き文字などを読み取る装置 |
OMR | マークシートの読み取り位置を認識する装置 |
キャプチャカード | ビデオデッキなどの映像装置から、映像をデジタルデータとして取り込む装置 |
デジタルカメラ | フィルムの代わりにCCDを用いて画像をデジタルデータとして記憶する装置 |
バーコードリーダ | バーコードを読み取る装置 |
バーコードには2種類あり、商品用にはJANコード、2次元コードにはQRコードがある。
1.6.2. ディスプレイ
ディスプレイはコンピュータ出力を画面に表示する。 例としてブラウン管型のCRTディスプレイや液晶で薄型の液晶ディスプレイなどがある。
またディスプレイが表示されるきめ細かさは解像度と呼ばれる。 1ドット当たりRGBの光を重ねて表現される。
VRAM(ビデオRAM)
コンピュータは画面に表示される内容はVRAMと呼ばれる専用のメモリに保持する。 VRAMの容量によって扱える解像度と色数が異なります。 例えば、1024x768ドットの表示能力を持つディスプレイがある場合、16bit(65536色)を表示させたい場合のVRAMの容量は以下の通りです。
1024x768x16=12582912bit, 1byte=8bitなため、12582912bit/8 ≒1.6MByte
ディスプレイの種類
装置 | 説明 |
---|---|
CRTディスプレイ | ブラウン管を用いたディスプレイ、奥行きが必要であり消費電力も大きい |
液晶ディスプレイ | 電圧により液晶を制御しているディスプレイ、薄型で消費電力も小さい |
有機ELディスプレイ | 有機化合物に電圧を加えることで発光する仕組みを用いたディスプレイ、バックライトが不要である |
プラズマディスプレイ | プラズマ放電による発行を用いたディスプレイ、高電圧が必要である |
1.6.3. プリンタ
コンピュータの処理結果を印刷する装置
プリンタの種類
装置 | 説明 |
---|---|
ドットインパクトプリンタ | 印字ヘッドに多数のピンが内蔵され、このピンでインクリボンを打ち付け印字するプリンタ、印字品質は高くない |
インクジェットプリンタ | 印字ヘッドノズルより用紙に直接インクを吹き付け印刷するプリンタ、高速である |
レーザプリンタ | レーザ光線を照射することで感光体に印刷イメージを作成しそこに付着したトナーを紙に転写することで印刷するプリンタ、主にビジネス用 |
プリンタの性能指標
プリンタの解像度 プリンタの解像度は1inchあたりのドット数を示すdpiを用いて表されます。
プリンタの印刷速度 プリンタの印字速度は一秒間に何文字印字できるかを示すcpsと一秒間に何ページ印刷できるかを示すppmの2つがある。
1.6.4. 入出力インターフェス
コンピュータの入出力インターフェスにはさまざまあり、最もポピュラーなのはUSBである。 USBでは繋ぐと自動で設定が行われるプラグアンドプレイという仕組みが使われる。
パラレル(並列)とシリアル(直列)
入出力インターフェスはデータの転送方式によりパラレルインターフェスとシリアルインターフェスに分かれる。
IDE
内蔵ハードディスクを接続するために規格として使われていたpパラレルインターフェスである。 元々は最大2台までのハードディスクを接続できるという規格であったが、CD-ROMなどの接続も対応したEIDEとして拡張された。
IDEでは最大4台までの機器を接続が可能。
SCSI
ハードディスクやCD-ROM、MOドライブやイメージスキャナなどの様々な周辺機器の接続に使われていたパラレルインターフェス。
デイジーチェーンと呼ばれる数珠つなぎに機器を説ぞk数る方式をとる。また終端にはターミネータ(終端末抵抗)が必要である。 接続できるのはコンピュータ本体含め最大8台までである。また識別のために機器にID番号を割り当てる。
シリアルインターフェス
シリアルインターフェスの代表規格にはUSBやIEEE1394がある。
この2つは電源を入れたまま抜き差し可能なホットプラグと周辺機器につなぐと自動設定するラグアンドプレイに対応している。
USB
パソコンと各機器を繋ぐ際のもっとも一般的なインターフェスである。 USBハブを通してツリー状に接続されます。またUSBには複数の規格がある。
IEEE1394
i.LinkやFireWireという名前でも呼ばれ、ハードディスクレコーダなどの情報家電、ビデオカメラなどの機器に使われるインターフェス。 リピータハブを用いてツリー状の接続やディジーチェーン方式での接続が可能。
1.6.5. 無線インターフェス
無線で通信するタイプのインターフェスにはIrDAとBlueToothがある。
IrDA
赤外線を用いて無線通信を行う規格であり、携帯電話やノートPC等に使われています。 なおテレビのリモコンは同じく赤外線を用いますがIrDAではない。 また、障害物があると通信できない特徴がある。
BlueTooth
2.4GHz帯の電波を用いて無線通信を行う規格であり、コードレスイヤホンや携帯電話、マウスなど様々な周辺機器をワイヤレスに接続可能である。
通信距離は10mほどであり、障害物があっても関係がない。