半導体メモリは、RAM(Random Access Memory)とROM(Read Only Memory)に大別できます。RAMは揮発性メモリ(Volatile Memory)で、ROMは不揮発性メモリ(Non-Volatile Memory)です。揮発性とは、電源を切ると記憶していた内容が消えてしまう性質のことです。

■RAMの種類
RAMにはDRAM(Dynamic RAM)とSRAM(Static RAM)があります。

DRAMの特徴
①コンデンサを使用した回路:時間とともに自然放電→リフレッシュ動作(再書込み)が必要→低速→主記憶装置に使用
②集積度が高い→大容量で安価

SRAMの特徴
①フリップフロップ回路:電源が供給されている限り記憶を保持し続ける→リフレッシュ動作不必要→高速→キャッシュメモリに使用
②集積度が低い→小容量で高価

■ROMの種類
記録されている内容を書き換えることができないマスクROM(Mask ROM)、消去したり書き込んだりできるPROM(Probrammable ROM)などがある。

※PROM
OTPROM(One Time Programmable ROM)…一回のみ書込み可能、消去不可
EPROM(Erasable Programmable ROM)…書込み可能、消去可能
UV-EPROM(Ultra-Violet EPROM)…紫外線を照射することで消去可能
EEPROM(Electrically EPROM)…電圧印可で消去可能
 ∟フラッシュメモリ(flash memory)…ブロック単位での消去可能、大容量化が容易


[解いた問題]
平成15春問16、平成20秋問16、平成21秋問9

[References]
http://ja.wikipedia.org/wiki/%E5%8D%8A%E5%B0%8E%E4%BD%93%E3%83%A1%E3%83%A2%E3%83%AA
平成22年度 イメージ&クレバー方式でよくわかる 栢木先生の基本情報技術者教室/栢木 厚
(P132-134,137,138)


にほんブログ村 資格ブログ IT系資格へ
にほんブログ村
人気ブログランキングへ
使い方が似ていて何かとややこしい構造体と共用体についてまとめておきます。

まずは構造体の使い方

struct タグ名
{
データ型 メンバ1;
データ型 メンバ2;
:
:
}変数名;



つぎに共用体

union タグ名
{
データ型 メンバ1;
データ型 メンバ2;
:
:
}変数名;



違うところは最初のstructとunionだけ。つまり、書き方はまったく一緒ということです。では何が違うのか。

構造体のメンバは、それぞれが独自に記憶領域を確保するのに対し、
共用体のメンバは、それぞれが同じ記憶領域を共有するのです。

だから、共用体の場合、メンバ1に何か値が入っているときに、メンバ2に何か値を入れると、メンバ1に入っていた値は無効になってしまいます。それぞれが同じ場所を共有しているのですから。

このように一見不便そうな共用体ですが、便利な使い方もあります。

共用体は、一人の人間に複数の名前をつけるようなことと考えられます。

同じ人を状況に応じて別の呼び方で呼べると便利ですよね。

同じ場所へのアクセス方法が複数あることで、とても便利なときがあるのです。

[References]
http://www.mapee.jp/cpp/post_31.html
http://www.geocities.jp/ky_webid/c/047.html
例題で学ぶはじめてのC言語/大石 弥幸
(P.143-149)


にほんブログ村 資格ブログ IT系資格へ
にほんブログ村
人気ブログランキングへ
コンピュータでの数値の表現方法として、固定小数点表示浮動小数点表示があります。浮動小数点は近日中にする予定で、今日はとりあえず固定小数点をやりました。



固定小数点表示では、一連のビット列のどの位置に小数点が来るかあらかじめ決めておき、固定します。

■2進数、8ビットで1ビット目の右に小数点があると決めた場合を考えます。
⇒ _ _ _ _ _ _ _ _.

・符号を考えない場合…0~255までを表現できる
・符号を考える場合…-128~127までを表現できる(-128に対となる整数(128)がないことに注意)

一般に、2進数nビットの数の最小値・最大値は、
・符号を考えない場合…0~2^n -1
・符号を考える場合…-2^(n-1)~2^(n-1) -1

ここで、符号を考える場合というのは、2の補数を使って考えます。
最上位ビットを符号ビットとします。

補数
n進数の場合
・元の値と(n-1)の補数の和…その桁で最大の数になる
・元の値とnの補数の和…その桁は全て0になり、桁が一つ上がる

ex)10進数25の9の補数は74 ∵25+74=99
10の補数は75 ∵25+75=100
ex2)2進数1010の1の補数は0101 ∵1010+0101=1111
  2の補数は0110 ∵1010+0110=10000


[関連問題]
平成11秋問4、平成17春問3、平成18春問3、平成18秋問5、平成19秋問3、平成20春問3、平成20秋問3

[References]
平成22年度 イメージ&クレバー方式でよくわかる 栢木先生の基本情報技術者教室/栢木 厚
(P26-31)


にほんブログ村 資格ブログ IT系資格へ
にほんブログ村
人気ブログランキングへ