ヒギンズ教授のブログ

ヒギンズ教授のブログ

ブログの説明を入力します。

Amebaでブログを始めよう!
ハードウェアとソフトウェア
携帯電話の機能について、電話機能以外で考えたことありますか、、、???

①画面表示
②音楽機能
③インターネット
(メールもインターネット機能の一部分です)
④カメラ
⑤外部記憶装置
、、、、、
など色々とあります。ハードウェアはこれらを司る装置です。その装置を操るのがソフトウェアです。
集積回路の発達に伴い、ハードウェアをコントロールする様々な[コントローラ]も、かなりコンパクトになりました。
このコントローラにデータを送ったり、受けとったりするシステムがソフトウェア、詰まりプログラムです。
画面表示の図解
┌──────┐
│携帯画面表示│
└─┬─┬──┘
  ↓ ↑
┌──────┐
│ハードウェア│
└─┬─┬──┘
  ↓ ↑
┌──────┐
│コントローラ│
└─┬─┬──┘
  ↓ ↑ポートアドレス
┌──────┐
│ソフトウェア│---
└─┬─┬──┘ §
  ↓ ↑    §
┌──────┐ §
│コマンド選択│ §
└──┬────┬§
   ↑Yes.  ↓§
 判断    $§
`  /\`    §
` /  \ No  §
 ┤要素*├-┐ §
` \  /` ↓ §
`  \/ `   §
        §
        §
        ---
[ソフトウェア]から
[要素*]まで、
§の部分がプログラムです。
]は、データの移動です。
データのやり取りには、ポート(港)に、IN、OUT命令を使っていましたが、最近のマシンではアクセススピードの短縮で、メモリーマップドIOアドレスで、やり取りをします。
このIOアドレスは普段は、メモリーの裏に隠れていて、マシン語プログラムで操作しないとフリーにアクセスはできません。
IOはIn、Outの頭文字の略語です。
判断、要素部分のプログラムにバクがあれば、大変な事態が起こります。
バク
虫、からきた言葉で欠陥があるという意味合いです。虫くいで穴があいている、詰まりボロボロなプログラムという意味合いでしょう。
■タグ:バグ
ヒギンズコンピュータ講座