今天花了点时间重写下数据窗口中的数据类型, 发现之前写的浮点类型解析错误了,准确的说是之前没有写完.
从网上搜了下IEEE相关的, 发现不仅有80位还有128位的.
IEEE 754 在 85 年发布的时候还有 80位扩展双精度, 摩托罗拉 68881 就是使用的 80位扩展双精度.
但在08年之后IEEE 754 就没有将80位的扩展双精度列入标准.
od和x64dbg上我看到支持非标准的扩展80位双精神,不知道为什么不支持标准的128位?
IEEE 754 标准从1985年发布以来, 它已成计算机中表示实数的标准格式.
各大软硬件厂商广泛也都在使用. 但是M$就是不支持.(至少我目前使用的VS2010不支持).
IEEE 754 分成三个部分 符号位(sign) 指数位(exponent) 尾数位(mantissa)
符号位用来表示正负 指数位用来表示指数 尾数位用来表示尾数
IEEE 754 标准定义了四种浮点数格式:
单精度(32 位)
双精度(64 位)
扩展双精度(80 位)(2008非标)
四倍双精度(128 位)
然而M$仅支持单精度 和 双精度.(至少我目前使用的VS2010支持这两精度).
要想使用扩展双精度和四倍精度 只能自己实现解析.
是的没错, 我准备把128位也加入调试器, 想到要自己解析, 想想就头疼 :(
|