12.07.2015 Views

Spis treœci - Patrz

Spis treœci - Patrz

Spis treœci - Patrz

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Instrukcje dozorowane w obrębie instrukcji alternatywy można parametryzować wnastępujący sposób:(k:l..N) dozór zależny od k -> instrukcje zależne od kTaki zapis jest równoważny wypisaniu N odpowiednich dozorów i N następujących ponich ciągów instrukcji, w których w miejsce zmiennej związanej k jest wstawiony numerkolejny dozoru.Wykonanie instrukcji alternatywy polega na równoczesnym obliczeniu wszystkich jejdozorów, niedeterministycznym wybraniu jednego dozoru spośród tych, które są spełnione iwykonaniu następującego po tym dozorze ciągu instrukcji.Jeśli w instrukcji alternatywy żaden dozór nie jest spełniony, uważa się to za błądpowodujący przerwanie wykonania programu.Tak więc instrukcja [x>0 -> x:=l] spowoduje błąd, gdy x < O (jeśli zawsze x > O, nie masensu używania instrukcji alternatywy). Efekt instrukcji pascalowej postaciif w then I można uzyskać w CSP pisząc[ w -> I [] not w -> skip]PętlaInstrukcję pętli zapisuje się dostawiając gwiazdkę przed instrukcją alternatywy. Pętla wCSP ma więc następującą postać:*[D1 -> II [] D2 -> 12 [] ...[] Dn -> In]Wykonuje się ją tak długo, aż nie będzie spełniony żaden z jej dozorów. Jeśli w danej chwilijest spełniony więcej niż jeden dozór, podobnie jak w instrukcji alternatywy,niedeterministycznie jest wybierany jeden z nich i wykonuje się następującą po nim instrukcjędozorowaną.Wykonanie równolegleRównolegle wykonanie kilku ciągów instrukcji zapisuje się w CSP następującoI1 || I2 || ... || InKomentarzeKomentarze w CSP poprzedzamy słowem kluczowym comment i kończymyśrednikiem. (Warto w tym miejscu zauważyć, że w CSP występują tylko dwa słowakluczowe: comment i skip.)5.1.4 SpotkaniaW CSP procesy komunikują się ze sobą w sposób synchroniczny za pomocą instrukcjiwejścia-wyjścia. Instrukcja wyjścia postaci B!X(yl, ... ,yn) w procesie A oznacza, że proces Achce wysłać do procesu B ciąg wartości wyrażeń y1, ..., yn, identyfikowany nazwą X. Aby byłoto możliwe, w procesie B musi znajdować się dualna instrukcja wejścia A?X(z1, . . . ,zn), przyczym z1, . . . ,zn są zmiennymi odpowiednio tego samego typu co wyrażenia y1, ..., yn.110

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!