发布网友
共1个回答
热心网友
在英语中,"program" 一词的本意是为了达到某个目的而计划的一系列行为。
中文里的“程序”可以解释为“流程化的工作序列”,这更接近英语中的 "procere" 一词,它强调程序中的“流程化”特性。
许多人第一次接触程序可能是在小时候,妈妈第一次让你独自出门买东西:
出门后右转,走过第一个路口,找到那个挂着红色牌子的商店,告诉老板你要买一袋盐,然后把钱交给老板,并把盐带回家。
当你第一次做某件事时,父母可能会“千叮万嘱”,这是因为你需要了解问题中的所有细节。
这是“程序”的第一个重要特征:不可使用对方尚未理解的概念。
如果孩子已经识字,妈妈可能不会说“红色牌子的商店”,而是直接说“鑫鑫超市”。如果孩子是红绿色盲,妈妈可能会改为说“长方形牌子,最上面画着一颗小星星”的商店。
在计算机程序中,这也意味着我们需要根据不同的知识结构做出不同的指示。
计算机真正能理解的概念屈指可数——高电位(1)、低电位(0)和一些基本的CPU指令。
计算机语言里,这一原则体现为“一切皆有定义”。新手常犯的错误之一是习惯了与人类交流的模式——不管对方懂不懂,先说出来。
这也许是因为计算机语言最初是由一帮严谨的数学家设计的,他们并不在乎一般人对这些术语的反应。
现在,许多语言的错误提示已经越来越人性化,这对国内学习计算机语言的人来说无疑是一个好消息。
程序的第二个重要特性是:必须拥有精确的步骤。
编写程序不是告诉电脑去做一件事,而是教电脑去做一件事。
计算机语言是一种形式化语言,拥有严格的语法和规则。
形式化语言的好处是它的精确性,这有助于我们精确描述内容。
程序的第三个重要特性是:程序是写给人看的。
计算机语言分为机器语言、汇编语言和高级语言。
机器语言是只有0和1组成的一个超长的数字串,没有人能看懂。
汇编语言是披着英语外衣的机器语言,但在大型工程中的意义几乎为0。
高级语言是真正的“意译”,是人类可以通过简单学习能看懂的东西。
计算机程序是为了让计算机最方便理解我们的意图,机器语言是按照计算机的思考模式来编写的。
新手常犯的一个错误是,为了让计算机看懂不择手段,以至于三天之后自己都看不懂自己曾经写过什么。