Posit numbers/decoding: Difference between revisions

m
→‎{{header|Julia}}: type consistency
m (→‎{{header|Julia}}: add 2's complement handling for negatives)
m (→‎{{header|Julia}}: type consistency)
Line 35:
fsize = p.numbits - 1 - r - 1 - p.es # Check how many F bits explicit
e = fsize < 1 ? pabs : pabs >> fsize # Get E value
f = fsize < 1 ? 1 // 1 : 1 + (pabs & (2^fsize - 1)) // 2^fsize # Get F value (1 by default)
pw = 2^p.es * k + e
return pw >= 0 ? (-1)^s * f * big"2"^pw // 1 : (-1)^s * f // big"2"^(-pw)
4,102

edits