Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 Programmazione Assembly: procedure (2) Convenzioni di uso dei registri Utilizzo.

Slides:



Advertisements
Similar presentations
Procedure call frame: Hold values passed to a procedure as arguments
Advertisements

Una didattica inclusiva Alunni stranieri ad alto potenziale cognitivo (GATE, febbraio 2015)
PROVINCIA DI FIRENZE Servizio di preselezione on line all’interno dei Servizi per l’Impiego della Provincia di Firenze.
Lo scenario Cresce l’occupazione femminile, non cambia lo svantaggio delle donne: nelle opportunità, nella retribuzione, nella carriera… Continua la resistenza.
La Genetica La scienza dell’ereditarietà. La Genetica In che modo il patrimonio genetico è trasmesso alle nuove cellule che devono sostituire quelle che.
MEMBRANA PLASMATICA - MEMBRANE DEGLI ORGANELLI COMPOSIZIONE: bistrato fosfolipidico contenente enzimi, recettori, antigeni; proteine integrali ed estrinseche.
Cloud informatica V anno. Sistemi informativi e basi di dati.
1 Attività materiali IAS 16, 23 e 40 1 Prof. Fabrizio Di Lazzaro Ordinario di Economia Aziendale Università “Luiss Guido Carli” LUISS Guido Carli AA 2012/2013.
È un organo di senso con 2 funzioni: - percepire i suoni; - raccogliere informazioni riguardo ai movimenti per farci mantenere l’equilibrio. È diviso.
TRATTAMENTO DELLE TACHIARITMIE ATRIALI E PREVENZIONE DELLA MORTE IMPROVVISA NELLA MIOCARDIOPATIA IPERTROFICA Antonio De Simone Casa di Cura San Michele,
1 Protezione del Patrimonio Convegno Unione Industriali Torino, 16 ottobre 1.
PRESENTE PASSATO FUTURO Simple PastSimple Present Present Perfect PRESENT PERFECT.
Gli insiemi N e Z I numeri naturali sono quelli che formano l’elenco illimitato e a tutti noto I numeri naturali ….. L’insieme N si può.
Allineamenti Multipli Problema Durante l’evoluzione i residui importanti per il mantenimento della struttura e della funzione sono conservati. Come riconoscere.
Comune di San Donato Milanese … marzo This information was prepared by Amsa and it is not to be relied on by any 3rd party without Amsa’s prior.
LE CASETTE DA GIARDINO DI CASETTE ITALIA CASETTE DA GIARDINO IN PVC - PLASTICA Casette Italia, Casette Italia, da 10 anni sul mercato italiano, propone.
4. Codifica binaria dell’informazione Informatica - CDL in Ingegneria Industriale- A.A Ing. Simona Colucci.
© 2016 Giorgio Porcu - Aggiornamennto 19/04/2016 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Il Sistema Operativo Concetti di Base.
Giuseppe Pelagatti 8 giugno 2011 Il modello GeoUML e gli strumenti Catalogue e Validator nell’Interscambio tra DBTL e DBTR.
IL PARLAMENTO.  Il Parlamento della Repubblica Italiana è l'organo costituzionale che, all'interno del sistema politico italiano, è titolare della funzione.
SAMUEL BECKETT – PETER HANDKE Relazione tra il Teatro dell’Assurdo e il teatro di Handke CANDIDA MASTROPAOLO.
Irc: Concordato e Intesa Sergio Cicatelli Corso di legislazione scolastica / 11.
Lezione n° 4 - Problemi di Programmazione Matematica - Problemi Lineari e Problemi Lineari Interi - Forma Canonica. Forma Standard Prof. Cerulli – Dott.
Elementi di logica matematica. Prof. Ugo Morra Programma Operativo Nazionale Scuola “Competenze per lo sviluppo” Fondo sociale europeo 2009/2010 Liceo.
TESI ALL ESTERO. Le borse di studio per tesi di laurea all’estero sono benefici economici che Sapienza mette a disposizione degli studenti iscritti ai.
Corso di STRATEGIE D’IMPRESA Corso di Strategie d’Impresa – Prima Unità Didattica Corso di Strategie d’Impresa * * * * * Professor Andrea Lanza Anno Accademico.
In molti sistemi laser si riesce ad ottenere una amplificazione nel mezzo attivo di solo qualche % per metro. Per evitare l’uso di un mezzo attivo di molti.
Corso di economia Aziendale Presentazione del corso Prof. Luciano Marchi - Prof. Simone Lazzini Dipartimento di Economia e Management Università di Pisa.
INTRODUZIONE Progettazione di sistemi multimediali Laboratorio UniMC al digitale U NIVERSITÀ DEGLI S TUDI DI M ACERATA D IPARTIMENTO DI S CIENZE P OLITICHE,
STATI DI AGGREGAZIONE DELLA MATERIA. Gli aspetti macroscopico, microscopico e particellare della materia La materia è tutto ciò che possiede una massa.
DISCIPLINE INFERMIERISTICHE 2 MED/45 Scienze Infermieristiche generali, cliniche e pediatriche  Obiettivi generali L’insegnamento ha lo scopo di fornire.
Un uomo chiede il divorzio dalla moglie accusandola d’infedeltà. Il primo e il secondo figlio sono di gruppo O e AB rispettivamente. Il terzo figlio,
Esami di stato secondo ciclo candidati con disabilità e DSA Conferenza di servizio per i Presidenti delle Commissioni d’Esame Dott.ssa Antonella Giannellini.
MODULI FORMATIVI 2015 questionario di soddisfazione studenti.
Cinetica chimica E’ la disciplina che studia la velocità e il meccanismo delle reazioni chimiche Dalle caratteristiche termodinamiche dei reagenti e dei.
Visita alla fattoria Attività integrativa al progetto di Educazione Alimentare Scuola Primaria di Ossimo Superiore, Classi I, II, III, IV, V.
La scrittura del saggio breve dall’analisi del tema e della documentazione alla pianificazione alla stesura alla revisione © VITALIANO PASTORI - APRILE.
Copyright © 2006 Zanichelli editore Capitolo 7 La fotosintesi.
STORIA (classe 4^ B Fontanarossa) CIVILTA’: significato del concetto attraverso l’ acrostico della parola Con Intelligenza Viveva Imparando L’ uomo Tanti.
Tu, chi dici che io sia? Dalla risposta dipendono: l'orientamento della vita, le scelte di ogni giorno, la pace del cuore, il nostro destino eterno.
MAESTRA….MA QUESTA LIM E’ LA LIMOUSINE DELLE LAVAGNE!!! Thomas, 7 anni, classe 2B.
“Tutto quello che avete fatto a uno solo di questi miei fratelli più piccoli, l’avete fatto a me” (Mt 25,40). Parola di Vita Aprile 2016.
Testo di Loreta Gregorutti Disegni by Edo A cura di
1 Studente: Lafronza Luciano Tutor aziendale: Lumini Rossella RICERCA E SINTESI SENTENZE.
Misurando la radioattività naturale Vera Montalbano 1,3, Antonella Porri 2,3 1 Dipartimento di Scienze Fisiche, della Terra e dell’Ambiente, Università.
Concetti di base Modulo B.2. Dati B.2.1 Qualsiasi applicazione informatica gestisce ed elabora dati Dati interni (risultato di una elaborazione) I/O da.
BILANCIO PARTECIPATIVO Il Bilancio partecipativo è un processo di democrazia partecipata finalizzato alla promozione della cittadinanza attiva e basato.
S ERVIZIO F ORMAZIONE, A LTA F ORMAZIONE E F INANZIAMENTI E STERNI D. Ferrucci e G. Leoni ISTRUZIONI PER L’USO COME INSERIRE PROPOSTE di CORSI NEL DATABASE.
 Il termine Trojan è da attribuirsi al cavallo di troia, che nasconde il suo vero fine ovvero quello di indurre l’utente a eseguire il programma. In.
I BAMBINI DISABILI E L’ASSISTENZA DOMICILIARE. Carta per i diritti dell’infanzia e dell’adolescenza Art.6 Tutti dovrebbero riconoscere che hai IL DIRITTO.
Lo sviluppo dell'embrione, a partire dallo stadio di zigote fino al parto, o alla schiusa, viene studiato da una branca della biologia EMBRIOLOGIA.
“architettura degli interni- D” prof. arch. Nicola Flora “Ogni gesto - anche quello del disegnare - è carico di storia, di memoria inconscia, d’incommensurabile.
ITS Luca Pacioli Progetto “1x1” Un computer per ogni studente Progetto “Eppur si muove” Didattica Laboratoriale Nuvola su Google Apps - ITS Luca Pacioli.
CRESCERE Camminare verso la maturità umana e cristiana.
IL REGNO È IN MEZZO A NOI FIGLIO, QUELLO CHE È MIO È TUO IL REGNO È IN MEZZO A NOI LA CIMA del cammino Quaresimale FIGLIO, QUELLO CHE È MIO È TUO Con.
Presentazione dati “Questionario mobilità Bologna" 02/02/201 6.
+ Gestire la persistenza Nicolò Sordoni. + Meccanismi di persistenza dei dati In Windows Phone, come negli altri ambienti, abbiamo tre soluzioni principali.
Controllo di batterie in economia #Wire15 Workshop Impresa, Ricerca, Economia Dr Francesco Frau
Identità ed equazioni DEFINIZIONE. Si dice identità un’uguaglianza di due espressioni (di cui almeno una letterale) che è verificata da qualunque valore.
Laboratorio 2 A cura di … (Lombardia Informatica) Mercoledì 1 giugno 2011Milano, Direzione/Ruolo Area Sistemi Terrioriali/Project Leader Servizi locali.
CLUB ALPINO ITALIANO OTTO TAM EMILIA ROMAGNA - Bosco Chiesanuova(VR) : 4-5 ottobre 2014 Agricoltura & Montagna - Realizzazione Ricerca e Documentario Voci.
Norma e normalità nei Disability Studies
“ Convenzione ai sensi dell’art. 30, DLgs. N. 267/2000, tra il Comune di Reggio nell’Emilia e altri Enti Locali, per la negoziazione unitaria delle condizioni.
POR TOSCANA Obiettivo RAPPORTO FINALE DI ESECUZIONE POR Toscana CRO FSE CdS 15 giugno 2010.
In un’economia di mercato:
Marzo 2010www.eurodesk.it1 Sviluppato in Italia Rete europea per la diffusione di informazioni sui programmi in favore della gioventù promossi e/o organizzati.
29/06/2016 Servizi Postali01/03/ Focus Raccomandata1 Presentazione alle OOSS Milano 22 / 03 / 2011.
1 IL RIVENDITORE DEL FUTURO O PEN S OURCE M ANAGEMENT.
Un uomo aveva quattro figli. Egli desiderava che i suoi figli imparassero a non giudicare le cose in fretta, per questo, invitò ognuno di loro a fare.
Sogg. + will/ ’ll + forma base del verbo She will come to the party
Presentation transcript:

Corso di Laurea in Informatica Architettura degli elaboratori a.a Programmazione Assembly: procedure (2) Convenzioni di uso dei registri Utilizzo della memoria Procedure innestate Uso dello stack

Convenzioni assembly: nomi e usi dei registri Nome SimbolicoNumeroUso $zero0Costante 0 $at1Assembler temporary $v0-$v12-3Functions and expressions evaluation $a0-$a34-7Arguments $t0-$t78-15Temporaries $s0-$s716-23Saved Temporaries $t8-$t924-25Temporaries $k0-$k126-27Reserved for OS kernel $gp28Global pointer $sp29Stack pointer $fp30Frame pointer $ra31Return address A.A ASM(1)2 Appendice A Hennessy-Patterson Sez. A.6 Usati da assembler, compilatore, sistema operativo Secondo specifiche convenzioni …da trattare con cautela se si programma in assembly!!!

Registri temporanei “salvati” e “non salvati” A.A Procedure (2)3 Se una procedura usa registri, cosa succede del contenuto lasciato nei registri dal chiamante? Convenzioni: registri $s e $t CONVENZIONI su uso dei registri $t e $s I registri $t (“temporary”) non sono salvati dalla procedura Il chiamante non si può aspettare di trovare immutati i contenuti dei registri $t dopo una chiamata a procedura I contenuti dei registri $t devono essere salvati dal chiamante prima della chiamata a procedura I registri $s (“saved”) sono salvati dalla procedura Il chiamante ha il diritto di aspettarsi che i contenuti dei registri $s siano immutati dopo una chiamata a procedura Se la procedura usa i registri $s deve salvarne il contenuto all’inizio e ripristinarlo prima del ritorno Dove salvare il contenuto dei registri $s? Uso dello stack

Procedure innestate Procedure “foglia” e “non foglia” Una procedura foglia NON chiama altre procedure Una procedura non foglia chiama altre procedure Cosa succede se una procedura ne chiama un’altra? Si perde il contenuto di $ra della prima chiamata????? Procedure recursive???? Bisogna che una procedura “non foglia” salvi il contenuto di $ra e lo ripristini prima del ritorno Dove salvare il contenuto dei registri $s? Uso dello stack A.A Procedure (2)4

Convenzioni di uso della memoria Convenzioni standard utilizzate da compilatori, assemblatori, linker...e programmatori Appendice A Hennessy-Patterson sez. A5 Fig. A.5.1 A.A Procedure (2)5

Uso dello stack (complessivo) A.A Procedure (2)6 Parametri oltre i primi 4 (che sono Passati nei registri) Appendice A Hennessy-Patterson sez. A5 Fig. A.5.1 Nelllo stack viene allocato spazio pert tutti i dati “locali” Il cui “lifetime” è limitato all’esecuzione della procedura $sp viene modificato all’inizio della procedura e ripristinato alla fine. Viene usato come registro base per accedere ai dati locali

Uso dello stack (solo salvataggio registri) Cosa fa la procedura? “Alloca” spazio nello stack Decrementa $sp per lasciare in stack lo spazio necessario al salvataggio (1 word per ciascun registro da salvare) (ricordare che lo stack cresce “verso il basso” Salva $ra Salva eventuali altri registri usando $sp come registro base..... Ripristina i registri Incrementa $sp per riportarlo alla situazione iniziale Jr $ra (ritorno dalla procedura) Approfondimenti: Parametri passati in stack “Procedure frame”: l’insieme dei dati locali ($fp) Come indirizzare variabili locali? (per fortuna ci pensa il compilatore...) Uso dello stack per valutazione di espressioni etc. Per capire bene: procedure recursive (cfr. esempi) A.A Procedure (2)7