ffNasa1960
コンピュータ-コンピュータは、入力(または命令)を取り込み、この命令セットを処理し、値または出力を返す能力を有する電子デバイスで
コンピュータは二つの主要な部分に分かれています—
(a)機械;ワイヤ、トランジスタ、回路などが含まれています。, (また、ハードウェア部品と呼ばれる)、
(b)命令とデータ—(ソフトウェアと呼ばれる)
コンピュータは、コンピュータサイエンスの研究で使用されるツールです。
アルゴリズム:アルゴリズムは、問題のインスタンスを解決するための命令のステップバイステップのリストを参照します。 アルゴリズムは有限過程であり、それ自体が解である。
コンピュータサイエンスは、問題解決プロセスから出てくる問題、問題解決、および解決策の研究です。, すべての問題に対して解がなければならないと仮定するのは簡単ですが、計算理論(TOC)によれば、すべての問題に解があるわけではありません。 計算機科学における問題は、計算可能または計算不可能のいずれかであり得る。
計算可能な問題:これは、有限数のステップで問題の任意のインスタンスに対する答え(または出力)を計算するアルゴリズムが存在する問題(または, 簡単な例は整数インクリメント操作です。
f(x)=x+1
計算不可能な問題:計算不可能な問題は、それを解決するために使用できるアルゴリズムがない問題を指します。 非計算可能性(または決定不能)の最も有名な例は、”停止問題”です。
したがって、コンピュータサイエンスは、計算可能な問題の研究だけでなく、非計算可能、問題に対するアルゴリズム的アプローチの存在と非存在であると言うことができる。,
問題解決における抽象化:
抽象化は、私たちがそのような方法で問題と解決策を見ることができます—それは私たちが論理的および物理的な視点を分離するのに役立ちます例えば、半分のjar=1/2
プログラミング:
プログラミングは、アルゴリズムを取り、それをコンピュータで実行できるように表記(プログラミング言語)にエンコードするプロセスです。
プログラミング言語は、エンコーディングのプロセスとデータの両方を表す表記的な方法を提供し、制御構造とデータ型を提供します。,
Control Construct:これにより、アルゴリズムを便利でありながら明確な方法で表現できるようになります。
データ型:バイナリデータ(コンピュータが通常理解する)の解釈を提供し、解決されている問題に関して意味のある用語でデータを考えることができます。,