1.2 程序的开发与运行

现代通用计算机都采用“存储程序”工作方式,需要计算机完成的任何任务都应先表示为一个程序。首先,应将应用问题(任务)转化为算法(algorithm)描述,使应用问题的求解变成流程化的清晰步骤,并能确保步骤是有限的。任何一个问题都可能有多个求解算法,需要进行算法分析以确定哪种算法在时间和空间上能够得到优化。其次,将算法转换为用编程语言描述的程序,这个转换通常是手工进行的,也就是说,需要程序员进行程序设计。程序设计语言(programming language)与自然语言不同,它有严格的执行顺序,不存在二义性,从而保证程序行为与算法描述一致。