MagPI 11 Page 28

De Le French MagPi
Aller à : Navigation, rechercher

Sommaire

Une initiation aux types de données de Charm

DIFFICULTÉ : AVANCÉE


Une initiation aux types de données de Charm

Les ordinateurs peuvent de manière précise et rapide gérer, manipuler et transformer des informations selon des jeux d'instructions codées, regroupés en systèmes d'exploitation et programmes. Dans cet épisode de la série Charm, nous verrons comment Charm définit et gère différents types de données utilisés pour représenter ces informations.


Types de données de base

Voici dans le tableau suivant les 4 types de données que Charm définit :

Mot-clé Taille (octets) Usage Exemple
boolean 1 Drapeaux logiques true
char 1 Caractères 'C'
int 4 Entiers -321
real 8(d) ou 12(e) Nombres réels 1.23e-7


Les booléens (boolean) sont des drapeaux vrais ou faux (true ou false) et ne requièrent en réalité qu'un bit de données. Il est possible d'en combiner 8 dans un char ou 32 dans un int en utilisant des opérateurs binaires. Cependant, par souci de simplicité et de performances, le compilateur ne les regroupe pas ensemble mais les stocke dans des octets distincts car c'est la plus petite unité de mémoire adressable par le CPU ARM.


Les valeurs char sont des caractères codés en ASCII. Certains ne sont pas imprimables et pour des raisons historiques sont qualifiés de caractères de contrôle, les plus connus étant : espace (32), tabulation (9), saut de ligne (10) et retour chariot (13).


Les valeurs int sont des nombres signés de 32 bits entre -2147483648 et 2147483647, les nombres négatifs ayant le bit de poids fort à 1.


Pour la gestion des réels, Charm emploie des nombres à virgule flottante double précision IEEE si le support VFP est activé, ou à précision étendue si l'émulateur de virgule flottante standard de RISCOS est utilisé.


Remarquez qu'en dépit de la perte de quelques décimales de fin, les opérations en virgule flottante sont bien plus rapides avec le support VFP car elles sont effectuées par le matériel et non par logiciel.



Constantes

Charm permet de nommer des constantes de types basiques grâce au mot-clé const. Par convention, le code source de la distribution Charm utilise des majuscules avec le souligné

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Boîte à outils