Affectation de la mémoire pour les tableaux
La quantité de mémoire qu'utilise un tableau dépend du type de données utilisé pour créer le tableau. L'allocation minimale dans l'automate est de quatre octets, ce qui correspond à 4 SINT, 2 INT ou 1 DINT.
Voici des exemples d’allocation de mémoire pour différents tableaux :
small_values as SINT[8]
Exemple de tableau à 8 éléments dont le type de données est SINT (1 octet par élément).
Bit | 31 24 | 23 16 | 15 8 | 7 0 |
Allocation de données 1 | small_values[3] | small_values[2] | small_values[1] | small_values[0] |
Allocation de données 2 | small_values[7] | small_values[6] | small_values[5] | small_values[4] |
small_values as SINT[3]
Exemple de tableau à 3 éléments dont le type de données est SINT (1 octet par élément). L'allocation de données minimale étant de 4 octets, le dernier octet est zéro.
Bit | 31 24 | 23 16 | 15 8 | 7 0 |
Allocation de données 1 | 0 | small_values[2] | small_values[1] | small_values[0] |
valeurs au format INT[4]
Exemple de tableau à 4 éléments dont le type de données est INT (2 octets par élément).
Bit | 31 16 | 15 0 |
Allocation de données 1 | values[1] | values[0] |
Allocation de données 2 | values[3] | values[2] |
big_values au format DINT[2]
Exemple de tableau à 2 éléments dont le type de données est DINT (4 octets par élément).
Bit | 31 0 |
Allocation de données 1 | big_values[0] |
Allocation de données 2 | big_values[1] |
timer_list au format TIMER[2]
Exemple de tableau à 2 éléments, dont la structure est TIMER (12 octets par structure).
Bit | 31 0 |
Allocation de données 1 | Bits d'état de timer_list[0] |
Allocation de données 2 | timer_list[0].pre |
Allocation de données 3 | timer_list[0].acc |
Allocation de données 4 | Bits d'état de timer_list[1] |
Allocation de données 5 | timer_list[1].pre |
Allocation de données 6 | timer_list[1].acc |
small_values au format SINT[2,2,2]
Exemple de tableau tridimensionnel à 8 éléments dont le type de données est SINT.
Bit | 31 24 | 23 16 | 15 8 | 7 0 |
Allocation de données 1 | small_values[0,1, 1] | small_values[0,1, 0] | small_values[0,0, 1] | small_values[0,0, 0] |
Allocation de données 2 | small_values[1,1, 1] | small_values[1,1, 0] | small_values[1,0, 1] | small_values[1,0, 0] |
big_values au format DINT[2,2,2]
Exemple de tableau tridimensionnel à 8 éléments dont le type est DINT.
Bit | 31 0 |
Allocation de données 1 | big_values[0,0,0] |
Allocation de données 2 | big_values[0,0,1] |
Allocation de données 3 | big_values[0,1,0] |
Allocation de données 4 | big_values[0,1,1] |
Allocation de données 5 | big_values[1,0,0] |
Allocation de données 6 | big_values[1,0,1] |
Allocation de données 7 | big_values[1,1,0] |
Allocation de données 8 | big_values[1,1,1] |
Vous pouvez modifier les dimensions du tableau pendant la programmation hors ligne sans perdre les données d'étiquette. Vous ne pouvez pas modifier les dimensions du tableau pendant la programmation en ligne.
Fournir une réponse