policyコンピュータの3つの原理原則を理解しよう〜IT基礎知識お仕事2019.05.13スポンサーリンクこんにちは。今日はタイトルの通りですが、ITエンジニアには欠かせない基礎知識として、コンピュータの原理原則について、自分なりに整理したいと思います。物事には原理原則というものがありますよね?変わらないこととかお決まりみたいなことです。これを理解できているかどうかで、表面的なものではなく、本質的に考えることができるかに繋がってくると思っています。ITエンジニアになりたいという方はもちろん、そうでない方もコンピュータに触れる機会は多いと思うので知っておいて損はないと思います!そういった方をターゲットに出来るだけわかりやすく書きたいと思っているので、どうぞご覧になってくだい。目次コンピュータとは?ハードウェアとソフトウェアの2つで成り立っている:コンピュータの原理原則その11インプット(入力)→2ロジック(処理・演算)→3アウトプット(出力)の3つに分けることができる:コンピュータの原理原則その2ハードもソフトも全てを0と1で扱っている:コンピュータの原理原則その3まとめコンピュータとは?いきなり原理原則に入る前に、コンピュータについておさらいしておきましょう。複雑な任意の(広義の)計算を高速・大量におこなう計算機械である。現代ではプログラム内蔵方式のディジタルコンピュータの中でも、特にパーソナルコンピュータやメインフレーム、スーパーコンピュータなどを含めた汎用的なシステムを指すことが多い。一昔前(大昔か?)までは、とても高価な専用機器でしかなかったコンピュータが、今ではパソコンはもちろん、スマートフォンなども含めて小型化や低価格化が進み、一般家庭にもかなり浸透している状況だと思います。そんな、ビジネスでもプライベートでも身近になったコンピュータについて、あなたはどの程度知っているのか、さっそく原理原則を見ていきましょう。ハードウェアとソフトウェアの2つで成り立っている:コンピュータの原理原則その1ハードとソフトという2つの用語はおそらく聞いたことはあると思います。それぞれ言葉の意味を調べてみましょう。(hardware)は、システムの物理的な構成要素を指す一般用語である。日本語では機械、装置、設備のことを指す。ソフトウェアとの対比語であり、単に「ハード」とも呼ばれる。ソフトウェア(software)は、コンピューター分野でハードウェア(物理的な機械)と対比される用語で、何らかの処理を行うコンピュータ・プログラムや、更には関連する文書などを指す。システムソフトウェアに分類される。フリー百科事典『ウィキペディア(Wikipedia)』ここに書いてある通りですが、少し言い換えると、ハードウェアは物理的に実体がある物の部分を指します。対してソフトウェアは、物理的な実体がなく、ハードウェア上で動作するプログラムやアプリケーションの部分を指します。具体例をあげると、パソコン本体はハードウェアで、WindowsなどのOSやOfficeなどのアプリケーションがソフトウェアです。これはスマートフォンにも当てはめることができて、iPhoneがハードウェアで、iOSやSafariなどのアプリがソフトウェアになります。ハードウェアとソフトウェアの詳細についてはまた別の記事で書こうかと思っていますが、ITエンジニアの大半はこのうちのソフトウェア側の開発者としてプログラマからスタートすることになると思うので、この関係性を覚えておいてください。1インプット(入力)→2ロジック(処理・演算)→3アウトプット(出力)の3つに分けることができる:コンピュータの原理原則その2これは先ほどのハードウェアとソフトウェアに分けて説明したいと思います。ハードウェアの視点でそれぞれ構成要素を整理してみようと思います。Unit)、などアウトプット装置:ディスプレイ、スピーカー、など例えば電卓アプリを使う場面で言うと、キーボードで数字や演算子(プラスやマイナスなどの記号のこと)を入力し、入力された計算式をCPUで演算し、演算結果をディスプレイに出力する、といった感じです。続けてソフトウェアの視点でみてみます。アウトプット:レスポンス、返却値、戻り値、結果画面、などこちらは実際にプログラミングをしたことがないと聞き慣れない言葉ばかりだと思うので、なかなか理解が難しいかもしれません。具体例を書いてみると、例えばTwitterでツイートを入力し、ツイートボタンを押すとツイート処理が実行され、処理が成功するとタイムラインに出力される。この3点セットは人間にも当てはめることができますね。外からの情報をインプットして、自分の頭で解釈・理解して、ノートなどにアウトプットする。これと同じことがコンピュータでも行われていると思ってもらって構いません。AI(人工知能)との関連ここで人間の脳と機械を同じように例えました。人間の脳は人間の意思で解釈や理解を変えることができますが、機械は意思を持たずに決められた通りに処理することしかできないという点が決定的に違います。機械にも意思を持たせて、処理や出力を変えることができるようにしようとしているのが、AIの分野になります。この入力、処理、出力の3つに分けて考えることでたくさんのいいことが生まれるので、それについてもまた別の記事にしたいと思ってます。ハードもソフトも全てを0と1で扱っている:コンピュータの原理原則その3これはどこかで聞いたことがあるかもしれませんが、コンピュータは0と1という2つの値しか認識することができません。理由をハードの観点で説明すると、コンピュータは回路で計算するときやデータを転送する時に、電気が通っているか通っていないか(言い換えるとONかOFFか)でしか判断できません。最終的には2値のみで扱う必要があります。次にソフトの観点でみてみると、普通のプログラミングをしている範囲では気にしなくても困ることはないのかもしれません。0と1で扱っているという特性から2進数というものが必要になり、ビットやバイトの考え方に繋がったりするので、知っておいた方が理解が深まると思うので、ぜひ覚えておいてください。ちなみに、SDカードの容量が16GB、32GB、64GBと2倍ずつになっているのも、この2進数による影響だったりします。まとめいかがだったでしょうか。コンピュータの知識が深まっていただければ嬉しいです。今後も自分の理解を言語化するため、そして読んでいただけた方の参考になっていただければという思いで、こういったIT知識の記事を書いていければと思っています。誤りだったり、わかりづらい点などあれば修正しますので、ご連絡いただけると嬉しいです。!お仕事テクニカルIT基礎知識スポンサーリンクTwitterFacebookはてブPocketLINEtanirepoをフォローするtanirepoたにるぽ関連記事お仕事テキストエディタをお探しのそこのあなた。VSCodeがオススメですよ!今日も1日が終わりに近づき、久しぶりに仕事終わりのブログ執筆に勤しんでいる、たに(@tanirepo)です。生産性を上げるために僕がやった3つのことこんにちは。今日は僕が生産性を向上させるために実行した3つの施策を紹介したいと思います。毎日21時まで残業していた会社員が定時で帰るようになった話こんにちは。今日からお昼休みを利用して記事を書くという変化を実行してみようと思います。いい感じに習慣化すればいいなー。いうわけで、今日は毎日21時まで残業していた僕が定時に帰るようになったお話と、それによって変...2019.05.21お仕事AWSサービス調査メモ〜Compute編こんにちは。たに(@tanirepo)です。Services)を調べたので、その時の調査メモを記事にしてみます。札幌で現実という名の怪物と戦っているITエンジニアのたにです。ITエンジニアたるもの、最近はやっぱりAIという分野に興味があります。属人化について真剣に考えてみる。