Κάθε μεταβλητή στην SPS λαμβάνει αυτόματα τον σωστό τύπο δεδομένων. Η μετατροπή πρέπει να ρυθμιστεί μόνο στη διεπαφή. Σε αυτό το κεφάλαιο εξηγούνται οι διάφοροι τύποι της Antcas Control.
Αυτός ο τύπος μπορεί να έχει μόνο δύο καταστάσεις. Αληθές ή ψευδές. Στην εφαρμογή, αντί για μια μεταβλητή, η τιμή μπορεί να οριστεί με TRUE (αληθής) ή FALSE (ψευδής).
Επιπλέον, χρησιμοποιείται ο ειδικός τύπος NULL. Αυτή η κατάσταση ορίζεται κατά την αρχικοποίηση μιας μεταβλητής, δηλαδή μιας μη γραμμένης. Επιπλέον, με NULL είναι δυνατές ειδικές λειτουργίες. Για παράδειγμα, όταν δεν επιτρέπεται η επικοινωνία μιας τιμής στη διεπαφή.
Ένας ακέραιος αριθμός είναι ένας ακέραιος αριθμός, όπως για παράδειγμα 0 ή 26. Επιπλέον, η τιμή μπορεί να είναι αρνητική. Η Antcas Control εργάζεται με μια SPS 64-bit, η οποία επιτρέπει τον υπολογισμό πολύ μεγάλων αριθμών. Ο μεγαλύτερος αριθμός ορίζεται με την σταθερά INT_MAX (9223372036854775807). Ο μικρότερος αριθμός βρίσκεται στο INT_MIN ή INT_MAX+1, καθώς το πρόσημο χρησιμοποιεί ένα bit. Όλοι οι αριθμοί εκτός του εύρους θα εφαρμοστούν σε έναν Float με έναν εκθέτη. Ο υπολογισμός είναι τότε ανεπίσημος.
Ένας ακέραιος αριθμός μπορεί να πάρει την τιμή -0, η οποία δεν είναι ίση με FALSE. Ωστόσο, η έλεγχος με τη συνάρτηση EQ(-0,0) δίνει TRUE. Η τιμή -0 μπορεί να οριστεί μόνο ως μια αλφαριθμητική σειρά '-0'.
Μπορεί επίσης να οριστεί απευθείας μια τιμή Hex. Αυτή ξεκινά με 0x ή 0X. Για παράδειγμα, από το 0xFF γίνεται τότε 255.
Ένας Float ή και πραγματικός αριθμός είναι ένας κλασματικός αριθμός, όπως για παράδειγμα 0.1 ή 22.005 (με κόμμα). Υποστηρίζονται επίσης εκθέτες. Για παράδειγμα, 10E2 για 1'000 ή 10e-2 για 0.1. Η κεφαλαία και πεζή γραφή είναι ανεξάρτητη. Προσπαθείται να μετατρέψει τον αριθμό σε έναν ακέραιο, καθώς ο υπολογισμός είναι απλούστερος για την SPS. Μπορεί να συμβεί ότι οι υπολογισμοί με μεγάλους αριθμούς γίνονται ανεπίσημοι. Ο μέγιστος αριθμός δεκαδικών ψηφίων είναι σταθερά περιορισμένος σε 14, για να αυξήσει την απόδοση της SPS.
Οι κλασματικοί αριθμοί έχουν περιορισμένη ακρίβεια. Αν και αυτό εξαρτάται από το σύστημα, η Antcas Control χρησιμοποιεί συνήθως το IEEE 754 Double Precision Format, το οποίο δίνει ένα μέγιστο σχετικό σφάλμα στρογγυλοποίησης της τάξης των 1.11e-16. Μη στοιχειώδεις αριθμητικές λειτουργίες μπορούν ωστόσο να προκαλέσουν μεγαλύτερα σφάλματα και φυσικά πρέπει να ληφθεί υπόψη η διάδοση του σφάλματος, όταν συνδυάζονται πολλές λειτουργίες.
Επιπλέον, υπάρχουν ρητοί αριθμοί που μπορούν να παρουσιαστούν με ακρίβεια ως κλασματικοί αριθμοί στη βάση 10, για παράδειγμα 0.1 ή 0.7, αλλά δεν υπάρχει ακριβής αναπαράσταση τους ως κλασματικοί αριθμοί στη βάση 2, η οποία χρησιμοποιείται εσωτερικά ανεξάρτητα από το μέγεθος της μαντισσάς. Ως εκ τούτου, δεν μπορούν να μετατραπούν στην εσωτερική τους δυαδική αναπαράσταση χωρίς μια μικρή απώλεια ακρίβειας. Αυτό μπορεί να οδηγήσει σε παραξενικά αποτελέσματα: FLOOR((0.1+0.7)*10) θα δώσει συνήθως 7 αντί του αναμενόμενου αποτελέσματος 8, καθώς η εσωτερική αναπαράσταση είναι κάτι σαν 7.9999999999999991118.
Πρέπει να μην βασίζεστε ποτέ στους τελευταίους δεκαδικούς αριθμούς των κλασματικών αριθμών και να μην ελέγχετε ποτέ τους κλασματικούς αριθμούς απευθείας για ισότητα.
Μια αλφαριθμητική σειρά ή και string ορίζεται με ένα απλό ερωτηματικό ' ' ή διπλό ερωτηματικό " ". Για παράδειγμα, 'Κείμενο 1' ή . Με τη Μονάδα Λειτουργίας CONCAT μπορούν να συνδυαστούν πολλές αλφαριθμητικές σειρές.
Μια νέα γραμμή μπορεί να δημιουργηθεί με CTRL+Enter. Αυτό εμφανίζεται τότε ως ένα βέλος ↵.
Ένα escape χαρακτήρα για την ένδειξη ενός ' ή " στην ίδια αλφαριθμητική σειρά δεν είναι απαραίτητο. Η αλφαριθμητική σειρά μπορεί να οριστεί απευθείας με "Εδώ υπάρχει ένα " χαρακτήρας".
Είναι δυνατό να δηλωθούν ειδικοί χαρακτήρες απευθείας. Για αυτό, μέσα στην αλφαριθμητική σειρά, χρησιμοποιείται η ακόλουθη ακολουθία με διπλά ερωτηματικά:
| Escape-Ακολουθία | ASCII-Sυντόμευση |
|---|---|
| \\ | Escaped \ |
| \n | LF |
| \r | CR |
| \r\n | CRLF |
| \0 | NUL |
| \t | TAB |
| \e | ESC |
| \f | FORMFEED |
| \x## | Τυχαίο Byte |
Για παράδειγμα, για να δηλώσετε ένα τυχαίο byte 126 ή 7E ως εξαδικό αριθμό, χρησιμοποιείται η ακόλουθη έκφραση: "\x7E". Αυτή η αλφαριθμητική σειρά αντιστοιχεί τότε σε "~".
Εδώ, το 7E είναι μια τιμή αντικατάστασης. Μπορούν να οριστεί όλες οι τιμές εντός των εξαδικών αριθμών 00 έως FF. Σημειώστε ότι το UTF-8 BOM "\xEF\xBB\xBF" αφαιρείται αυτόματα από τους περισσότερους περιηγητές. Είναι δυνατό να κρυπτογραφηθεί η ακολουθία χαρακτήρων. Για αυτό, χρησιμοποιείται ένα προκαταρκτικό αντίστροφο σλάς: "\\x7E" αυτό αντιστοιχεί τότε σε '\x7E'.
Προσοχή: Όλες οι αλφαριθμητικές σειρές εκτός του εύρους UTF-8 δεν μπορούν να αποθηκευτούν με μόνιμο τρόπο. Στην προβολή σε πραγματικό χρόνο, αυτές εμφανίζονται σκούρο βιολέτα.
Βλέπε επίσης το άρθρο Μετατροπή Αλφαριθμητικών Σε Αριθμούς.
Ορίζει μια ημερομηνία και μια ώρα με DT#, για παράδειγμα, DT#2016-03-25-22:12:00D#, για παράδειγμα, D#2016-03-25. Οι ώρες μετατρέπονται σε έναν ακέραιο αριθμό σε χιλιοστόμετρα από την ημερομηνία 01.01.1970 (αυτή η τιμή βρίσκεται στη ζώνη ώρας UTC/GMT).
Ορίζει μια ώρα σε χιλιοστόμετρα με T#, για παράδειγμα, T#5d3h5m11s500ms. Οι ώρες μετατρέπονται σε έναν ακέραιο αριθμό σε χιλιοστόμετρα.
Ένας πίνακας δεν μπορεί να οριστεί απευθείας. Ωστόσο, μπορούν να γίνουν αντιστοιχίες μιας μεταβλητής με ένα σημείο. Βλέπε Μεταβλητές.
ΠΟΛΥ ΣΗΜΑΝΤΙΚΟ: Μη ορίζετε ποτέ μια τιμή κάτω σε έναν πίνακα. Για παράδειγμα, set και set.p - Η SPS θα σταματήσει εδώ. Και επομένως δεν θα λειτουργήσει. Επιπλέον, αυτό μπορεί να οδηγήσει σε αναμενόμενα σφάλματα.