程序原本(十四):计算系统——抽象(理解了“=”号,就理解了“命令式”计算范式)

阅读数:31 2019 年 9 月 28 日 17:51

程序原本(十四):计算系统——抽象(理解了“=”号,就理解了“命令式”计算范式)

但是在这一行代码中,除了表达上述两项性质所必须的内容之外,还有一个“等号”(=)。在不同的语言中,这个等号可能存在两种含义1:其一,它是仅仅叙述0与aNum之间的指代关系;其二,它表示将0这个值存放到aNum这个标识所指示的存储 (cells)。

1 事实是可能存在无限种的含义。为了简化我们的讨论,我们这里只讨论常见的两种,即aNum与 0 之间存在赋值关系的情况。至于将“=”用作等值比较运算等类似情况,我们暂不讨论。

一些语言中的等号同时包含上述两个含义,另一些却只有其中一个含义。而我们知道,一个标识——例如符号“=”仅仅是一个抽象。那么上述观点是说:语言在等号上的抽象含义并不相同。

拿这三种可能含义之一——“表示将0这个值存放到aNum这个标识所指示的存储 (cells)”来讲,这是一个具体的行为,它表明计算机器的各个部件间配合完成的一个操作,即运算单元将一个数0置入存储单元。从人的角度来看,这类似于我们向机器(包括运算单元与存储单元)发送了一个命令“aNum = 0”,于是机器就执行了这一命令。

这就是“命令式”计算范式的基本抽象。

评论

发布