Posit numbers/decoding: Difference between revisions
m
→{{header|Julia}}: simplify zero handling
(julia example) |
m (→{{header|Julia}}: simplify zero handling) |
||
Line 23:
""" From posithub.org/docs/Posits4.pdf """
function Base.Rational(p::PositType3)
fsize <=
f = (pabs & (2^fsize - 1)) // 2^fsize # Get F value. Can be missing -> 0
e = pabs >> fsize
pw = (1 - 2s) * (scaling * k + e + s)
end
@show Rational(PositType3(16, 3, 0b0000110111011101)) == 477 // 134217728
</syntaxhighlight>{{out}} <pre> Rational(PositType3(16, 3, 0x0ddd)) == 477 // 134217728 = true</pre>
=={{header|raku}}==
|