センサー

[編集]

・加速度センサ(ACCELEROMETER)
 スマホを前後左右上下に移動させたときの加速度を検出できる。スマホの中にビー玉が1つ転がっていてそれの瞬間移動速度をxyzであらわすような感じ。加速度なのでおいてあるスマホは基本加速度ゼロが返ってきそうだけど微妙に数値が返ってくるのを深読みすると怖い。

・ジャイロスコープ(GYROSCOPE )
 角速度を検出するセンサー。スマホの回転速度を検出できる。ガンコンとかWiiリモコン的なやつ。回転速度をxyzであらわす。

地磁気センサ(MAGNETIC_FIELD)
・電磁波の強さを測定するセンサーというと難しいが、南北の磁気強度を検出する身近なものといえばコンパス。つまり方位を検出できる。

・傾きセンサ(ORIENTATION)
傾きセンサーでは, ヨー(Y回転)、ピッチ(X回転)、ロール(Z回転)の3つを使った姿勢が角度で取得できる。このうちヨーは方位角(Azimuth)として扱われるが、Androidでは地磁気センサの使用が推奨されており傾きセンサーは非推奨となってる。

CPU

[編集]

CPUとは計算機である。計算機では計算した結果をメモリにおいておくことで液晶がその数字を読み取って表示してくれる。PCはなんで計算することで画面に絵が出るのかというと、計算結果をテレビ用メモリに蓄えることで絵が出せる。テレビ用メモリとはキャンバスみたいなもので、テレビはこのキャンバス状のメモリを参照して絵を出す。この時に絵を出すのはテレビだが、どんな絵をキャンバスに書くかはプログラマがCPUに与えた命令による。CPUはテレビが読めるよう絵を数値に変換する計算を行ってくれる。

RISC / CISC

[編集]

単純、複雑といった違いのあるCPUの種類。
(ReduceのR / ComplexのC)

  • シンプルな構造に回帰、高速性を確保するRISC
    RISCプロセッサは回路を単純化して速度を稼ごうというアーキテクチャ
    ARM(Androidマシーンなど)、SH1~5(サターンのCPUがSH-2)、POWERPC(mac)など。
    MIPSはRISCアーキテクチャの1種
 
  • 現状の複雑だが高機能なCISC
    対して従来のCPUはCISC(シスク)と呼ばれる。
    x86、x64、MC68000など。現行のインテル系や、680x0がCISC。

出力

[編集]

出力といえばプリンタ出力、ファイル出力、ディスプレイ出力など、内部で作られたデータを外部に出すこと。アプリで作られた計算結果をファイルに出力する、出力された画像データをディスプレイに出力(表示)する、年賀状データをプリンタに出力する。ゲームなんかの画面は、ユーザーの入力に応じた画面を計算して作り、それをVRAMに乗っけてテレビに出力するわけである。

レジスタ

[編集]

CPUが持つ最小の記憶領域。メモリからレジスタに値をのっけてCPUで加工する。加工すると言っても掛け算とか足し算のような簡単な加工で、加工された値もまた別のレジスタに乗っけられる。レジスタの数は多くても20~30程度。
イメージとしてはメモリ内での複雑な計算を1つ1つカッコを外して順にレジスタに載せて加工し加工された値をまたメモリに戻してくることを繰り返して複雑な計算を実現する。そのメモリに蓄えられた複雑な計算結果をファイルやディスプレイに出力する。

ストール

[編集]

レジスタへの値を書き込む前に値を読みに行ってしまったり、別々の命令が同一のハードウェアを同時に使おうとして衝突することなどで起こる、待機やフリーズのこと。

GPU

[編集]

固定機能シェーダー / プログラマブルシェーダー

[編集]

もともと固定の機能しかなかったシェーダーが、プログラミング可能になってあるていど自由に機能を作れるようになったことからプログラマブルシェーダーと呼ばれるようになる。要は最初から与えられた機能のみでプログラム出来ない古いシェーダーが固定機能シェーダー、HLSLやCGを用いてシェーダーのプログラムを書けるのがプログラマブルシェーダー

GPGPU

[編集]

GPGPUの最初のGPは[General-Purpose Processing]の略で「一般用途に使うGPU」といったところか。プログラマブルになったシェーダーがあまりにプログラマブルなのでグラフィックの計算以外の仕事もさせられるようにしようというコンセプトで開発されているGPU。

HLSL / CG

[編集]

シェーダーのプログラムを描くための言語の1つ。マイクロソフトが開発した「HLSL(ハイレベルシェーダー言語)」とOpenGLで使われるGLSLと(機能的には)類似の物である。文法がNVIDIAのCg(C for Graphics)言語に非常によく似ている。

ヘルツとかリフレッシュレートとか

[編集]

ヘルツっていわれても「電波とかなんかの単位」くらいに思ってたけど調べてみると意外と簡単な単位で「1秒間に行われる同じ行動の数」と言える。3回なら3Hz。60回なら60Hz。1日に3回ご飯を食べると3Hzかというとそうではない。「1秒間に」3回ご飯を食べれば3Hzとなる。ディスプレイのリフレッシュレートが60Hz。1秒間に60回も画面を描き直すということ。秒間60コマで表示するTVモニタは60Hzと表現する。

15KHzモニター、31KHzモニターってどういうことか

[編集]

15KHzというのは「1秒間に15000回の仕事ができる」ということ。モニターがなんの仕事をするかというと、320x240の解像度のモニターだとすると横1ライン分(320ピクセル)を15000ライン描けるということ。1秒に15000ラインということは1フレーム(1/60秒)あたり250ライン描くことになる。縦幅が画面解像度より少し大きい計算になるが、つまり1秒間に320ピクセルx250の画面を60回描ける。

31Khzだと640x480の解像度を持つモニターで640x516ドットを60回描ける。なんでピッタリ480じゃなくて516かというと、1ラインずつ上から下まで480ライン描いた後、36ライン分の時間を使って一番上まで戻るからである。15KHzモニターで240ではなく250なのもそういう理由。

一般的に古いアナログモニターの解像度とリフレッシュレートは以下である。

  • RGBケーブル接続・・・15Khzモニター(320x240) リフレッシュレート60Hz
  • VGAケーブル接続・・・31Khzモニター(640x480) リフレッシュレート60Hz

ブートストラップ

コンピューターの電源を入れてからOSを起動して利用可能になるまで自動的に実行される処理のことで、ブートシーケンスと似ている。

ざっくりとしたCPU年表

[編集]
その他インテルAMD対応ハード備考
19708080Apple II
モトローラMC6800
モス6502ファミコン、PCエンジン(HuC6280)6800派生
ザイログ Z80MZ,MSX8080互換、大ヒット
μPD780CPC66,PC88Z80互換
モトローラMC6809FM-7,8,77,11DRUAGA、魔界村など
8086PC98E,F,M16bit、x86のご先祖
80186(V30)PC98U,VM,ワンダースワン8086互換
モトローラMC68000NEOGEO,x68000,メガドライブ、macintosh32bit
ARM
1990モス65816スーパーファミコン6802派生(8/16bit両対応)
ASCII R800MSX turboRZ80互換、16bit,RISCライク
80286PC98VX
198080386PC98RA,RX
x68030,machintosh
MIPS R3000PlayStation
i486
1990PentiumWindows95RISC/CISCの折衷
Pentium Pro
ARM6
ARM7DS
K6
Pentium IIWindows98
K6-2
Celeronローエンド向けCPU
Pentium IIIWindows2000SSE追加
Athlon
2000Sony EEPlayStation2128bit,MIPS
Pentium 4SSE2,WindowsXP
Athlon64 x2
R4000PSP
2006CoreWindowsVistaSSE2
PhenomII(K10)
Sony CellPlayStation3Power系
ARM Cortex-A8iPhone4
2010Core(Sandy Bridge)Windows7Core(第2世代)64bit
ARM Cortex-A9PSVita,iPad2,iPhone4S
ARM Cortex-A1532bitARM
Core(Ivy Bridge)Windows8Core(第3世代)