“ p”在浮点数的指数十六进制表示法中代表什么

问题描述

用十六进制表示的数字40.0被写成0x1.4000000000000p+5,意思是(1 + 4/16) * 2⁵

p代表什么?可能是因为选择这封信是有原因的。

解决方法

它只是意味着“力量”

按照惯例,字母 P (或“ em” p ,代表“幂”)代表的两倍,升为的幂,而 E (或 e )在E notation中以十进制表示的目的与此类似。 P后面的数字是十进制,代表 binary 指数。将指数乘以1乘以2,而不是16。10.0p1 = 8.0p2 = 4.0p3 = 2.0p4 = 1.0p5。通常,将数字标准化以使前导十六进制数字为1(除非值正好为0)。

https://en.wikipedia.org/wiki/Hexadecimal#Hexadecimal_exponential_notation

选择

P是因为E是一个有效的十六进制数字,因此它可能出现在有效部分