forth

    0热度

    1回答

    我在Linux上使用Gforth 0.7.0。每次我尝试运行gforthmi,不管我用什么参数,它扼流圈段故障象下面这样: [[email protected] ussa]$ gforthmi ussa.fi -m 4M ussa.fs redefined block-offset Segmentation fault. redefined block-offset Segmentat

    5热度

    1回答

    我试图实现一个单词,当在Forth中的堆栈中给出一个数字时,它会从数组中产生一个字符串。 我的第一天真的尝试是: create myarray s" Alpha", s" Beta", s" Charlie", 这是公认的,但预计它没有工作 - myarray @ type产生不一致的输出(而不是我的天真的期望,它可能会打印“阿尔法”)。 当在网上搜索时,我在this tutorial中发现用

    3热度

    2回答

    我有兴趣探索像Forth(或Factor)这样的基于堆栈的语言。我希望看到的是如何从头开始构建应用程序,一步一步完成。我发现的教程是基本的,并没有帮助我理解大局。想到在处理大量零件时如何管理堆栈很困惑。 我一直认为(也许错了)学习语言的好方法就是用它来编写一个Roguelike游戏。我在试图弄清楚如何在堆栈上玩弄很多东西:迷宫,数十种生物,宝藏,人物统计数据等。

    6热度

    1回答

    为什么Forth使用IF语句THEN ...而不是ENDIF? 我实现(不符合要求)规定的编译器的东西。基本上,对于IF语句,Forth的语法对我来说显得非常不直观。 IF ."Statement is true" ELSE ."Statement is not true" THEN ."Printed no matter what; 为什么结尾语句是THEN?这使得我的语言阅读非常怪异。

    1热度

    1回答

    我试过下面的代码阅读文档后: create buff 128 allot buff 128 stdin read-line throw 我希望这会得到我要的buff每个连​​续的地址的字符,但我在那里得到这个奇怪的号码: buff @ ok . 3689349013085184353 ok 我在这里错过了什么?

    3热度

    2回答

    是否有一个EBNF规则描述了Forth无限循环或语句?

    6热度

    1回答

    我一直在努力阅读这个,但我找不到任何提及它。 根据标准,与S"创建一个字符串不能被修改,并从Gforth一个简单的实验很明显,对于字符串空间不是来自字典或垫区域: hex here . 7F48AB3B8758 ok pad . 7F48AB3B8808 ok s" test" .s <2> 77FDD0 4 ok 我可以期待该地址有效多久? 换句话说,如果我将这个地址(和计数)存储在一

    3热度

    2回答

    我正在寻找一种能够在单精度和双精度之间进行转换的方法。 一个例子是将2个整数相除并得到一个浮点结果。这怎么可能?

    0热度

    1回答

    我最近对Dalvik VM感兴趣。从维基百科和一些幻灯片中,我了解了有关Dalvik VM的基本信息。还有一些我不知道的东西,我无法轻松找到文档,例如: Dalvik VM如何访问I/O? 我没有看到任何调用本地方法的操作码。那些以前缀“OP_INVOKE”命名的操作码似乎都调用了.dex文件(Dalvik可执行文件)中的一个方法。也许我检查了操作码的错误版本描述?) 顺便说一句,有没有用户友好的

    3热度

    3回答

    我在这里学习到了,我已经进入了返回堆栈操作。 因此,使用在Ubuntu控制台11.04 64我试图让TOS到返回堆栈,但出现这种情况: 1 2 3 4 5 ok >r :36: Invalid memory address >R>>><<< Backtrace: 我在做什么错在这里?