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
pw = 2^p.es * k + e
return pw >= 0 ? (-1)^s * f * big"2"^pw // 1 : (-1)^s * f // big"2"^(-pw)
|