EP1759462A1 - System and method for the transfer of floating point numbers in xml format without loss of information - Google Patents

System and method for the transfer of floating point numbers in xml format without loss of information

Info

Publication number
EP1759462A1
EP1759462A1 EP05758614A EP05758614A EP1759462A1 EP 1759462 A1 EP1759462 A1 EP 1759462A1 EP 05758614 A EP05758614 A EP 05758614A EP 05758614 A EP05758614 A EP 05758614A EP 1759462 A1 EP1759462 A1 EP 1759462A1
Authority
EP
European Patent Office
Prior art keywords
computer system
floating
binary value
point
xml
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP05758614A
Other languages
German (de)
French (fr)
Inventor
Frank Volkmann
Karl-Heinz Deiretsbacher
Christian Hock
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of EP1759462A1 publication Critical patent/EP1759462A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • H03M7/24Conversion to or from floating-point codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Definitions

  • the invention relates to a system and method for converting or transmitting floating-point numbers.
  • Such a system and method is used in particular in the field of automation technology, for example to transmit process data of a process automation system in XML, in particular via the Internet, to an operating and monitoring system and / or to a further automation system.
  • the invention has for its object to provide a system or a method of the type mentioned, which avoids ein ⁇ times rounding error. Such rounding errors occur when converting numerical values from a decimal to a binary representation.
  • FIG. 1 shows a system for converting floating point numbers into XML
  • FIG. 2 shows a system for the transmission of floating-point numbers in XML.
  • FIG. 1 shows a system for converting floating-point numbers into XML.
  • the system shown in FIG. 1 consists of a first computer system 1, which can be connected to a system 2 via an Internet connection 8 implemented as an XML transfer 3.
  • FPU Floating Point Unit
  • FIG. 1 this is an automation system used in the field of automation technology.
  • the computer system 1 can be designed for processing process and control data of an operating system which stores data, for example for an operating and monitoring system of the automation system.
  • Fig. 2 shows a system for lossless transmission of floating point numbers in XML.
  • the system shown in FIG. 2 comprises a first computer system 1, which can be connected to a system 2 via an Internet connection 8 implemented as an XML transfer 3.
  • the second computer system comprises a conversion unit 7 for conversion
  • the second computer system further comprises a second floating-point unit 4 for further processing of the second binary value 12 in the second computer system 2
  • the system shown here is, for example, an automation system used in the field of automation technology.
  • the computer system 1 can be configured to process process and control data of an operating system, while the second computer system forms, for example, an operating and monitoring system of the automation system.
  • the special feature of the embodiment dar ⁇ provided in FIG 1 is that no decimal base is used for textual representation of the floating-point number for the data transfer from er Weg ⁇ from the 'first floating point unit th first binary value, but a floating point number 10, having a number basis, as Factors containing only the number 2, so for example, has a hexadecimal base.
  • a rounding error in the transmission of, for example, process values and control values in the form of an XML data transmission is produced in a surprisingly simple manner. avoided.
  • Data conversion carried out in the first conversion unit of the first computer system is reconverted back again in the second conversion unit 7 of the second computer system 2, so that at the output of the conversion unit in the form of the second binary value 12 a value without rounding errors for the further processing in the second Computer system 2 is available.
  • OPC OLE for Process Control
  • XML Due to its universal properties, XML is increasingly being used for communication purposes. Primarily SOAP and WebServices are mentioned here.
  • OPC-XML OLE for Process Control
  • OPC-XML floating-point numbers (double / float) are converted into text and transmitted as XML tags.
  • the specification for this is defined in XML Schema Part II: Datatypes.
  • the invention is based on the finding that in the conversion from the textual (decimal) representation into the binary representation due to mathematical laws, non-solvable rounding errors can occur. (Transformation of common fractions in the decimal system in the binary system can lead to periodic breaks, etc.)
  • the proposed solution preserves the benefits of textual transmission while eliminating rounding issues.
  • decimal number 0.2 1/5 gives in binary representation the periodic fraction: 0.1001
  • the periodic is easily recognizable in the mantissa.
  • decimal number 123.34 would be represented as normalized in exponential notation as follows: 1.2334 * 10 2
  • the hexadecimal representation can be used in the same way as the decimal variant, but no rounding errors occur. Note: In the illustrated calculation, it was dispensed with the mantissa to adapt to a hexadecimal exponent. The binary exponent is still used. For the transmission tasks it is unimportant in which format the exponent is transmitted, but saves a conversion work. From the point of view, only a suitable conversion of binary into hexadecimal digits (and vice versa) takes place.
  • a type of single in double precision and vice versa is immediately possible. (In contrast to the decimal system) Changing the precision of the floating point number (from double precision to single precision and vice versa) is much easier in the hexadecimal representation than in the decimal representation, since the hexadecimal digits are converted to their binary value can.
  • the example uses the hexadecimal system as an example. However, the principle of the invention may refer to all suitable numerical bases, ie to all numerical bases which contain the 2 as the sole factor, such as 4, 8, 16, 32,....
  • the invention thus relates to a system and method for loss-free transmission of floating point numbers in XML, which is used in particular in the field of automation technology, for example, process data of a process automation system in XML, in particular via Internet to an operator control and observation system and / or to another automation system etc. to transmit.
  • process data of a process automation system in XML in particular via Internet to an operator control and observation system and / or to another automation system etc. to transmit.
  • process data of a process automation system in XML in particular via Internet to an operator control and observation system and / or to another automation system etc. to transmit.
  • a textual representation of a floating-point number there be no decimal basis, but in particular a hexadecimal number.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to a system and a method for the transfer of floating point numbers in XML format without losing information, which is especially used in automation technology, for example for transmitting process data of a process automation system in XML format especially via internet to a monitoring and control system and/or to an additional automation system etc. In order to avoid rounding errors which occur mainly during conversion of numerical values from binary to decimal values, the floating point numbers represented in a text are not represented on a decimal but on a hexadecimal base.

Description

Beschreibung description
System und Verfahren zur verlustfreien Übertragung von Flie߬ kommazahlen in XMLSystem and method for the lossless transmission of floating point numbers in XML
Die Erfindung betrifft System und Verfahren zur Konvertierung bzw. zur Übertragung von Fließkommazahlen.The invention relates to a system and method for converting or transmitting floating-point numbers.
Ein derartiges System und Verfahren kommt insbesondere im Be- reich der Automatisierungstechnik zum Einsatz, um beispiels¬ weise Prozessdaten eines Prozessautomatisierungssystems in XML insbesondere über Internet an ein Bedien- und Beobach¬ tungssystem und/oder an ein weiteres Automatisierungssystem etc. zu übermitteln.Such a system and method is used in particular in the field of automation technology, for example to transmit process data of a process automation system in XML, in particular via the Internet, to an operating and monitoring system and / or to a further automation system.
In wvjyj.it-acadaτ,y.cc/cortert/article_browse.php?ID=377 vom 18.06.2004 sind die Grundlagen zur Darstellung von Fließkom¬ mazahlen beschrieben und es wird auf den IEEE 754 Floating- Point-Standard hingewiesen.In wvjyj.it-acadaτ, y.cc / cortert / article_browse.php? ID = 377 of 18.06.2004 the basics for the representation of Fließkom¬ mazahlen are described and it is pointed to the IEEE 754 floating point standard.
t-. Der Erfindung liegt die Aufgabe zugrunde, ein System bzw. ein Verfahren der eingangs genannten Art anzugeben, das auf ein¬ fache Weise Rundungsfehler vermeidet. Zu derartigen Rundungs¬ fehlern kommt es bei der Umwandlung von Zahlenwerten aus ei- ner dezimalen in eine binäre Darstellung.t. The invention has for its object to provide a system or a method of the type mentioned, which avoids ein¬ times rounding error. Such rounding errors occur when converting numerical values from a decimal to a binary representation.
Diese Aufgabe wird durch die in den Ansprüchen 1, 7 und 12 angegebenen Merkmale gelöst.This object is achieved by the features specified in claims 1, 7 and 12.
Im Ergebnis ergibt sich hierdurch die Verwendung keiner dezi¬ malen Basis für die textuelle Darstellung von Fließkommazah¬ len, sondern einer hexadezimalen, wodurch auf überraschend einfache Weise Rundungsprobleme bisher aufgrund mathemati¬ scher Gegebenheiten entstehende Rundungsfehler vermieden wer- den. Vorteilhafte Ausgestaltungsformen der Erfindung ergeben sich aus den Unteransprüchen sowie aus dem in der Figur darge¬ stellten Ausführungsbeispiel.As a result, this results in the use of no decimal basis for the textual representation of floating-point numbers, but in a hexadecimal one, which avoids rounding problems hitherto surprisingly simple due to mathematical conditions. Advantageous embodiments of the invention emerge from the subclaims and from the embodiment shown in the FIGURE.
Es zeigen:Show it:
Fig. 1 zeigt ein System zur Konvertierung von Fließkomma¬ zahlen in XML undFIG. 1 shows a system for converting floating point numbers into XML and
Fig. 2 ein System zur Übertragung von Fließkommazahlen in XML.2 shows a system for the transmission of floating-point numbers in XML.
Fig. 1 zeigt ein System zur Konvertierung von Fließkommazah¬ len in XML. Das in FIG 1 dargestellte System besteht aus ei- nem ersten Rechnersystem 1, welcher über eine als XML- Transfer 3 realisierte Internet-Verbindung 8 mit einem System 2 verbindbar ist. Das erste Rechnersystem 1 enthält eine Fließkommaeinheit (FPU = Floating Point Unit) zur Erzeugung eines ersten Binärwertes 9 sowie eine erste Konvertierungs- einheit 6 zur Konvertierung des ersten Binärwertes 9 in eine konvertierte Fließkommazahl 10. Bei dem in FIG 1 dargestell¬ ten System handelt es sich beispielsweise um ein im Bereich der Automatisierungstechnik zum Einsatz kommendes Automati¬ sierungssystem. So kann beispielsweise das Rechnersystem 1 zur Verarbeitung von Prozess- und Steuerungsdaten eines An¬ triebs ausgebildet sein, welches Daten z.B. für ein Bedien- und Beobachtungssystem des Automatisierungssystems speichert. Die Besonderheit des in FIG 1 dargestellten Ausführungsbei¬ spiels besteht darin, dass für die Datenübertragung von aus der ersten Fließkommaeinheit erzeugten ersten Binärwert keine dezimale Basis für die textuelle Darstellung der Fließkomma¬ zahl verwendet wird, sondern eine Fließkommazahl 10 mit einer Zahlenbasis, die als Faktoren nur die Zahl 2 enthält, also beispielsweise eine hexadezimale Basis aufweist. Hierdurch wird auf überraschend einfache Weise ein Rundungsfehler bei der Übertragung beispielsweise von Prozess- und Steuerungs¬ werten in Form eines XML-Datentransfers vermieden. Im Gegen- satz zu dem in Fig. 2 dargestellten Ausführungsbeispiel, bei dem eine Übertragung der Fließkommazahl 11 erfolgt, wird im Ausführungsbeispiel gemäß Fig. 1 die Fließkommazahl 11 ledig¬ lich konvertiert und in XML-Format für eine mögliche spätere Verwendung gespeichert.1 shows a system for converting floating-point numbers into XML. The system shown in FIG. 1 consists of a first computer system 1, which can be connected to a system 2 via an Internet connection 8 implemented as an XML transfer 3. The first computer system 1 contains a floating point unit (FPU = Floating Point Unit) for generating a first binary value 9 and a first conversion unit 6 for converting the first binary value 9 into a converted floating point number 10. The system shown in FIG For example, this is an automation system used in the field of automation technology. Thus, for example, the computer system 1 can be designed for processing process and control data of an operating system which stores data, for example for an operating and monitoring system of the automation system. The peculiarity of the embodiment illustrated in FIG. 1 is that no decimal basis is used for the textual representation of the floating-point number for the data transmission of first binary value generated from the first floating-point unit, but a floating-point number 10 with a numerical basis, which is used as factors contains only the number 2, that is, for example, has a hexadecimal base. As a result, a rounding error in the transmission of, for example, process and control values in the form of an XML data transfer is avoided in a surprisingly simple manner. In the opposite Set to the embodiment shown in Fig. 2, in which a transmission of the floating-point number 11 takes place, in the embodiment of FIG. 1, the floating-point number 11 is only converted and stored in XML format for possible later use.
Fig. 2 zeigt ein System zur verlustfreien Übertragung von Fließkommazahlen in XML. Das in FIG 2 dargestellte System be¬ steht aus einem ersten Rechnersystem 1, welcher über eine als XML-Transfer 3 realisierte Internet-Verbindung 8 mit einem System 2 verbindbar ist. Das erste Rechnersystem 1 enthält eine Fließkommaeinheit (FPU = Floating Point ünit) zur Erzeu¬ gung eines ersten Binärwertes 9 sowie eine erste Konvertie¬ rungseinheit 6 zur Konvertierung des ersten Binärwertes 9 in eine konvertierte Fließkommazahl 10. Das zweite Rechnersystem umfasst eine Konvertierungseinheit 7 zur Konvertierung der vom ersten Rechnersystem 1 über die Datenverbindung 3 empfan¬ genen konvertierten Fließkommazahl 11 in einen zweiten Binär¬ wert 12. Das zweite Rechnersystem umfasst weiter eine zweite Fließkommaeinheit 4 zur Weiterverarbeitung des zweiten Binär¬ wertes 12 im zweiten Rechnersystem 2. Bei dem in EJG 2 darge¬ stellten System handelt es sich beispielsweise um ein im Be¬ reich der Automatisierungstechnik zum Einsatz kommendes Auto¬ matisierungssystem. So kann beispielsweise das Rechnersystem 1 zur Verarbeitung von Prozess- und Steuerungsdaten eines An¬ triebs ausgebildet sein, während das zweite Rechnersystem beispielsweise ein Bedien- und Beobachtungssystem des Automa¬ tisierungssystems bildet. Die Besonderheit des in FIG 1 dar¬ gestellten Ausführungsbeispiels besteht darin, dass für die Datenübertragung von aus der' ersten Fließkommaeinheit erzeug¬ ten ersten Binärwert keine dezimale Basis für die textuelle Darstellung der Fließkommazahl verwendet wird, sondern eine Fließkommazahl 10 mit einer Zahlenbasis, die als Faktoren nur die Zahl 2 enthält, also beispielsweise eine hexadezimale Ba- sis aufweist. Hierdurch wird auf überraschend einfache Weise ein Rundungsfehler bei der Übertragung beispielsweise von Prozess- und Steuerungswerten in Form eines XML-Datentrans- fers vermieden. In der ersten Konvertierungseinheit des ers¬ ten Rechnersystems vorgenommene Datenkonvertierung wird in der zweiten Konvertierungseinheit 7 des zweiten Rechnersys¬ tems 2 wieder zurückonvertiert, so dass am Ausgang der Kon- vertierungseinheit in Form des zweiten Binärwerts 12 ein Wert ohne Rundungsfehler für die Weiterverarbeitung in dem zweiten Rechnersystem 2 zur Verfügung steht.Fig. 2 shows a system for lossless transmission of floating point numbers in XML. The system shown in FIG. 2 comprises a first computer system 1, which can be connected to a system 2 via an Internet connection 8 implemented as an XML transfer 3. The first computer system 1 contains a floating point unit (FPU = floating point unit) for generating a first binary value 9 and a first conversion unit 6 for converting the first binary value 9 into a converted floating-point number 10. The second computer system comprises a conversion unit 7 for conversion The second computer system further comprises a second floating-point unit 4 for further processing of the second binary value 12 in the second computer system 2 The system shown here is, for example, an automation system used in the field of automation technology. Thus, for example, the computer system 1 can be configured to process process and control data of an operating system, while the second computer system forms, for example, an operating and monitoring system of the automation system. The special feature of the embodiment dar¬ provided in FIG 1 is that no decimal base is used for textual representation of the floating-point number for the data transfer from erzeug¬ from the 'first floating point unit th first binary value, but a floating point number 10, having a number basis, as Factors containing only the number 2, so for example, has a hexadecimal base. As a result, a rounding error in the transmission of, for example, process values and control values in the form of an XML data transmission is produced in a surprisingly simple manner. avoided. Data conversion carried out in the first conversion unit of the first computer system is reconverted back again in the second conversion unit 7 of the second computer system 2, so that at the output of the conversion unit in the form of the second binary value 12 a value without rounding errors for the further processing in the second Computer system 2 is available.
XML wird aufgrund seiner universellen Eigenschaften immer mehr auch zu Kommunikationszwecken eingesetzt. Vornehmlich sind hierbei SOAP und WebServices zu nennen. Das bereits ge¬ schilderte Problem der Rundungsproblematik tritt insbesondere im Rahmen von OPC-XML (OPC = OLE for Process Control) auf, welche ein standardisierter WebService für die Automatisie- rungstechnik ist. Über OPC-XML (Wie auch WebServices allge¬ mein) werden Fließkommazahlen (double / float) in Text umge¬ wandelt und als XML Tags übertragen. Die Spezifikation hier¬ für ist in XML Schema Part II: Datatypes definiert.Due to its universal properties, XML is increasingly being used for communication purposes. Primarily SOAP and WebServices are mentioned here. The already described problem of the rounding problem occurs in particular in the context of OPC-XML (OPC = OLE for Process Control), which is a standardized web service for automation technology. Using OPC-XML (as well as Web services in general), floating-point numbers (double / float) are converted into text and transmitted as XML tags. The specification for this is defined in XML Schema Part II: Datatypes.
Durch die textuelle Übertragung gewinnt man neben der (menschlichen) Lesbarkeit eine Maschinenunabhängigkeit-, da das Format der Fließkommazahlen universell ist (+/- Mantisse E +/- Exponent) . Die interne Darstellung in dem Gerät ist da¬ von unabhängig.Through the textual transfer one gains a machine independency in addition to the (human) readability, since the format of the floating point numbers is universal (+/- mantissa E +/- exponent). The internal representation in the device is therefore independent.
Der Erfindung liegt die Erkenntnis zugrunde, dass es bei der Umwandlung von der textuellen (dezimalen) Darstellung in die binäre Darstellung aufgrund mathematischer Gesetzmässigkeiten zu nicht lösbaren Rundungsfehlern kommen kann. (Umwandlung von gemeinen Brüchen im Dezimalsystem kann im Binärsystem zu periodischen Brüchen führen, etc.)The invention is based on the finding that in the conversion from the textual (decimal) representation into the binary representation due to mathematical laws, non-solvable rounding errors can occur. (Transformation of common fractions in the decimal system in the binary system can lead to periodic breaks, etc.)
Bisher wurden die Rundungsfehler entweder in Kauf genommen, oder die Genauigkeit der Fließkommazahlen wurde künstlich be- grenzt, um so durch Runden auf weniger Nachkommastellen den Rundungsfehler zu vermeiden. Beide Varianten resultieren in einem Genauigkeitsverlust. In der zweiten Variante ist die in Kauf genommene Ungenauigkeit bekannt, in der ersten nicht.So far, the rounding errors have either been accepted, or the precision of the floating point numbers has been artificially limited so as to avoid the rounding error by rounding to fewer decimal places. Both variants result in a loss of accuracy. In the second variant, the accepted inaccuracy is known, not in the first.
Das Grundprinzip der vorliegenden in Figur 1 visualisierten Erfindung ist es nun, für die textuelle Darstellung der Fließkommazahlen keine dezimale Basis zu nehmen (die dem menschlichen Naturell entgegenkommt) , sondern eine hexadezi¬ male. Diese ist zwar für den Menschen schwieriger zu lesen ergibt aber - durch die Tatsache dass 16 = 24 ist - keine Rundungsprobleme, wie bereits oben angemerkt wurde.The basic principle of the present visualized in figure 1 the invention is now to take no decimal basis for textual representation of floating point numbers (which comes to meet the human temper), but a hexadezi ¬ male. While this is more difficult for humans to read, it does not result in any rounding problems due to the fact that 16 = 2 4 , as noted above.
Mit Hilfe der vorgeschlagenen Lösung bleiben die Vorteile der textuellen Übertragung erhalten und gleichzeitig wird die Rundungsproblematik eliminiert.The proposed solution preserves the benefits of textual transmission while eliminating rounding issues.
Im folgenden wird die erfindungsgemäße Umwandlung anhand ei¬ ner beispielhaften Umrechnung erläutert :The conversion according to the invention is explained below on the basis of an example conversion:
Die Dezimale Zahl 0.2 = 1/5 ergibt in binärer Darstellung den periodischen Bruch: 0.1001The decimal number 0.2 = 1/5 gives in binary representation the periodic fraction: 0.1001
Die IEEE Darstellung dieser Zahl in double precision ist:The IEEE representation of this number in double precision is:
SEEEEEEE EEEEMMHH HHHMHHHM HHHHMHHM MHMHMHMM MMHMHMMH HHMHMHMM MMHMHMMM 00Iiim liooiooi loαiiooi looiiooi iooiiooi loonαoi iooiiooi iooiioioSEEEEEEE EEEEMMHH HHHHHHM HHHHMHHM MHMHMHMM MMHMHMMH HHMHMHMM MMHMHMMM 00Iiim liooiooi loαiiooi looiiooi iooiiooi loonαoi iooiiooi iooiioio
Die Periodik ist in der Mantisse leicht zu erkennen.The periodic is easily recognizable in the mantissa.
Bei der Wandlung vom Dezimalsystem ins Dualsystem kommt es potentiell zu Rundungsfehlern. Die Rundungsfehler können ein¬ gegrenzt werden, indem man die Genauigkeit der Fließkommazah¬ len reduziert und entsprechend rundet. Dieses führt natürlich zu einem Genauigkeitsverlust. In der Rückwandlung von dual nach dezimal tritt das Problem nicht auf.When converting from the decimal system to the dual system, rounding errors can potentially occur. The rounding errors can be limited by reducing the accuracy of the floating-point numbers and rounding them accordingly. This naturally leads to a loss of accuracy. In the reconversion from dual to decimal the problem does not arise.
Darstellung der Fließkommazahl als Hexadezimalbruch Die dezimale Zahl 123.34 würde normiert in Exponential- schreibweise so dargestellt werden: 1.2334 *102 Representation of the floating-point number as a hexadecimal fraction The decimal number 123.34 would be represented as normalized in exponential notation as follows: 1.2334 * 10 2
Das bedeutet : 1 *1 °+2*10"1+3*10'2+3*10'3+4*10"4 * 102 This means: 1 * 1 ° + 2 * 10 "1 + 3 * 10 '2 + 3 * 10 ' 3 + 4 * 10 " 4 * 10 2
Binäre Darstellung dieser Zahl nach IEEE 754 (double Precisi- on) ist :Binary representation of this number according to IEEE 754 (double precisi- on) is:
01000000 01011110 11010101 11000010 10001111 01011100 00101000 1111011001000000 01011110 11010101 11000010 10001111 01011100 00101000 11110110
Hieraus ergibt sich die Mantisse (Bits 0 - 51) :Hence the mantissa (bits 0 - 51):
11 10 1 1010101 1 1000010 100011 11 0101 1100 00101000 11 11011011 10 1 1010101 1 1000010 100011 11 0101 1100 00101000 11 110110
Diese bedeutet :This means:
1*20 + 1 *2-1 + 1 *2-2+ 1 *2-3+ 0*2-4+ 1*2-5+ 1*2-6+ 0*2-7+ 1*2-8+...1 * 20 + 1 * 2-1 + 1 * 2-2 + 1 * 2-3 + 0 * 2-4 + 1 * 2-5 + 1 * 2-6 + 0 * 2-7 + 1 * 2- 8 + ...
1*2° ist imaginär und wird nicht dargestellt, siehe IEEE 754.1 * 2 ° is imaginary and is not shown, see IEEE 754.
Der Exponent ist mit einem biased Wert versehen: 10000000101-BIAS=0110 BIAS= 1111111111.The exponent has a biased value: 10000000101-BIAS = 0110 BIAS = 1111111111.
Stellt man diese Mantisse nun hexadezimal dar: OE D5 C28F5C 28 F6If this mantissa is now represented in hexadecimal form: OE D5 C28F5C 28 F6
Bedeutet dies: E*16'1+D*16"2+5*16"3+...Does this mean: E * 16 '1 + D * 16 "2 +5 * 16 " 3 + ...
Die Darstellungsumwandlung vom binären in das hexadezimale System erfolgt ohne Rundungsfehler, da die hexadezimale Basis nur die duale Basis als Faktor enthält (16 = 2*2*2*2) :The representation transformation from the binary into the hexadecimal system takes place without a rounding error, since the hexadecimal basis only contains the dual basis as a factor (16 = 2 * 2 * 2 * 2):
16-1 == 2-4 16- 1 == 2- 4
Daraus folgt: Die vier ersten, dualen Nachkommastellen lassen sich 1:1 mit einer hexadezimalen Nachkommastelle darstellen. Dieses gilt ebenfalls für alle weiteren 4 Dualziffern Tupel. (16~2==2~8, ...)It follows that the four first, dual decimal places can be represented 1: 1 with a hexadecimal decimal place. This also applies to all other 4 dual-digit tuples. (16 ~ 2 == 2 ~ 8 , ...)
Analog gilt dieses für Vorzeichen und biased Exponent. (Bits 53-63)Similarly, this holds for sign and biased exponent. (Bits 53-63)
Daraus folgt: anstatt die duale Darstellung in ein dezimales Gegenstück umzuwandeln, kann man dieses auch analog in das hexadezimale Gegenstück tun:From this follows: instead of converting the dual representation into a decimal counterpart, one can also do this analogously in the hexadecimal counterpart:
1.1110110101011100001010001111010111000010100011110110*200000000110 1.1110110101011100001010001111010111000010100011110110 * 2 00000000110
= 1.ED5C28F5C28F6*26= 1.ED5C28F5C28F6 * 26
Die hexadezimale Darstellung lässt sich genauso verwenden wie die dezimale Variante, es treten aber keine Rundungsfehler auf. Beachte: In der dargestellten Rechnung wurde darauf verzich¬ tet die Mantisse an einen hexadezimalen Exponenten anzupas- sen. Es wird weiterhin der binäre Exponent verwendet. Für die Übertragungsaufgäbe ist es unwichtig, in welchem Format der _ Exponent übertragen wird, erspart aber eine Umrechnungsar¬ beit. Vom Aufwand her findet nur eine geeignete Wandlung von Binär in Hexadezimalziffern (und umgekehrt) statt.The hexadecimal representation can be used in the same way as the decimal variant, but no rounding errors occur. Note: In the illustrated calculation, it was dispensed with the mantissa to adapt to a hexadecimal exponent. The binary exponent is still used. For the transmission tasks it is unimportant in which format the exponent is transmitted, but saves a conversion work. From the point of view, only a suitable conversion of binary into hexadecimal digits (and vice versa) takes place.
Bei der textuellen Darstellung steht die höchstwertige Stelle immer links, daher muss u.U. vor dem Wandeln die Bitreihen- folge des TargetSystems berücksichtigt werden. (Little / Big Endian) .In textual representation, the most significant digit is always left, so u.U. Before converting, the bit sequence of the target system should be taken into account. (Little / Big Endian).
Ein Typeast von Single in Double Precision und umgekehrt ist sofort möglich. (Im Gegensatz zum dezimalen System) Ein Ändern der Genauigkeit der Fließkommazahl (von double precision in Single precision und umgekehrt) ist in der hexa- dezimalen Darstellung deutlich einfacher, als in der dezima¬ len Darstellung, da die Hexadezimalziffern stellengenau in ihren Binärwert umgesetzt werden können. Das Beispiel benutzt exemplarisch das Hexadezimalsystem. Das Erfindungsprinzip kann sich aber auf alle geeigneten Zahlen¬ basen, d.h. auf alle Zahlenbasen, die als alleinigen Faktor die 2 enthalten, wie z.B. 4, 8, 16, 32, ... beziehen.A type of single in double precision and vice versa is immediately possible. (In contrast to the decimal system) Changing the precision of the floating point number (from double precision to single precision and vice versa) is much easier in the hexadecimal representation than in the decimal representation, since the hexadecimal digits are converted to their binary value can. The example uses the hexadecimal system as an example. However, the principle of the invention may refer to all suitable numerical bases, ie to all numerical bases which contain the 2 as the sole factor, such as 4, 8, 16, 32,....
Zusammenfassend betrifft die Erfindung somit ein System und Verfahren zur verlustfreien Übertragung von Fließkommazahlen in XML, das insbesondere im Bereich der Automatisierungstech- nik zum Einsatz kommt, um beispielsweise Prozessdaten eines Prozessautomatisierungssystems in XML insbesondere über In¬ ternet an ein Bedien- und Beobachtungssystem und/oder an ein weiteres Automatisierungssystem etc. zu übermitteln. Zur Ver¬ meidung von Rundungsfehlern, die vor allem bei der Umwandlung von Zahlenwerten aus einer binären in eine dezimale Darstel¬ lung vorkommen, wird vorgeschlagen, bei einer textuellen Dar¬ stellung einer Fließkommazahl keine dezimale Basis vorzuse¬ hen, sondern insbesondere eine Hexadezimale. In summary, the invention thus relates to a system and method for loss-free transmission of floating point numbers in XML, which is used in particular in the field of automation technology, for example, process data of a process automation system in XML, in particular via Internet to an operator control and observation system and / or to another automation system etc. to transmit. In order to avoid rounding errors, which occur above all in the conversion of numerical values from a binary representation into a decimal representation, it is proposed that in the case of a textual representation of a floating-point number, there be no decimal basis, but in particular a hexadecimal number.

Claims

Patentansprüche claims
1. System zur Konvertierung von Fließkommazahlen durch ein erstes Rechnersystem (1) • mit einer im ersten Rechnersystem (1) vorgesehenen ersten Fließkommaeinheit (4) zur Erzeugung eines ersten Binärwer¬ tes (9), • mit einer im ersten RechnerSystem (1) vorgesehenen ersten Konvertierungseinheit (6) zur Konvertierung des ersten Bi- närwertes (9) in eine konvertierte Fließkommazahl (11) mit einer Zahlenbasis, die als Faktor die Zahl 2 enthält, ins¬ besondere mit einer hexadezimalen Basis.1. System for the conversion of floating-point numbers by a first computer system (1) with a first floating point unit (4) provided in the first computer system (1) for generating a first binary value (9), with one provided in the first computer system (1) first conversion unit (6) for converting the first binary value (9) into a converted floating-point number (11) with a numerical base containing as a factor the number 2, in particular with a hexadecimal base.
2. System nach Anspruch 1, d a d u r c h g e k e n n z e i c h n e t, dass das System zur Speicherung von Fließkommazahlen in XML und/oder deren spätere Wiederverwendung vorgesehen ist.2. System according to claim 1, characterized in that the system is provided for storing floating point numbers in XML and / or their subsequent reuse.
3. System zur Übertragung von Fließkommazahlen von einem ersten RechnerSystem (1) über eine Datenverbindung (3) an ein zweites Rechnersystem (2) • mit einer im ersten RechnerSystem (1) vorgesehenen ersten Fließkommaeinheit (4) zur Erzeugung eines ersten Binärwer¬ tes (9), • mit einer im ersten Rechnersystem (1) vorgesehenen ersten Konvertierungseinheit (6) zur Konvertierung des ersten Bi¬ närwertes (9) in eine konvertierte Fließkommazahl (11) mit einer Zahlenbasis, die als Faktor die Zahl 2 enthält, ins¬ besondere mit einer hexadezimalen Basis, • mit einer im zweiten Rechnersystem (2) vorgesehenen zwei¬ ten Konvertierungseinheit (7) zur Konvertierung der vom ersten Rechnersystem (1) über die Datenverbindung (3) emp¬ fangenen konvertierten Fließkommazahl (11) insbesondere der hexadezimalen Basis in einen zweiten Binärwert (12) und • mit einer im zweiten Rechnersystem (2) vorgesehenen zwei¬ ten Fließkommaeinheit (5) zur Weiterverarbeitung des zwei¬ ten Binärwertes (12) im zweiten Rechnersystem (2) .3. System for transmitting floating point numbers from a first computer system (1) via a data connection (3) to a second computer system (2) with a first floating point unit (4) provided in the first computer system (1) for generating a first binary value ( 9), with a first conversion unit (6) provided in the first computer system (1) for converting the first negative value (9) into a converted floating-point number (11) having a numerical base containing the factor 2, in particular with a hexadecimal base, with a second conversion unit (7) provided in the second computer system (2) for converting the converted floating-point number (11) received by the first computer system (1) via the data connection (3), in particular the hexadecimal base in a second binary value (12) and With a second floating-point unit (5) provided in the second computer system (2) for further processing of the second binary value (12) in the second computer system (2).
4. System nach Anspruch 3, d a d u r c h g e k e n n z e i c h n e t, dass das System zur Übertragung von Fließkommazahlen über XML, insbesondere OPC-XML vorgesehen ist.4. System according to claim 3, characterized in that the system is provided for the transmission of floating-point numbers via XML, in particular OPC-XML.
5. System nach einem der Ansprüche 1 bis 4, d a d u r c h g e k e n n z e i c h n e t, dass das erste und/oder das zweite Rechnersystem (1) ein Au¬ tomatisierungsgerät im Bereich der Automatisierungstechnik sind.5. System according to one of claims 1 to 4, d a d e r c h e c e n e c e in that the first and / or the second computer system (1) are an automation device in the field of automation technology.
6. System nach einem der Ansprüche 1 bis 5, d a d u r c h g e k e n n z e i c h n e t, dass das erste und/oder zweite Rechnersystem (2) ein Bedien- und Beobachtungssystem im Bereich der Automatisierungstechnik sind.6. System according to one of claims 1 to 5, in that a first and / or second computer system (2) is an operator control and monitoring system in the field of automation technology.
7. Verfahren zur Konvertierung von Fließkommazahlen durch ein erstes Rechnersystem (1) , • bei dem mit einer im ersten Rechnersystem (1) vorgesehenen ersten Fließkommaeinheit (4) ein erster Binärwert (9) er¬ zeugt wird, • bei dem mit einer im ersten Rechnersystem (1) vorgesehenen ersten Konvertierungseinheit (6) der erste Binärwertes in - eine Fließkommazahl (11) mit einer Zahlenbasis, die als Faktor die Zahl 2 enthält, insbesondere mit einer hexade¬ zimalen Basis, umgewandelt wird.7. Method for the conversion of floating point numbers by a first computer system (1), in which a first binary value (9) is generated with a first floating point unit (4) provided in the first computer system (1) Computer system (1) provided first conversion unit (6) of the first binary value in - a floating-point number (11) with a numerical base containing a factor of 2, in particular with a hexadecimal base is converted.
8. Verfahren nach Anspruch 7, d a d u r c h g e k e n n z e i c h n e t, dass das Verfahren zur Speicherung von Fließkommazahlen in XML und/oder deren spätere Wiederverwendung vorgesehen ist. 8. The method according to claim 7, characterized in that the method is provided for storing floating point numbers in XML and / or their subsequent reuse.
9. Verfahren zur verlustfreien Übertragung von Fließkommazah¬ len von einem ersten Rechnersystem (1) über eine Datenverbin¬ dung (3) an ein zweites Rechnersystem (2) , • bei dem mit einer im ersten Rechnersystem (1) vorgesehenen ersten Fließkommaeinheit (4) ein erster Binärwert (9) er¬ zeugt wird, • bei dem mit einer im ersten RechnerSystem (1) vorgesehenen ersten Konvertierungseinheit (6) der erste Binärwertes in eine Fließkommazahl (11) mit einer Zahlenbasis, die als Faktor die Zahl 2 enthält, insbesondere mit einer hexade¬ zimalen Basis, umgewandelt wird, • bei dem mit einer im zweiten Rechnersystem (2) vorgesehe¬ nen zweiten Konvertierungseinheit (7) die vom ersten Rech¬ nersystem (1) über die Datenverbindung (3) empfangene Fließkommazahl (11) mit der hexadezimalen Basis in einen zweiten Binärwert (12) gewandelt wird und • bei dem mit einer im zweiten Rechnersystem (2) vorgesehe¬ nen zweiten Fließkommaeinheit (5) der zweite Binärwert (12) im zweiten Rechnersystem (2) weiterverarbeitet wird.9. A method for the lossless transmission of floating point numbers from a first computer system (1) via a data connection (3) to a second computer system (2), in which a first floating point unit (4) provided in the first computer system (1) a first binary value (9) is generated, in which, with a first conversion unit (6) provided in the first computer system (1), the first binary value is converted into a floating-point number (11) with a numerical base which contains the number 2 as a factor, in particular is converted with a hexadecimal base, • with the second conversion unit (7) provided in the second computer system (2) with the floating-point number (11) received by the first computer system (1) via the data connection (3) the hexadecimal base is converted into a second binary value (12), and • the second binary value (12) in the second computation with a second floating-point unit (5) provided in the second computer system (2) system (2).
10. Verfahren nach Anspruch 9,., d a d u r c h g e k e n n z e i c h n e t, dass das Verfahren zur Übertragung von Fließkommazahlen über XML, insbesondere OPC-XML vorgesehen ist.10. The method according to claim 9, wherein a method is provided for transmitting floating-point numbers via XML, in particular OPC-XML.
11. Verfahren nach einem der Ansprüche 7 bis 10, d a d u r c h g e k e n n z e i c h n e t, dass das Verfahren im Bereich der Automatisierungstechnik an¬ gewendet wird.11. The method according to any one of claims 7 to 10, d a d u c h e c e n e c e s in that the method is used in the field of automation technology.
12. Computerprogrammprodukt, das auf einem Rechner ablauffä¬ hig ist und das Softwaremittel zur Durchführung des Verfah¬ rens nach einem der Ansprüche 7 bis 11 aufweist. 12. Computer program product which is executable on a computer and has the software means for carrying out the method according to one of claims 7 to 11.
EP05758614A 2004-06-23 2005-06-21 System and method for the transfer of floating point numbers in xml format without loss of information Withdrawn EP1759462A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102004030384A DE102004030384A1 (en) 2004-06-23 2004-06-23 System and method for the lossless transmission of floating point numbers in XML
PCT/EP2005/052863 WO2006000548A1 (en) 2004-06-23 2005-06-21 System and method for the transfer of floating point numbers in xml format without loss of information

Publications (1)

Publication Number Publication Date
EP1759462A1 true EP1759462A1 (en) 2007-03-07

Family

ID=34971792

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05758614A Withdrawn EP1759462A1 (en) 2004-06-23 2005-06-21 System and method for the transfer of floating point numbers in xml format without loss of information

Country Status (3)

Country Link
EP (1) EP1759462A1 (en)
DE (1) DE102004030384A1 (en)
WO (1) WO2006000548A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060009378A1 (en) 2002-11-14 2006-01-12 Itshak Golan Novel galectin sequences and compositions and methods utilizing same for treating or diagnosing arthritis and other chronic inflammatory diseases
EP2040178B1 (en) * 2007-09-20 2016-07-13 Canon Kabushiki Kaisha Document encoding apparatus, document encoding method, and computer-readable storage medium
JP5710726B2 (en) * 2013-10-09 2015-04-30 ファナック株式会社 Control device for executing control program including floating point arithmetic instruction for controlling machine

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278978A (en) * 1990-03-26 1994-01-11 International Business Machines Corporation Method and system for describing and exchanging data between heterogeneous database systems with data converted by the receiving database system
US5191335A (en) * 1990-11-13 1993-03-02 International Business Machines Corporation Method and apparatus for floating-point data conversion with anomaly handling facility
DE10138533A1 (en) * 2000-12-15 2002-07-11 Siemens Ag Protection of control programs transmitted over the Internet from a developer to a customer using asymmetric encryption of the program code, which is decrypted by the end user after parameter editing

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PROF. DR. H. IWE: "Umwandlung von Dual/Oktal/Hexadezimal in Dezimal", 11 December 2003 (2003-12-11), Retrieved from the Internet <URL:http://www2.htw-dresden.de/~iwe/grundlagen/uebung/Konvertierungen.pdf> [retrieved on 20160517] *
See also references of WO2006000548A1 *
THOMAS FINLEY: "Floating Point", April 2000 (2000-04-01), Retrieved from the Internet <URL:https://users.cs.duke.edu/~raw/cps104/TWFNotes/floating.html> [retrieved on 20160517] *

Also Published As

Publication number Publication date
DE102004030384A1 (en) 2006-01-19
WO2006000548A1 (en) 2006-01-05

Similar Documents

Publication Publication Date Title
EP0079471B1 (en) Arrangement and method for forming scalar products and sums of floating point numbers with maximum precision
DE19839627B4 (en) Digital signal processor
DE2321112C2 (en) Signal processing system
DE2626432C2 (en) Arithmetic unit for automatic computing devices
DE2623986A1 (en) PARALLEL COMPUTER
DE1162111B (en) Floating point arithmetic facility
EP0443061A1 (en) Method for adapting block-length when transmitting serial datas, with transmission quality measuring method and preferred use of the method
DE2150751B2 (en) DIGITAL SINE-COSINE GENERATOR
DE1809219A1 (en) Binary multiple adder for the simultaneous addition of several binary numbers
DE2758130C2 (en) High speed binary and decimal adder
EP0344347B1 (en) Digital signal processing unit
EP1759462A1 (en) System and method for the transfer of floating point numbers in xml format without loss of information
DE2617485C3 (en) Circuit arrangement for data processing systems for processing micro instruction sequences
DE2702228A1 (en) ELECTRONIC SCALE
DE2826773A1 (en) PROCEDURE AND CIRCUIT ARRANGEMENT FOR DETERMINING THE VALUE OF NUMBERS IN ARITHMETIC OPERATIONS WITH DECIMAL CALCULATOR
DE4019646C2 (en) Device and method for multiplying data words in two&#39;s complement representation
DE1125208B (en) Electrical comparison circuit system
DE1187403B (en) Method and device for the logical connection of two operands
DE2952072A1 (en) DEVICE FOR PROCESSING BINARY CODED DECIMAL NUMBERS
DE10258472B3 (en) Processing method for digital data values e.g. for industrial process control and regulation, employing prediction method in combination with RICE method
DE19851690A1 (en) Residue checking for data conversions involves computing modulo residues of corresponding numerical values before/after conversion, and comparing corresponding residue values after conversion
EP0051154A1 (en) Method and device for combining variable-length operands in data processing systems
DE1234055B (en) Arrangement for addition or subtraction
DE2952689A1 (en) PROGRAMMABLE READ-MEMORY ADDER
DE2061609C3 (en) Circuit arrangement for converting a code into another code

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20061206

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB IT

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): DE FR GB IT

17Q First examination report despatched

Effective date: 20090126

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SIEMENS AKTIENGESELLSCHAFT

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SIEMENS AKTIENGESELLSCHAFT

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20170103

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN