Chap - PowerPoint PPT Presentation

About This Presentation
Title:

Chap

Description:

Chap tre 5 SDL donn es – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 27
Provided by: jyz7
Category:

less

Transcript and Presenter's Notes

Title: Chap


1
Chapître 5
  • SDL données

2
Contenu
  • (1) Données simples en SDL
  • (2) Constructeurs de types de données

3
(1) Données simples en SDL
SIGNAL Cid(integer), Digit(integer) DCL no_dig
integer DCL cardid integer
4
Déclaration de variables
  • DCL est le mot clé introduisant une déclaration
    de variables. Après le(s) nom(s) de variable, il
    y a le nom du type (aussi appelé sort en SDL)
    de la variable.
  • Il y a des types prédéfinis Boolean, Character,
    Charstring, Integer, Natural, et Real.

5
Mise à jour des variables
  • Linitalisation peut être définie avec la
    déclaration (voir ci-haut)
  • Pendant une transition, les variables peuvent
    être affectées de nouvelles valeurs (voir à
    droite).
  • Une variable est visible dans le processus où
    elle est déclarée.
  • La valeur dune variable peut être exportée et
    devient alors visible à dautres processus qui
    limportent (voir ci-dessous).

6
Le symbole de tâche TASK
  • Contient normalement des affectations peut aussi
    contenir dautres actions formellement définies
    (comme lactivation dune horloge) ou une action
    décrite en français ou autre langue.

7
Signal dentrée avec de paramètres (données)
  • Les valeurs des paramètres doivent être affectées
    à des variables pour usage futur (voir
    ci-dessous), sinon elles sont perdues.
  • On ne peut pas accéder aux paramètres dun signal
    dans la file dentrée, ni après la consommation
    du signal par un symbole dentrée.

8
Exemple le processus PanelControl (ii)
9
Symbole de décision
  • Utilisé pour choisir différentes alternatives
    lors de lexécution dune transition.

10
(No Transcript)
11
Le processus PanelControl (iii)
  • À remarquer
  • Initialisation
  • DCL Trial_no Integer 0
  • Symbole de sortie avec indication du nom du
    processus de destination

12
(2) Constructeurs de types de données
  • Comme la plupart des langages de programmation,
    SDL a des types de données pré-définis et des
    constructeurs qui peuvent être utilisés par le
    concepteur pour définir des types de données
    nouveaux.
  • En SDL, un type de données est appelé sort.
  • Associés avec les types, il y a des opérateurs
    (si vous voulez  methods ) qui peuvent être
    utilisés avec des types de données particuliers.
  • Des exemples sont donnés dans la suite.

13
Opérateurs généraux
  • Pour chaque type pré-défini ou défini par une
    définition de type du concepteur, les opérateurs
    suivants sont automatiquement définis
  • Affectation
  • Tester légalité
  • Tester la non-égalité /

14
Des opérateurs peuvent être utilisés en notation
préfixe ou in-fixe
  • Integer,Integer -gt Integer
  • num Character -gt Integer
  • I I1
  • N num(X)
  • I (I,1)

15
Boolean
  • "NOT" Boolean -gt Boolean
  • "AND" Boolean, Boolean -gt Boolean
  • "OR" Boolean, Boolean -gt Boolean
  • "XOR" Boolean, Boolean -gt Boolean
  • "gt" Boolean, Boolean -gt Boolean

16
Character
  • "lt" Character, Character -gt Boolean
  • "lt" Character, Character -gt Boolean
  • "gt" Character, Character -gt Boolean
  • "gt" Character, Character -gt Boolean
  • Num Character -gt Integer
  • Chr Integer -gt Character

17
Charstring
  • MkString Character -gt Charstring
  • Length Charstring -gt Integer
  • First Charstring -gt Character
  • Last Charstring -gt Character
  • "//" Charstring, Charstring -gt Charstring
  • SubString Charstring, Integer, Integer
  • -gt Charstring

18
Duration
  • "" Duration, Duration -gt Duration
  • "-" Duration -gt Duration
  • "-" Duration, Duration -gt Duration
  • "" Duration, Real -gt Duration
  • "" Real, Duration -gt Duration
  • "/" Duration, Real -gt Duration
  • "gt" Duration, Duration -gt Boolean
  • "lt" Duration, Duration -gt Boolean
  • "gt" Duration, Duration -gt Boolean
  • "lt" Duration, Duration -gt Boolean

19
Time
  • "" Time, Duration -gt Time
  • "" Duration, Time -gt Time
  • "-" Time, Duration -gt Time
  • "-" Time, Time -gt Duration
  • "lt" Time, Time -gt Boolean
  • "lt" Time, Time -gt Boolean
  • "gt" Time, Time -gt Boolean
  • "gt" Time, Time -gt Boolean

20
Integer, Natural
  • "-" Integer -gt Integer
  • "" Integer, Integer -gt Integer
  • "-" Integer, Integer -gt Integer
  • "" Integer, Integer -gt Integer
  • "/" Integer, Integer -gt Integer
  • "mod" Integer, Integer -gt Integer
  • "rem" Integer, Integer -gt Integer
  • "lt" Integer, Integer -gt Boolean
  • "gt" Integer, Integer -gt Boolean
  • "lt" Integer, Integer -gt Boolean
  • "gt" Integer, Integer -gt Boolean
  • Float Integer -gt Real
  • Fix Real -gt Integer

21
Real
  • "-" Real -gt Real
  • "" Real, Real -gt Real
  • "-" Real, Real -gt Real
  • "" Real, Real -gt Real
  • "/" Real, Real -gt Real
  • "lt" Real, Real -gt Boolean
  • "gt" Real, Real -gt Boolean
  • "lt" Real, Real -gt Boolean
  • "gt" Real, Real -gt Boolean

22
Constructeur de nouveaux types
  • Les notations NEWTYPE nom-du-type ENDNEWTYPE
    nom-du-type et Syntype nom-du-type
    type-de-base Endsyntype peuvent être
    utilisées pour définir de nouveaux types (voir
    exemples plus loin)
  • Subrange dun type de base (comme en Pascal)
  • Type dénumération des valeurs (comme en Pascal)
  • Structure
  • Tableau
  • STRING dun type quelconque
  • SET dun type quelconque
  • Type abstrait Lidée dun type abstrait est
    comme une classe OO avec interface défini et la
    définition de propriétés concernant le résultats
    dexécution des méthodes (sans donner une
    implantation). En SDL, des mots clé OPERATORS et
    AXIOMS sont prévus à cet effet, mais cette
    notation est rarement utilisée et mal supportée
    par les outils.

23
Définition dun Subrange
  • syntype example2 integer
  • constant 010
  • endsyntype

24
Définition dun type dénumération
  • newtype KeyPosition
  • literals Off, Stand_by, Service_mode
  • endnewtype

25
Définition dune structure
  • Défintion dun type de structure
  • NEWTYPE Code STRUCT
  • id Integer
  • password Charstring
  • ENDNEWTYPE
  • Utilisation
  • DCL C Code
  • C!id 4564
  • C!password 'zzzzz'

26
Définition de tableaux
  • Le générateur ARRAY prend deux paramètres
  • Le type de lindice
  • Le type des élements
  • Il ny a pas de restriction sur les types qui
    peuvent être utilisés comme indice.
  • Exemple
  • NEWTYPE IntXChar Array(Character,Integer)
  • ENDNEWTYPE IntXChar
  • / Declaration d'un tableau / DCL chrval
    IntXChar
  • / Utilisation dans une TASK / chrval('X')
    chrval('Y') - 1

27
Utilisation de structures et de tableaux
Write a Comment
User Comments (0)
About PowerShow.com