编程语言 Forth

未知
未知
2009-12-29
绿悠悠

Forth是六十年代末期,由Charles H. Moore发展出来在天文台 使用的电脑自动控制系统程序设计语言,允许使用者很容易组合系统已有的简单指令,定义成为功 能较复杂的高阶指令。由于其结构精简、执行快速、操作方便,广为当代天文学界使用。八十年代以后,有爱用者成立Forth Interest Group在 世界各地推广,并陆续在各类计算机上建立Forth系统及标准的语言。

FORTH以可延伸的词典为核心,采用两个堆栈为 基础的高度模块化结构,是一种将解译程序interpreting和编译程序compiling合并运用的双态系统。使用FORTH,可在编译过程中检测差错,并且逐步扩充编译程序代码。利用标准FORTH所写的程序几乎不必大修改,就能在 各类计算机运作;甚至在特别设计的电脑上可以完全放弃组合语言,直接由FORTH转化成机器语言,就好像现代的Java machine。同时,使用者也可以自由使用自己 定义的运算功能,加入编译器 (compiler) 中,使Forth语言更有弹性。台湾黄大一及现旅居美国的丁陈汉荪是这方面的专材,黄大一在1980年代后期开发过两部完全使用FORTH的嵌入式系统,丁陈汉荪于2002年代即以eforth架构打通软硬体任督二脉发展完成forth 芯片,并将毕生研究forth的心得于2003年代编辑成书嵌入式系统:使用eForth

forth是一种可扩展的,交互式的语言。最初为小型的嵌入式电脑设计的,现在它几乎可以在任何主流的芯片上解译和编译,甚至已有多种可直接运行 forth指令的芯片。 在电子表格,专家系统,多用户数据库,和分布式实时控制系统中有广泛的应用。 表面来看,forth是一种基于堆栈的概念机。例如要计算 (3+4)*5,我们的程序就是:3 4 + 5 *。首先把3和4入堆栈,然后调用+子程序,把堆栈的最顶上两个元素取出(也就是3和4)进行加法运算,然后把结果入堆栈,然后把5入堆栈,然后调用*子 程序,把最顶的2个元素,也就是7和5取出,并进行乘法运算,然后把结果入堆栈,最后的。把结果从堆栈中取出打印。事实上这是一种最简单有效的概念机。当 然forth远远不止这些。

最常用在内建程序,以及系统与过程控制,它也用在微电脑上。主要运用在数据搜集与处理、图形处理、专家系统,以及实时流程控制等。

下面是一个在标准输出设备上输出Hello World的简单程序,这种程序通常作为开 始学习编程语言时的第一个程序:

." Hello, world!" CR
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

unordered_map自定义key

struct MAP_KEY { double first; double second; double third; double forth; }; struct KeyHash { std::size_t operator()(const MAP_KEY & k) const { using boost::hash_value; using bo...

2015/09/02 15:36
454
0
poll机制的总结

poll机制就是给定一段时间,在这一段时间内程序处于睡眠状态一直等待某一个资源,它会在两种情况下返回①时间到了②等到了资源。 驱动程序的实现并不复杂,但原理有待分析。 首先要在file_op...

11/14 10:01
5
0
剑指Offer(Java版):两个链表的第一个公共结点

题目:输入两个链表,找出它们的第一个公共结点。 面试的时候碰到这道题,很多应聘者的第一反应就是蛮力法:在第一链表 上顺序遍历每个结点,没遍历到一个结点的时候,在第二个链表上顺序遍历...

2016/08/02 21:07
23
0
标签控制器原理

UITabBarController

2016/04/17 14:39
5
1
PHP关于数据的舍入归类:round、ceil、floor、number_format

下面是关于数字转化的几种方法: round -- 对浮点数进行四舍五入 例子: <?php echo round(3.4); // 3 echo round(3.6); // 4 echo round(3.6, 0); // 4 echo round(1.95583, 2); // 1.96 e...

2012/12/14 13:30
244
0
Python百分登顶年度编程语言排行榜

今天 IEEE Spectrum 发布了 2018 年度顶级编程语言排行榜。该榜单可根据流行趋势、职业方向、语言类型等多个标准各自细分生成榜单,也可以综合多个标准进行排列,使用者可以根据自己的需求过...

08/17 15:44
2
0
Conveyor Belts In The Modern Factory

Without the Conveyor Belt Manufacturer, the branch arrangement would not be able to handle the assembly demands fabricated aloft them, and industry would not be able to carriage...

2014/01/27 08:59
7
0
Putian Machinery

The accoutrement relates to accoutrement for Extrusion Blow Molding Machines alveolate bodies, in accurate bottles, containers, tubes or the like from thermoplastic complete mat...

2013/12/19 09:27
7
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部