在Forth

时间:2017-02-21 01:14:58

标签: integer-arithmetic forth

我正在使用Gforth,我寻找一个标准的Forth字来划分两个双整数,或者至少是一个双整数的混合除以一个整数,但结果支持双整数。似乎没有一个。 SM/REMFM/MODUM/MOD具有所有限制。

我错过了什么吗?为什么这个词不会与Forth内置?该操作定义明确,不会发生算术溢出。是否有必要自己编程?

1 个答案:

答案 0 :(得分:1)

M*/ (d n u -- result)可能就是您要找的单词。从起点(原始印刷版):

  

将32位数字乘以16位数字,并将三倍长度结果除以16位数字(d * n / u)。返回32位结果。所有值均已签名。

因此,要将双精度数除以一个整数,可以将 n 替换为 1 Included in DPANS94,“可选的双数字单词集”。