什么是基本的计算模型?
有六种基本的计算模型,例如图灵机、冯诺依曼机、数据流、应用性、基于对象、基于谓词逻辑等。这些模型被称为基本模型,因为它们可以使用一组基本的抽象来声明。
可以为每个基本模型定义任意程度的子类层次结构。例如,如果将进程抽象引入冯诺依曼模型,则可以根据所有进程是否可以访问全局数据空间(共享内存子类)或进程是否可以拥有自己的本地数据空间并通过发送消息访问远程数据空间(消息传递子类)来定义新的子类。
计算模型、语言和体系结构类
计算模型 | 语言类 | 体系结构类 |
---|---|---|
图灵机 | “0 型”语言 | |
冯诺依曼机 | 命令式 | 冯诺依曼 |
数据流 | 单赋值(数据流) | 数据流 |
应用性 | 函数式 | 归约 |
基于对象 | 面向对象 | 面向对象 |
基于谓词逻辑 | 逻辑编程 | 迄今未命名 |
它可以指示基本的计算模型及其相应的语言和体系结构类。基本计算模型的关键特征是 -
**计算的基本要素** - 第一个抽象识别计算的基本要素。这是计算定义的要素的要求,它定义了可以在其上实现任何类型的计算。
例如,在冯诺依曼计算模型中,计算的基本要素是数据。这些数据通常将由命名实体来描述,以便能够在计算流程中区分各种多个数据项。这些命名实体在编程语言中通常称为变量,并在体系结构中由内存或寄存器地址执行。
**问题描述模型** - 它指的是问题描述的风格和方法。**问题描述风格**指定如何在特定计算模型中表示问题。风格可以是过程式的或声明式的。
在**过程式风格**中,阐明问题的算法被陈述。然后在算法的设计中声明特定的解决方案。
如果使用**声明式风格**,则必须定义适用于给定问题的所有事实和关系。有两种方法可以表示这种关系和事实。第一个用法是函数,如在应用性计算模型中,而第二个则在谓词设计中陈述关系和事实,如在基于谓词逻辑的计算模型中。
问题描述模型的另一个组成部分是问题描述方法。它分别针对过程式和声明式风格进行解释。当使用过程式风格时,问题描述模型说明如何表示给定问题的解决方案。
当使用声明式风格时,它确定如何定义问题本身。例如,在冯诺依曼计算模型中,问题解决方案被描述为表示适当算法的一系列指令。
**执行模型** - 计算模型的最后一个元素是执行模型。第一个组件声明计算的解释,这与问题描述方法密切相关。问题描述方法和计算的解释的可能性通常相互调节和推断。
执行模型的下一个组件指定执行语义。这可以解释为一个规则,该规则指定如何实现单个执行步骤。