FORTH语言也被称为是“虚拟计算机”: (1)FORTH语言程序由一个个FORTH “字”构成,计算机按顺序一个一个字地执行每个字,就像CPU一条一条地执行机器指令一样。 (2)在FORTH中虚拟计算机专门有一个“指令指针(IP)”指向下一个要执行的FORTH字,就像CPU专门有一个“程序指针(PC)”指向下一条要执行的机器指令一样。 (3)在FORTH中虚拟计算机专门有一个“返回堆栈指针(RP)”保存嵌套调用FORTH字完成后返回时要执行的IP,就像CPU专门有一个“堆栈指针(SP)”指向下一条过程调用完成后返回时要执行的PC一样。 (4)一个FORTH语言中的字可以由一系列的更基本的字组成,就像汇编语言中的过程可以由一系列更基本的过程组成一样。 (5)FORTH语言中最基本的不包含其他字的“字”被称为一个“原初字(CODE)”,就像汇编语言中不包含其他过程的“过程”被称为一条“机器指令(CODE)”一样。 (6)不同的是实现少数功能的一条CPU的机器指令(CODE)只由不多字节的机器码组成,但是能实现很多功能的一个“FORTH虚拟机”的原初字(CODE)却可能由很多个字节的机器码(多条物理机CPU的指令)组成。 传说有一天某个FORTH前辈问倪院士,全部CPU的指令的集合称“指令集”,那么全部FORTH的原初字的集合取个什么计算机学术名称好呢?倪院士答:“超长指令集”。
|