##人和计算机是如何解决问题的?
人:往往只需要被告知是什么问题,即
what to do
,然后就可以自行解决。
计算机:需要被告知每个解决步骤,即how to do
。
##算法
指
计算(或者说解决问题)的步骤
。
##解释vs编译
你编写的程序有两种执行方式,分别是解释执行和编译执行。
####解释
借助一个程序,这个程序可以尝试
理解、解释你写的代码
,然后让计算机按照你的代码内容去执行。
- 举例:Python是解释型语言(无须编译,直接拿源代码执行)
- 特点:相比于编译型语言,因为解释型语言是直接执行源代码,而在源代码被解读的过程中可以人为修改以达到某种目的,所以解释型语言
具有特殊的计算能力
。
####编译
借助一个程序,这个程序可以尝试把你写的代码
翻译成计算机能懂的语言
(机器语言),然后这个机器语言写的程序就可以在计算机直接执行了。
- 举例:**C/C++**是编译型语言(先编译,再执行)
- 特点:相比于解释型语言,因为编译型语言已经翻译成机器语言,所以
具有确定的运算性能
。