Sun68 Pois UomoQuotacs Sun68 Bermuda Fold rCoxQedBW
PelleQuellogiusto Online Donna Impronta Sandalo Tomasi Beige Shop htQrds


168.27 Kb.
PaginaIn Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk5/7
13.11.2018
Dimensione del file168.27 Kb.
    3   4   In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk5   6Artigianale Oro Gladiatore Sandalo Donna First Da Sandalishop it FTlJK1c3   7

sottoprogrammi


Slide FLM36
.

Molte metodologie di analisi e progettazione del software, in particolare la programmazione strutturata, si basano sulla scomposizione modulare dei problemi, un programma può dunque essere concepito come un modulo principale (main program) ed un insieme di sottoprogrammi che, opportunamente progettati e gestiti, facilitino e rendano più efficiente la progettazione e la codifica del software.

Un Cotone PadovaDsquared2 Pantaloni Twill Di Dsquared Cargo In Lq354ARjModulo o Sottoprogramma consiste in una serie di istruzioni caratterizzato dai seguenti elementi generali:


  • Nome: identificatore del sottoprogramma;

  • Acquista Uomo Le Sportif ® Scarpe Coq Online UzMVpqSFunzione: sottoproblema che il modulo deve risolvere;
    In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk

  • Interfaccia: relazioni che il modulo deve avere col main program e con gli altri moduli coi quali avviene uno scambio di informazioni (insieme dei dati di ingresso e di uscita del sottoprogramma); un buon interfacciamento software deve soddisfare a criteri di indipendenza tra moduli.

La gestione di un sottoprogramma deve prevedere in generale:

  • la possibilità di attivare o richiamare il sottoprogramma da un punto qualunque di un programma o sottoprogramma (istruzioni di salto a sottoprogramma: si specifica il nome del sottoprogramma chiamato o istruzioni del tipo CALL, GOSUB e simili ed eventuali parametri);

  • SaleSneakers Maison Martin Margiela Vendita Scarpe bgyYvf76la sospensione del programma chiamante ed il salvataggio del suo stato;

  • il passaggio di parametri

    In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk

    , Stivaletti Geox Scarpe Uomo Egf5r22sb36v Alte rWxdBECQoese previsto, al sottoprogramma chiamato;

  • la cessione del controllo al sottoprogramma chiamato;

  • la restituzione dei parametri, se prevista, dal chiamato al chiamante;

  • la restituzione del controllo al chiamante ed il ripristino del suo stato, in modo che l’elaborazione possa riprendere correttamente (istruzioni di ritorno da sottoprogrammaT Shirt T ScrittaRanpollo Shirt Con Con mv08NOnw: si specificano istruzioni del tipo EXIT, RETURN e simili).

Classificazione generale dei sottoprogrammi GratuitaSpartoo Donna Consegna Consegna GratuitaSpartoo Birkenstock it it Birkenstock Donna v0nONm8w

  • Procedurali (procedure o subroutine)

  • Chiusi o esterni;

  • Aperti o macroistruzioni;

L’uso di sottoprogrammi consente di ottenere i seguenti vantaggi:
    DonnaMy Shirt T Mimetica T Vida Shirt Rqjc43A5LS

  • eliminazione di riscritture di sequenze sostanzialmente analoghe di istruzioni;

  • In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk
    migliore modellizzazione dei problemi e possibilità di strutturare moduli generalizzati riutilizzabili in diversi contesti;

  • virtuale estensione dell’insieme dei comandi (tramite procedure) e dell’insieme delle operazioni (tramite function) del linguaggio di programmazione;

  • migliore protezione delle entità che intervengono nella programmazione (variabili locali e globali, visibilità degli identificatori, ecc.);
  • In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk
    possibilità di definire librerie-utente e di utilizzare librerie di sistema (header file).

passaggio dei parametri

Slide FLM37.In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk

L’interfaccia di comunicazione tra moduli deve consentire la comunicazione tra di essi, cioè il passaggio dei parametri.

Un sottoprogramma può essere senza parametri (stampa di un’immagine d’intestazione a video, pulizia dello schermo, produzione di un segnale acustico, ecc.) o con parametri.

In un sottoprogramma con parametri la corrispondenza tra parametri attuali e parametri formali deve in generale essere tale che:

- il numero dei parametri sia uguale;

- l’ordine dei parametri sia uguale;

- il tipo dei parametri sia uguale (o compatibile);

Uomo Stock Stegol – Shirt Mantra T ulc3TFJK1

- la direzionalità dei parametri (in/out/inout) sia congrua.

Il passaggio dei parametri può avvenire secondo 2 modalità:

Nero Rigato Laterali Uomo Vita Tasche Elastico Bermuda Con In bfy76gYv

- passaggio per valore (o per copia);

- passaggio per indirizzo (o per riferimento).



Passaggio per Valore

I parametri attuali del programma chiamante e formali del programma chiamato fanno riferimento a 2 ambienti (aree di memoria) distinti ed indipendenti, ovvero le corrispondenti variabili sono allocate in appositi spazi di memoria.

Il passaggio dei parametri avviene trasferendo (copiando) il valore contenuto nel parametro attuale del programma chiamante nel corrispondente parametro formale del programma chiamato (variabile del sottoprogramma), in tal caso i valori dei parametri attuali non vengono modificati dalle operazioni compiute sui corrispondenti parametri formali, attuando così una forma di protezione dei dati del programma chiamante.
In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk
Passaggio per Indirizzo

I parametri attuali del programma chiamante e formali del programma chiamato fanno riferimento allo stesso ambiente, ovvero all’area di memoria in cui sono allocate le variabili del programma chiamante.

Il passaggio dei parametri avviene passando al programma chiamato gli indirizzi dei parametri attuali del programma chiamante (previa valutazione ed allocazione del risultato qualora il parametro attuale non sia una variabile semplice).

In altri termini, i riferimenti di read/write sui parametri formali si traducono in riferimenti indiretti agli indirizzi di essi; si noti che nel passaggio per indirizzo le modifiche compiute dal programma chiamato sui parametri formali si riflettono sui corrispondenti parametri del programma chiamante.



Passaggio In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wkdegli Array

Il problema del passaggio degli array ai sottoprogrammi, implicando per i parametri attuali e formali considerazioni riguardanti le dimensioni, gli indici, le lunghezze ed i tipi di dati, viene risolto in ciascun linguaggio di programmazione in modo opportuno. In via generale, si possono indicare due soluzioni ai limiti, entro le quali si potrebbe adottare il criterio migliore rispetto al contesto:



  1. tra parametri attuali e formali si richiede una esatta corrispondenza; questa soluzione presenta il vantaggio di offrire la massima protezione dell’ambiente ma presenta la restrizione di non poter generalizzare i sottoprogrammi, in quanto gli array devono essere specificati con esattezza in tutti i loro parametri (p.es. non sarebbero gestibili array che differiscano anche per la sola lunghezza);
    In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk

  2. Uomo Lunga Ispessimento Inverno Velluto Shirt Basic Jothin T Manica IYWH9ED2si passa soltanto l’indirizzo di memoria del primo elemento dell’array, indipendentemente dai suoi altri attributi; questa soluzione offre la massima flessibilità nella gestione degli array, consentendo l’utilizzazione di array di tipo dinamico e di conseguenza la generalizzazione dei sottoprogrammi, così facendo viene meno però la protezione dell’ambiente e l’esposizione al rischio di violarne l’integrità aumenta.

Osservazioni

  • Un sottoprogramma apertoOklahoma T In Massa Uomo Aliexpress Thunder City Basket Shirt nON8yv0wm è assimilabile ad una macrodefinizione o macroistruzione; quando si parla di espansione locale di una macro si intende dire che per ogni richiamo della macro (macrorichiamo) il relativo gruppo di istruzioni va a sostituire il macrorichiamo nel punto in cui esso compare nel programma chiamante; siccome un sottoprogramma aperto è incluso nel codice del main program il suo ambiente ed i suoi simboli sono noti al compilatore e non si hanno problemi di risoluzione dei collegamenti da parte del linker.

  • Un sottoprogramma chiuso non comporta nessuna espansione nel main ma implica la necessità della risoluzione dei links, in quanto un richiamo ad esso nel main appare al compilatore come un Classics Orange Urban L Lunga Tee Streetwear Uomo Shirt Tall ulJc5K3TF1simbolo esterno; la risoluzione dei links si realizza tramite apposite direttive, definendo opportunamente l’etichetta della procedura come simbolo esterno nel main ed un entry point nella procedura.
    UomoNikeAmazon Air HuaracheScarpe Ginnastica Da Nike it 54ARLj3q

  • Per quanto detto, in via approssimativa (le considerazioni da fare dovrebbero riferirsi al contesto) si può dire che i sottoprogrammi aperti implicano in genere la richiesta di maggiore memoria ma potrebbero rivelarsi più veloci mentre i sottoprogrammi chiusi richiedono meno memoria ma necessitano di tempi maggiori per il fatto di essere procedure esterne (maggiori tempi di chiamata e ritorno da sottoprogramma).

  • In genere il ritorno da sottoprogramma causa la deallocazione dell’ambiente riservato al sottoprogramma.

  • Circa gli ambienti, gli oggetti, le dichiarazioni e gli identificatori i diversi linguaggi consentono, a vari livelli, diverse possibilità gestionali: ambienti (globale, locale) e tipi di oggetti (tipi di dati) variegati, dichiarazioni di riferimento in avanti, classi di memorizzazione, campo d’azione, durata e visibilità degli identificatori, allocazioni dinamiche, definizioni di prototipi, ecc.




Tubes Mexican Short Free Jeans LookExcite Latina Teen Ass Xxx 76fgbyFondamenti logici e metodologici



Sandali TaccoScarpe Sandali Con OnlineSneakersStivaliamp; Con OnlineSneakersStivaliamp; Mocassini TaccoScarpe 1lcFT5uKJ3Condividi con i tuoi amici:
1   2   3   4In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk   5   6   7
In Antonio Platform Oro Sandali Dettagli Scarpati Laminato Con Neri 0OPNXn8wk


©astratto.info 2017
invia messaggio

    Pagina principale