Zahlen und Zahlensysteme
🎧 Podcast
Zahlensysteme
Dezimalsystem (Basis 10)
Das uns vertraute System mit den Ziffern 0 bis 9. Es wird in der Programmierung meist für menschlich lesbare Werte wie Sollwerte, Zähler oder Zeitangaben verwendet.
Beispiel: 125
Binärsystem (Basis 2)
Da Computer und Steuerungen intern mit Zuständen (An/Aus, 0/1) arbeiten, ist das Binärsystem das grundlegendste System. Es besteht nur aus den Ziffern 0 und 1.
In der IEC 61131-3 werden Binärzahlen mit dem Präfix 2# gekennzeichnet.
Beispiel: 2#1011 (entspricht dezimal 11)
Hexadezimalsystem (Basis 16)
Das Hexadezimalsystem ist für Programmierer besonders nützlich, da ein Byte (8 Bit) exakt durch zwei Hex-Ziffern (0-9 und A-F) dargestellt werden kann. Es bietet eine kompakte Darstellung von Bitmustern.
In der IEC 61131-3 werden Hex-Zahlen mit dem Präfix 16# gekennzeichnet.
Beispiel: 16#FF (entspricht dezimal 255 oder binär 2#11111111)
Literale in der IEC 61131-3 / IEC 61499
Literale sind fest im Programmcode geschriebene Werte. Um der Steuerung mitzuteilen, wie ein Wert zu interpretieren ist, können Typ-Präfixe verwendet werden.
Ganzzahlen (Integer)
Ganzzahlen können ohne Nachkommastelle angegeben werden.
1234(Dezimal)-567(Negativ)16#ABCD(Hexadezimal)2#1010_0101(Binär, Unterstriche dienen der Lesbarkeit)
Gleitpunktzahlen (Real)
Werte mit Nachkommastellen oder in wissenschaftlicher Notation.
1.234-0.51.0E-3(entspricht 0.001)
Typisierte Literale
Manchmal ist es wichtig, den Datentyp explizit anzugeben, um Mehrdeutigkeiten zu vermeiden.
INT#15UINT#15REAL#15.0TIME#5s(Zeitdauer von 5 Sekunden)
Mathematische Hintergründe
Für tiefere Einblicke in die Mengenlehre der Zahlen (natürliche, ganze, reelle Zahlen) bieten folgende Begriffe eine gute Grundlage:
Natürliche Zahlen (ℕ): Positive ganze Zahlen {1, 2, 3, …} – oft als Grundlage für
UINT(Unsigned Integer).Ganze Zahlen (ℤ): Zahlen ohne Nachkommastelle, inkl. Null und negativer Zahlen – Grundlage für
INT,DINT,LINT.Reelle Zahlen (ℝ): Zahlen mit Nachkommastellen – Grundlage für
REALundLREAL.