最近、CPUやメモリといったハードウェアに関する勉強をしています。
アセンブリ言語におけるハードとソフトの境界が非常に面白いですね。
ハードウェアとしては超基本的な部分は、足し算、引き算、掛け算、割り算、AND、OR、NOTといった算術・論理演算しか行っていないかと思います。
たったこれだけで様々なことが可能になったコンピュータはかなりすごいものですね!!
ところが、最近のCPUはどんどん高度化してきて、かなり複雑な処理をワイヤードロジックとして組まれています。
一見OSの機能かな??と思うような複雑な処理ができるような回路が組まれているものもあります。
ここからはプロセッサの機能、ここからはOSの役割といった境界が正直良くわからないんですよね・・・・
そこで、
ここまで複雑な処理をワイヤードロジックのみで実現できるなら、ソフトウェアで可能なことは基本的にハードのみで実装できるのではないかな??と思いました。
するとなぜソフトウェアという概念が誕生したのか疑問が湧いてきました。
汎用性を高めるという意味でOSという概念が生まれたのではないかなと思っているのですが・・・
最近のかなり綺麗なグラフィックのゲームなんかはソフトウェアでプログラミングせずに、ハードとしてすべてワイヤードロジックとして組んでも同じものを作ることができるのではないかな??と思いました。
(その1つのゲーム専用のハードという事になり、まったくゲーム以外にはなんの役にも立たないですが・・・・)
ハードウェアでできるなら、なぜソフトウェアという概念を作りあげたんでしょうか??
ソフトウェアの起源が気になります。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/29 14:08