指令式编程

電腦科學中的程式設計類型

指令式编程(英语:Imperative programming);是一种描述电脑所需作出的行为的编程范型。几乎所有电脑的硬体都是指令式工作;几乎所有电脑的硬体都是能执行机器语言,而机器码是使用指令式的风格来写的。较高阶的指令式编程语言使用变数和更复杂的语句,但仍依从相同的典范。菜谱和行动清单,虽非电脑程式,但与指令式编程有相似的风格:每步都是指令。因为指令式编程的基础观念,不但概念上比较熟悉,而且较容易具体表现于硬体,所以大部分的编程语言都是指令式的。

原理和基础

编辑

很多指令式编程语言(比如 FortranBASICC)是汇编语言抽象化[1]

大部分的高级语言都支援四种基本的语句:

  1. 运算语句一般来说都表现了在记忆体内的资料进行运算的行为,然后将结果存入记忆体中以便日后使用。高阶指令式编程语言更能处理复杂的表达式,可能会产生四则运算和函数计算的结合。
  2. 回圈语句容许一些语句反复执行数次。回圈可依据一个预设的数目来决定执行这些语句的次数;或反复执行它们,直至某些条件改变。
  3. 条件分支语句容许仅当某些条件成立时才执行某个区块。否则,这个区块中的语句会略去,然后按区块后的语句继续执行。
  4. 无条件分支语句容许执行顺序转移到程式的其他部分之中。包括跳跃(在很多语言中称为 Goto)、副程式和 Procedure 等。

回圈、条件分支和无条件分支都是控制流程

历史

编辑

早期的指令式编程语言都是电脑本身的机械语言。在这些语言中,指示非常简单,令硬体的执行更容易,却阻碍了复杂程式的设计。1954年开始开发的 Fortran,是首个在复杂程式的设计中除掉机器码的编程语言。它是编译型的编程语言,容许命名变数、复杂的表达式、副程式和其他功能,这些功能现在在指令式语言中都非常普遍。后来的二十年中,可以看到大量的其他高阶指令式编程语言出现。在1980年代后,物件导向编程有迅速的发展;这些物件导向编程语言均有著指令式的风格,但增添了支援物件的功能。

参见

编辑

引用

编辑
  1. ^ Bruce Eckel. Thinking in Java. Pearson Education. 2006: 24 [2021-02-15]. ISBN 978-0-13-187248-6. (原始内容存档于2021-10-09).