lides

download lides

If you can't read please download the document

description

lid

Transcript of lides

Sintaxa limbajului pentru descriptori - LIDES - Descriptorul este format dintr-o succesiune de linii care pot fi expresiide calcul, instructiuni conditionale, instructiuni speciale sau comentarii.O linie care are ca prim caracter '!' este comentariu. Comentariile suntignorate in timpul evaluarii descriptorului. Expresiile de calcul siinstructiunile speciale pot fi precedate optional de: - o eticheta numerica (maxim 5 cifre). - o instructiune conditionala (DACA nestructurat).In cazul in care pe aceiasi linie sunt necesare si o eticheta si oinstructiune conditionala eticheta se pune prima. Instructiunile conditionale --------------------------- Instructiunile conditionale sunt de doua tipuri: A. DACA nestrucurat. Sintaxa este: DACA (expr_logica) instructiune Este permisa o singura instructiune. Evaluarea se face in modul urmator: - Daca expr_logica e adevarata se executa instructiue. - Daca expr_logica e falsa se trece la linia urmatoare (se ignora instructiune) B. DACA structurat. Sintaxa este: DACA (expresie_logica) ATUNCI instructiuni ... SFDACA Evaluarea se face in modul urmator: - Daca expresie_logica e adevarata se executa grupul de instructiuni aflate intre ATUNCI si SFDACA. - Daca expresie_logica e falsa evaluarea continua cu linia de dupa SFDACA. sau: DACA (expresie_logica) ATUNCI instructiuni ... DACANU instructiuni ... SFDACA Evaluarea se face in modul urmator: - Daca expresie_logica e adevarata se executa grupul de instructiuni aflate intre ATUNCI si DACANU apoi continua cu linia de dupa SFDACA. - Daca expresie_logica e falsa se executa grupul de instructiuni aflate intre DACANU si SFDACA apoi continua cu linia de dupa SFDACA. Instructiuni speciale --------------------- Instructiuni speciale sunt: A. SALT Instuctiunea de control al fluxului de executie este de forma 'SALT ' Urmatoarea linie executata va fi cea pe care se gaseste eticheta . B. IESIRE Terminarea (normala) a evaluarii descriptorului se poate realiza cu instructiunea 'IESIRE'. Daca nu apare aceasta instructiune evaluarea se termina dupa ce s-a executat ultima linie a descriptorului. C. STOP Abandonarea calculului se realizeaza cu instructiunea 'STOP'. Aceasta poate fi urmata optional de un mesaj. In acest caz mesajul va fi afisat pe ecran. (Sintaxa: STOP "Acest mesaj va fi afisat pe ecran") D. EXEC Executia unui program executabil se poate face cu instructiunea 'EXEC' Sintaxa: 'EXEC comanda'. Prin 'comanda' se intelege numele programului si evetual argumentele corespunzatoare. Este posibil ca programul executat sa comunice cu descriptorii asociati devizului sau desenului prin intermediul vectorilor si matricilor. Ultima linie din descriptor nu poate fi o instructiune speciala. Expresii de calcul ------------------ Expresiile de calcul sunt de forma '='. Intr-oexpresie apar operanzi, operatori si apeluri de functii intrinseci. Operanziipot fi variabile, vectori (mai precis o componenta a unui vector) sau matrici(componenta a unei matrici). Operatori --------- LIDES-ul recunuaste urmatorii operatori aritmetici: ---------------------------------------------------------------------------- Operator Semnificatie Exemplu Explicatii ---------------------------------------------------------------------------- ~ tilda (case) ~a Daca a este 0 ~a este 1; daca a e diferit de zero ~a este 0. - minus unar -a minus a ^ putere a ^ b a ridicat la puterea b # radical a # b radical de ordinul b din a * inmultire a * b a inmultit cu b / impartire a / b a impartit la b + adunare a + b a plus b - scadere a - b a minus b ---------------------------------------------------------------------------- Se admit mai multe nivele de paranteze. Operatorii au fost listati inordinea evaluarii. LIDES-ul recunuaste urmatorii operatori logici: ---------------------------------------------------------------------------- Operator Semnificatie Exemplu Explicatii ---------------------------------------------------------------------------- > mai mare a > b adevarata daca a mai mare decit b < mai mic a < b adevarata daca a mai mic decit b >= mai mare sau egal a > b adevarata daca a mai mare decit b