IEEE-754的“交换格式”是什么意思?

问题描述 投票:0回答:1

该标准表示,它们支持实现之间的浮点数据交换。这里的“实施”是什么意思?以及这种交换是如何发生的?

ieee-754
1个回答
0
投票

与许多编程标准一样,该标准指定了一组规则。遵循这些规则的任何内容都是该标准的实现。根据IEEE 754-2008摘要,“符合此标准的浮点系统的实现可以完全以软件,完全以硬件或以软件和硬件的任何组合来实现。”

例如,从理论上讲,可以设计一种计算机处理器,该计算机处理器本身支持浮点格式,并且每个IEEE 754操作都有一条指令。或者,您可以编写一个针对处理器的C编译器,该处理器具有一些浮点运算,例如加法和乘法,但是使用软件例程进行平方根和其他运算。或者,您可以编写使用纯C整数运算来实现所有IEEE 754运算的软件,而无需依赖任何特定硬件。每一个都可以是IEEE 754实现。

浮点行为主要根据所表示的数学值来指定。对于算术格式,标准指定了表示的数字,对其执行算术运算的结果,等等。交换格式远不止于此;对于交换格式,该标准精确指定了哪些位模式表示哪些值。

因此,如果一个IEEE 754实现将一个值放在浮点对象中,然后将这些位传输到可能在完全不同的硬件上运行的另一实现,则该目标实现将这些位还原到一个浮点对象中。相同的交换格式,则目标对象将具有与原始源对象相同的值和行为。换句话说,交换格式使数据可移植。

这种传输可以通过网络进行,方法是将这些位存储在磁盘上,然后将其物理移动到另一台计算机上,方法是将这些位(或它们的表示形式,例如十六进制)打印在纸上,然后由人类或其他方式。

标准仅指定从最高有效到最低有效的一系列位中的位模式。它没有指定这些位如何分组为字节或如何对这些字节进行排序,因此发送和接收系统必须确保以正确的顺序发送和接收这些位。

热门问题
推荐问题
最新问题