如何使整个浮点堆栈可见?

Man*_*uez 4 stack forth

Forth 编程语言使用堆栈在函数之间传递参数。不是给子函数一个数字作为直接信息,而是首先将值放入数据堆栈,另一个函数从堆栈中获取值。

Forth 的一个特殊功能是处理不同堆栈上的整数值和浮点值。这意味着,不可能将浮点值推送到数据堆栈。在 Forth 中编写短程序时,经常需要调试代码行。

这可以通过打印堆栈的内容来实现。如果开发人员看到现在堆栈上的内容,他/她很容易理解代码有什么问题。打印出堆栈的内容对于错误跟踪很重要。

将两个数字压入普通数据栈后,就可以显示其内容了。在示例中,输入“.s”命令后,两个整数都被打印出来。但是,如果我将两个浮点数推入专用浮点堆栈,则只显示最后一个元素。如何使整个浮点堆栈可见?

gforth example.fs
1 2 .s cr        \ <2> 1 2
1.0e 2.0e f. cr  \ 2.
bye
Run Code Online (Sandbox Code Playgroud)

Vla*_*lad 7

Gforth 有这个f.s词,做你需要的。

请参阅Gforth 手册的“检查”部分