Next: Floating Point, Previous: Numeric comparison, Up: Arithmetic
m+
d1 n – d2 double “m-plus”
*/
n1 n2 n3 – n4 core “star-slash”
n4=(n1*n2)/n3, with the intermediate result being double.
*/mod
n1 n2 n3 – n4 n5 core “star-slash-mod”
n1*n2=n3*n5+n4, with the intermediate result (n1*n2) being double.
m*
n1 n2 – d core “m-star”
um*
u1 u2 – ud core “u-m-star”
m*/
d1 n2 u3 – dquot double “m-star-slash”
dquot=(d1*n2)/u3, with the intermediate result being triple-precision. In ANS Forth u3 can only be a positive signed number.
um/mod
ud u1 – u2 u3 core “u-m-slash-mod”
ud=u3*u1+u2, u1>u2>=0
fm/mod
d1 n1 – n2 n3 core “f-m-slash-mod”
Floored division: d1 = n3*n1+n2, n1>n2>=0 or 0>=n2>n1.
sm/rem
d1 n1 – n2 n3 core “s-m-slash-rem”
Symmetric division: d1 = n3*n1+n2, sign(n2)=sign(d1) or 0.