日誌

情報技術科ここだけトピックス

理科・実験 揮発性と不揮発性

アルコールなどすぐ蒸発して揮発性が高いといいますね。でもコンピュータ分野では記憶装置であるメモリに関する用語になります。

通電していないとデータが消える揮発性メモリ(DRAMやSRAMなど)と、電源が切れてもデータが消えない不揮発性メモリ(EEPROMやフラッシュメモリなど)があります。CPUなど処理の中枢に近い部分には揮発性メモリが、所謂USBメモリなど保管したり持ち歩いたりするものは不揮発性メモリが現在使われています。

グループ コンピュータのタスク管理

どんなコンピュータでもOSをはじめ幾つものプログラムが動作して成り立っています。そしてCPUの作業単位をタスクといいます。

細かいタスクを優先順位などでOSが管理する形式をプリエンプティブといいます。タスクは「実行状態」と、CPUの順番を待つ「実行可能状態」と、入出力などを待つ「待ち状態」としてOSに管理されます。優先順位の高いタスクが発生すると実行状態でも一旦に実行可能状態になり(プリエンプション)、先のタスクが終わって実行可能状態から実行状態になります(ディスパッチ)。

これに対し、個々のプログラム基準でタスク実行から離れるか待ち状態で順次タスクが実行される形式をノンプリエンプティブといいます。

驚く・ビックリ 排他的論理和の活用

排他的論理和(Exclusive OR)は入力の0・1の組み合わせが異なるときに1を出力します。見方をかえると、入力の片方が0なら一方の信号をスルー、片方が1ならもう一方の信号を反転します。

常に反転するNOTと違い、必要なときだけ反転させたりビット列の特定部分だけを反転できます。電子素子でも実装できるので高速な処理やプログラミングの演算としても四則演算とは異なる結果が得られるので様々な活用が考えられます。実際には通信データの誤り検出などに使われています。

重要 ゼロ除算

10÷0=?

数学的には不定や計算不能などありますが、プログラミングでも計算するデータ型によって違う結果が得られたり計算不能としてエラーが返されたりします。重要なシステムに限らず、突然止まったりとんでもない結果が返ってきたら困ります。より安定した動作実現のために、除算する変数をチェックしたり例外処理を組み込んだりすることが重要になります。

(プログラミング言語や変数の型によって結果が異なることも是非試してみましょう)

キラキラ RGB

プログラムなどでディスプレイ画面で見る「色」を指定する場合、基本的に光を合わせて表示するので加法混色(additive mixture)が用いられます。Red,Green,Blueの3色の組み合わせで表現します。多くの場合、各色8ビット(256段階)であらわしますが、3色の値が少ないほど黒に近づいて大きくなるほど白に近づきます。(3色×256段階=1677万7216種類の色が表現できる)

 16進数で各色を連ねた「カラーコード」という表記がWebページでよく扱われます。黒(black)なら#000000,赤(red)なら#ff0000,紫(purple)なら#800080 になります。「カラーコード」などで検索すると色と数値の対応が紹介されたページが多くあります。