LABORATORIO DI SISTEMI
|
|
- Ugo Zanella
- 5 anni fa
- Visualizzazioni
Transcript
1 ALUNNO: Fratto Claudio CLASSE: IV B Informatico ESERCITAZIONE N : 2 LABORATORIO DI SISTEMI OGGETTO: 1) Scrivere un programma, in linguaggio Assembly, per una CPU Intel 8086, che sommi due numeri (var_1, var_2), nel registro accumulatore, e metta a 0000h la variabile var_3 se la somma è risultata uguale a 0000h; o metta la variabile var_3 a FFFFh se la somma è risultata diversa da 0000h. 2) Simulare il programma al PC. 3)Descrivere le istruzioni utilizzate. ALGORITMO INIZIO DICHIARA VARIABILI DA UTILIZZARE (var_1, var_2, var_3) INIZIALIZZA var_1 INIZIALIZZA var_2 SOMMA var_1 E var_2 SI SOMMA = = 0 NO var_3=0000h var_3=ffffh FINE 1
2 TITLE 8086 Code Template (for EXE file) ; AUTHOR Claudio Fratto ; DATE ********* ; VERSION 1.00 ; FILE flag_z.asm ; 8086 Code Template ; Directive to make EXE output: #MAKE_EXE# DSEG SEGMENT 'DATA' var_1 dw 0ff34h var_2 dw 00cbh var_3 dw 0000h FILE SORGENTE flag_z.asm DSEG ENDS SSEG SEGMENT STACK 'STACK' DW 100h DUP(?) SSEG ENDS CSEG SEGMENT 'CODE' ;******************************************* START PROC FAR ; Store return address to OS: PUSH DS MOV AX, 0 PUSH AX ; set segment registers: MOV AX, DSEG MOV DS, AX MOV ES, AX mov ax, var_1 mov bx, var_2 add ax, bx jz yes mov var_3, 1111h jmp stop yes: mov var_3, 0000h ; return to operating system: stop: RET START ENDP ;******************************************* CSEG ENDS END START ; set entry point. 2
3 TRACE TABLE PROGRAMMA ax bx var_1 var_2 var_3 Z var_1 dw FF34h FF34h var_2 dw 00CCh FF34h 00CCh var_3 dw 0000h FF34h 00CCh 0000h 0 mov ax, var_1 FF34h FF34h 00CCh 0000h 0 mov bx, var_2 FF34h 00CCh FF34h 00CCh 0000h 0 add ax, bx 0000h 00CCh FF34h 00CCh 0000h 1 jz yes mov var_3, 0000h 0000h 00CCh FF34h 00CCh 0000h 1 RET 0000h 00CCh FF34h 00CCh 0000h 1 MICROPROCESSORE AD ARCHITETTURA SEMPLIFICATA 3
4 RELAZIONE L esperienza effettuata in laboratorio si è articolata in due fasi: 1) la prima fase consisteva nel creare l algoritmo del problema da risolvere, per poi creare il file sorgente corrispondente, scritto in linguaggio Assembly; 2) la seconda fase consisteva nel compilare e simulare il programma sorgente attraverso l ambiente di simulazione (compilatore ed emulatore) Emu8086. L ARCHITETTURA DI UN MICROPROCESSORE Il microprocessore è una CPU integrata in un singolo chip. Esso contiene tutti quegli elementi che consentono ad una CPU di svolgere le sue funzioni. Gli elementi di una CPU si possono raggruppare in 3 categorie: 1) la ALU (Aritmetic Logic Unit) che consente al dispositivo di effettuare operazioni aritmetiche, quale l addizione, o le operazione logiche, tra i vari dati; 2) i registri, cioè quelle locazioni di memoria interne al dispositivo che svolgono dei compiti specifici; 3) l unità di controllo e di temporizzazione, che decodifica le istruzioni generando gli appositi comandi che la CPU deve effettuare. La sezione dei registri è composta da diverse locazioni di memoria, a seconda dell architettura del microprocessore, atte ad un compito ben definito: a) il registro IP (Istruction Pointer) è quel registro, contenente indirizzi di memoria, che svolge l operazione di puntare all indirizzo di memoria che contiene la prossima istruzione da eseguire; b) il registro IR (Istruction Register) è quel registro nel quale, durante la fase di fetch, viene caricato il codice dell istruzione che la CPU deve eseguire; c) il Program Counter, è quel registro che, contenendo indirizzi di memoria, regola la sequenza di esecuzione del programma. Inizialmente, esso contiene l indirizzo di memoria della prima locazione di memoria del programma; man mano che l esecuzione va avanti, dopo ogni operazione di fetch, esso viene incrementato per puntare alla locazione di memoria della prossima istruzione del programma; d) i registri accumulatori (Es. ax, bx), sono quei registri che, coinvolti in tutte le operazioni di calcolo che svolge la ALU (un operando della ALU è sempre un dato contenuto in un registro accumulatore), contengono in maniera temporanea ed in continuo aggiornamento dei dati; e) il registro MAR (Memory Address Register) è quel registro che realizza un interfaccia tra la CPU ed il bus indirizzi; f) i registri di segmento (Es. Code Segment; Data Segment; Stack Segment; Extra Segment), sono quei registri utilizzati dai microprocessori per realizzare delle particolari modalità di indirizzamento della memoria di sistema; g) il registro di stato, chiamato anche registro dei flag, è quel registro i cui singoli bit (flag) rappresentano una situazione particolare nella quale si trova la CPU. Esso è formato dal flag dello zero (Z), che viene posto ad 1 se il risultato di un operazione è uguale a 0; dal flag del segno (S), che viene posto ad 1 se il risultato di un operazione è negativo; dal flag del carry ( C) che viene posto ad 1 se il risultato di un operazione genera un riporto. 4
5 Come opera un microprocessore Un microprocessore è un dispositivo capace di compiere una serie di azioni elementari, una di seguito all altra, che sono contenute, sottoforma di codici binari, nell IR. Ogni microprocessore ha un proprio set di istruzioni (firmware); ciò sta a significare che da un microprocessore ad un altro i codici operativi di una stessa operazione sono diversi. Le istruzioni sono generalmente contenute in una memoria esterna alla CPU. Per questo motivo è necessario che esse debbano essere prima caricate e poi eseguite. Ciò è possibile grazie all unità di temporizzazione che è in grado di eseguire un istruzione in due fasi: 1) la fase di fetch, cioè quella fase in cui il microprocessore, attraverso le linee del bus indirizzi, riesce ad acquisire il codice dell istruzione da eseguire; 2) la fase di execute, cioè quella fase in cui il microprocessore decodifica e esegue l istruzione caricata nella fase di fetch. Il codice operativo dell istruzione caricato nella fase di fetch viene posto nell IR; una volta sistemato nel registro esso viene confrontato con i codici operativi del firmware del microprocessore: se esso viene riconosciuto si avvia la fase di execute dell istruzione caricata. Dopo esser stata eseguita l istruzione, vi è una nuova fase di fetch che va a caricare nell IR l istruzione memorizzata nella memoria nella locazione successiva a quella dell istruzione appena eseguita. Per far sì che nella fase di fetch si carichi la giusta istruzione (successiva a quella appena eseguita), cioè che il microprocessore sappia a che punto del programma in esecuzione si trovi, è necessario la presenza del Program Counter. CENNI TEORICI SUL LINGUAGGI DI PROGRAMMAZIONE I linguaggi di programmazione si possono classificare in diversi modi: a) il primo consiste nel campo applicativo per cui sono stati creati (Es. calcolo numerico, sistemi operativi, applicazioni gestionali); b) il secondo consiste nel tipo di paradigma di programmazione che viene supportato (Es. imperativo, logico, funzionale, orientato agli oggetti); c) il terzo consiste nel tipo di istruzioni offerte. Per quest ultimo criterio di classificazione i linguaggi di programmazione si suddividono in: 1) linguaggi a basso livello; 2) linguaggi ad alto livello. Questa suddivisione tiene conto del minore o maggiore livello di astrazione del linguaggio. I linguaggi a basso livello offrono delle istruzioni molto più vicine all hardware della CPU che ai programmatori; i linguaggi ad alto livello offrono delle istruzioni più vicine ai programmatori, cioè delle istruzioni complesse identificate da una parola chiave, che per essere eseguiti dall elaboratore devono essere prima compilati, che all hardware della CPU. I linguaggi a basso livello Il primo linguaggio attraverso il quale i programmatori potevano creare dei programmi era il linguaggio macchina, cioè quel linguaggio comprensibile alla CPU le cui istruzioni sono sequenze di 0 e di 1. Esso era molto complesso da utilizzare perciò si è passati ad un tipo di linguaggio il cui tasso di astrazione era più elevato: il linguaggio Assembly. Esso è un linguaggio a basso livello poiché è sempre più vicino all elaboratore che al programmatore, poiché le istruzioni sono quelle elementari che una CPU (alla quale sono strettamente legate) può svolgere (Es. operazioni aritmetiche, caricamento di dati in registri o celle di memoria, ecc.). Le istruzioni, che sono identificate con dei nomi simbolici, facilitano la vita ai programmatori perché i programmi risultano sia più leggibili sia meno complessi. 5
6 I linguaggio ad alto livello I linguaggi di programmazione ad alto livello (Es. C, Pascal, Java, ecc.) sono dei linguaggi caratterizzati da un livello di astrazione molto superiore a quello del linguaggio Assembly. Le loro istruzioni non si riferiscono direttamente alla CPU, ma sono maggiormente orientate verso il problema da risolvere. I vantaggi di questi tipi di linguaggi sono una facilitazione nella stesura dei programmi sorgente e la possibilità di creare programmi portabili (che possono essere portati da una macchina ad un altra senza subire modifiche), cioè programmi che non sono legati all architettura della CPU. La traduzione di ciascun istruzione di questi linguaggi (che corrispondono a diverse istruzioni elementari in linguaggi a basso livello) è affidata ai compilatori che generano dei codici operativi (eseguibili dagli elaboratori) non ottimizzati, cioè dei codici formati da un numero maggiore di codici operativi rispetto ai linguaggi che agiscono direttamente sulla CPU. ANALISI DELLE ISTRUZIONI UTILIZZATE a) La dichiarazione di una variabile, nel software EMU8086, avviene attraverso la sintassi: etichetta_varibile tipo_variabile valore_variabile dove: etichetta_variabile è il nome della variabile, al quale il software assegna un indirizzo di memoria libero nella memoria; tipo_variabile sta a rappresentare il campo di valori che la variabile può assumere. Esso può essere espresso dalle direttive DB (Define Byte), che significa che la variabile può contenere soltanto numeri ad 8 bit; DW (Define Word), che significa che la variabile può contenere numeri a 16 bit. b) Lo spostamento di dati avviene utilizzando la sintassi: mov destinazione, sorgente Questa istruzione copia il contenuto di sorgente in destinazione. Questa istruzione ammette diversi tipi di indirizzamento: 1) l indirizzamento diretto (Es. mov ax, var_1) nel quale il contenuto di una locazione di memoria, espresso con una variabile, viene caricato in un registro; 2) l indirizzamento immediato (Es. mov ax, 0015h) nel quale viene caricato in un registro, o in una variabile, un numero definito; 3) l indirizzamento implicito (Es. mov ax, bx) nel quale viene caricato il contenuto di un registro in un altro registo. L istruzione mov non agisce su nessun flag, ciò significa che non va a modificare il valore dei bit del registro di stato. 6
7 c) La somma di dati avviene utilizzando la sintassi: add operando_1, operando_2 dove operando_1, al termine dell istruzione, contiene il risultato. Anche questa istruzione ammette l indirizzamento diretto (Es. add ax, var_1), l indirizzamento immediato (Es. add var_1, 0001h) e l indirizzamento implicito (Es. add ax, bx). L istruzione add agisce sul flag dello zero;sul flag del segno; sul flag del carry. d) Il controllo del flusso del programma può essere modificato dalle istruzioni di salto, che utilizzano quasi sempre, come condizione, lo stato dei flag. L istruzione di salto utilizzata nel nostro programma sono state jz e jmp. L istruzione di salto jz va a tener conto dello stato del flag dello zero, quindi deve essere considerata come un istruzione di salto condizionato. Essa segue la sintassi: jz yes ; blocco istruzioni no yes: ; blocco istruzioni si Dove, se il flag dello zero è uguale ad 1, viene eseguito il blocco di istruzione si; se il flag dello zero è uguale a 0, viene eseguito il blocco di istruzione no. Essa non agisce su nessun flag del registro di stato. L istruzione di salto jmp non tiene conto dello stato di nessuno flag, quindi deve essere considerata come un istruzione di salto non condizionato. Essa segue la sintassi: ;istruzioni jmp etichetta ;istruzioni etichetta: ;istruzioni dove il programma, una volta arrivato all istruzione jmp etichetta, salta tutte le istruzioni seguenti passando alle istruzioni seguenti ad etichetta:. Essa non agisce su nessun flag del registro di stato. 7
Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18
Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Calcolatore: sottosistemi Processore o CPU (Central Processing
DettagliArchitettura di un calcolatore: introduzione
Corso di Calcolatori Elettronici I Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie
DettagliStruttura del calcolatore
Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione
DettagliIl microprocessore 8086
1 Il microprocessore 8086 LA CPU 8086 Il microprocessore 8086 fa parte della famiglia 80xxx della INTEL. Il capostipite di questa famiglia è stato l 8080, un microprocessore ad 8 bit che ha riscosso un
DettagliFondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Seconda v2.0
Fondamenti Teorici Antonio Pescapè e Marcello Esposito Parte Seconda v2.0 Agenda Modello di Von Neumann Algoritmo del Processore Linguaggio Macchina e Linguaggio Assembler Hardware e Software Compilatori
DettagliInformatica Teorica. Macchine a registri
Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire
DettagliIspirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).
RCHITETTUR DI UN ELORTORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). MCCHIN DI VON NEUMNN UNITÀ FUNZIONLI fondamentali Processore (CPU) Memoria
DettagliL architettura di riferimento
Architetture degli elaboratori e delle reti Lezione 10 L architettura di riferimento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 10 1/27
DettagliArchitettura degli elaboratori (A)
Laurea in Informatica a.a. 2010-2011 Laboratorio del corso di Architettura degli elaboratori (A) Modulo 1: l Architettura dell 8086 Valeria Carofiglio Linguaggi a vari livelli e loro relazioni Programma
DettagliArchitettura del calcolatore
Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale
DettagliASSEMBLER 68K parte 1
ASSEMBLER 68K parte 1 CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II Supporti didattici Fadini Savy, Fond. Inf. 2 parte. III, cap.
DettagliLezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014
Lezione 1: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 10 Marzo 2014 Ricorda... Il ciclo di esecuzione di un istruzione è composto da sei fasi: FETCH DECODE ADDRESS
DettagliIng. Paolo Domenici PREFAZIONE
Ing. Paolo Domenici SISTEMI A MICROPROCESSORE PREFAZIONE Il corso ha lo scopo di fornire i concetti fondamentali dei sistemi a microprocessore in modo semplice e interattivo. È costituito da una parte
DettagliLezione n.9. Introduzione al linguaggio macchina
Lezione n.9 Autore:Luca Orrù 1 Sommario Esecuzione delle istruzioni Architettura interna ed esterna Linguaggio assembler e modi d indirizzamento Consideriamo ora la singola istruzione e la scomponiamo
DettagliIstruzioni di modifica della sequenza di elaborazione
Istruzioni di modifica della sequenza di elaborazione Permettono di modificare la sequenza di esecuzione delle istruzioni di un programma, normalmente controllata dal meccanismo automatico di avanzamento
DettagliI.T.I. A. RIGHI e VIII Napoli Specializzazione Informatica Tradizionale Corso D Materia: Sistemi. Elementi di Assembly 8086
I.T.I. A. RIGHI e VIII Napoli Specializzazione Informatica Tradizionale Corso D Materia: Sistemi Elementi di Assembly 8086 1 Assembly 8086 I registri Per poter elaborare le informazioni ricevute dall esterno,
DettagliIl calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
DettagliCalcolo numerico e programmazione Architettura dei calcolatori
Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:
DettagliCALCOLATORI ELETTRONICI
CALCOLATORI ELETTRONICI Giuseppe Coldani Tel. 0382 985678 e-mail: giuseppe.coldani@unipv.it giuseppe.coldani@tin.it orario delle lezioni: Mercoledì 14.00-18.00 orario di ricevimento: su appuntamento 1
DettagliProgrammazione dello Z80
Il microprocessore si incarica di: gestire il programma e i suoi dati di eseguire i calcoli richiesti. Le azioni appena elencate rendono necessario che il microprocessore abbia da qualche parte, al suo
DettagliArchitettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica. prof. ing. Corrado Santoro
Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica prof. ing. Corrado Santoro Schema a blocchi di una CPU Arithmetic Logic Unit Control Unit Register File BUS Control
DettagliAXO Achitettura dei Calcolatori e Sistema Operativo. Instruction Set Architecture (ISA) e 68000
AXO Achitettura dei Calcolatori e Sistema Operativo Instruction Set Architecture (ISA) e 68000 introduzione a ISA ISA - Instruction Set Architecture insieme delle istruzioni (instruction set) che possono
DettagliCALCOLATORI ELETTRONICI II
CALCOLATORI ELETTRONICI II L ASSEMBLATORE Microsoft MASM MASM Argomenti della lezione Faremo riferimento al linguaggio sorgente accettato dall assemblatore Microsoft MASM nelle versioni successive alla
DettagliLa macchina programmata Instruction Set Architecture (1)
Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un
DettagliEsempio di moltiplicazione come somma e spostamento
Esempio di moltiplicazione come somma e spostamento Implementare una moltiplicazione coinvolge algoritmi di shift e somma Istruzioni di Shift:movimento di bit: ROL Rd ROR Rd LSL Rd LSR ASR Rd Rd 22 x 35
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Corso di Laurea Triennale in Informatica Università degli Studi di Bari Anno Accademico 2009-2010 Laboratorio lez1: il processore 8086/88 Prof. S.Pizzutilo I processori Intel
DettagliCorso di Informatica Applicata. Lezione 3. Università degli studi di Cassino
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 3 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliArchitettura di un Elaboratore
Architettura di un Elaboratore Fabio Massimo Zanzotto Ricapitoliamo puntate precedenti Cosa abbiamo a disposizione: Concetto di algoritmo (con eventuale parametrizzazione) Rappresentazione dell informazione
DettagliARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088
ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel di terza generazione progetto originario del 1979, ancora oggi interessanti per: 1. motivi didattici: l architettura dei processori
DettagliIl Processore: i registri
Il Processore: i registri Il processore contiene al suo interno un certo numero di registri (unità di memoria estremamente veloci) Le dimensioni di un registro sono di pochi byte (4, 8) I registri contengono
DettagliIntroduzione. Un calcolatore digitale è costituito da un sistema interconnesso dei seguenti dispositivi:
Appunti di Calcolatori Elettronici Organizzazione dei sistemi di elaborazione Introduzione... 1 La CPU... 2 Ciclo di esecuzione delle istruzioni... 3 Insieme delle istruzioni... 4 Organizzazione della
DettagliCapitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2.
Capitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2. Dichiarazione di dati: le direttive DS e DC...3 2.1 Direttiva DS...3 2.2
DettagliIl calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi
Il calcolatore elettronico Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Introduzione Un calcolatore elettronico è un sistema elettronico digitale programmabile Sistema: composto da
DettagliARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4
ARCHITETTURE MICROPROGRAMMATE. 1 Necessità di un architettura microprogrammata 1 Cos è un architettura microprogrammata? 4 Struttura di una microistruzione. 5 Esempi di microprogrammi 9 Esempio 1 9 Esempio
DettagliC. P. U. MEMORIA CENTRALE
C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato
DettagliLa microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1
La microarchitettura. anno accademico 2006 2007 pagina 1 Integer Java virtual machine Ogni microprocessore può avere una microarchitettura diversa, ma la modalità di funzionamento per certi aspetti è generale.
DettagliArchitettura del Set di Istruzioni (ISA)
Architettura del Set di Istruzioni (ISA) Maurizio Palesi Maurizio Palesi 1 Instruction Set Architecture (ISA) Software instruction set Hardware Maurizio Palesi 2 1 Instruction Set Architecture (ISA) Applicazioni
DettagliIl processore. Il processore. Il processore. Il processore. Architettura dell elaboratore
Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni
DettagliCOMPILAZIONE. Tarsformazione di linguaggi
COMPILAZIONE Tarsformazione di linguaggi Le fasi della compilazione File sorgente Compilazione File sorgente File sorgente File sorgente Compilazione Compilazione Compilazione Libreria di run-time File
DettagliArchitettura dei Calcolatori Introduzione al corso
Architettura dei Calcolatori Introduzione al corso Ing. dell Automazione A.A. 2011/12 Gabriele Cecchetti g.cecchetti@sssup.it Rappresentazione dell informazione Sommario: Premessa (struttura generale del
DettagliArchitettura hardware
Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliAssembler Intel 80x86: Struttura di un programma e Direttive
Assembler Intel 80x86: Struttura di un programma e Direttive Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin 1 Istruzioni e direttive Formato generale dei comandi: [nome] codice operazione
DettagliVon Neumann. John Von Neumann (1903-1957)
Linguaggio macchina Von Neumann John Von Neumann (1903-1957) Inventore dell EDVAC (Electronic Discrete Variables AutomaFc Computer), la prima macchina digitale programmabile tramite un soiware basata su
DettagliIntroduzione all'architettura dei Calcolatori
Introduzione all'architettura dei Calcolatori Introduzione Che cos è un calcolatore? Come funziona un calcolatore? è possibile rispondere a queste domande in molti modi, ciascuno relativo a un diverso
DettagliLezione 3: Architettura del calcolatore
Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile
DettagliCLASSE III A I.T.I. (ABACUS) SISTEMI DI ELABORAZIONE E TRASMISSIONE DEI DATI VERIFICA DI RECUPERO
CLASSE III A I.T.I. (ABACUS) SISTEMI DI ELABORAZIONE E TRASMISSIONE DEI DATI VERIFICA DI RECUPERO 1 Domanda [1 punto] Dato il formato in virgola mobile su 32 bit così definito (precisione singola): o 1
DettagliLiceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA. CLASSE 3 LSA SEZ. B e D
Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA CLASSE 3 LSA SEZ. B e D Sommario PIANO DI LAVORO DI INFORMATICA... 1 INDICAZIONI GENERALI... 2 PREREQUISITI... 2 CONOSCENZE, COMPETENZE
DettagliElementi di programmazione Algoritmi Flow Chart, Fasi della programmazione Linguaggi Elementi di programmazione ad oggetti
Elementi di programmazione Algoritmi Flow Chart, Fasi della programmazione Linguaggi Elementi di programmazione ad oggetti ELEMENTI DI INFORMATICA UFC_05 1 Algoritmi Un algoritmo è una serie finita di
DettagliArchitettura dei calcolatori
Architettura dei calcolatori Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/
DettagliCPU. Maurizio Palesi
CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore
DettagliPARTE III MACCHINE A REGISTRI
PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 1 3.1 MACCHINE A REGISTRI (RAM: Random Access Machines) Introdotte da Shepherdson
DettagliArchitettura di un computer
Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su
DettagliSistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.
Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca
DettagliIl linguaggio assembly 8086
Il linguaggio assembly 8086 Introduzione Il linguaggio macchina Il linguaggio naturale di un microprocessore è il linguaggio macchina. Nel linguaggio macchina non esistono riferimenti astratti o simbolici
DettagliHardware di un Computer
Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,
DettagliAssembler 8086/8088: Concetti Generali
L Assembler 8086 Concetti Generali M. Rebaudengo - M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica 1 M. Rebaudengo, M. Sonza Reorda Sommario Introduzione Pseudo-Istruzioni Operatori
Dettagli[http://www.di.univaq.it/muccini/labarch]
[http://www.di.univaq.it/muccini/labarch] Modulo di Laboratorio di Architettura degli Elaboratori Corso di Architettura degli Elaboratori con Laboratorio Docente: H. Muccini Lecture 3: Introduzione a SPIM
DettagliCalcolatori Elettronici
Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di Von Neumann Sistemi basati sull architettura Harward Architettura dei calcolatori: definizioni Evoluzione
DettagliRichiami di informatica e programmazione
Richiami di informatica e programmazione Il calcolatore E una macchina usata per Analizzare Elaborare Collezionare precisamente e velocemente una grande quantità di informazioni. Non è creativo Occorre
DettagliPROGRAMMA DI SISTEMI TERZA AET 2014/2015
PROGRAMMA DI SISTEMI TERZA AET 2014/2015 Docente: Gamerra Giuseppe, Porta Giovanni Testo : manuali originali dello Z80, appunti in classe, dispense sulla intranet, simulatore OSHONSOFT A) Non sono state
DettagliTutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086.
I processori Intel Tutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086. L'8086 e' un processore a 16 bit quindi i suoi registri potranno
DettagliLezione 16: L architettura LC-3
Lezione 16: L architettura LC-3 Laboratorio di Elementi di Architettura e Sistemi Operativi 15 Maggio 2013 Ricorda... Il ciclo di esecuzione di un istruzione è composto da sei fasi: FETCH DECODE ADDRESS
DettagliUnità Periferiche. Rete Di Controllo
MODELLO LOGICO-FUNZIONALE DI UN ELABORATORE Centrale di canale Periferiche CPU Memoria centrale ALU CU Memoria Locale ALU = Aritmetic Logic Unit CU = Registri CU ISTRUZIONE Decodificatore Rete Di Controllo
DettagliLa Macchina Virtuale
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore
DettagliINFORMATICA 1 L. Mezzalira
INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello
DettagliLe sue caratteristiche:
I Virus Un virus, in informatica, è un software, appartenente alla categoria dei malware, che è in grado, una volta eseguito, di infettare dei file in modo da riprodursi facendo copie di se stesso, generalmente
DettagliFunzionalità di un calcolatore
Funzionalità di un calcolatore Il calcolatore: modello concettuale 1. Elaborazione 2. Memorizzazione Interconnessione 3. Comunicazione (interfaccia) Architettura di un computer componenti per elaborare
DettagliSito personale e forum
www.delucagiovanni.com Corsi, Forum, Docs Robotics and A.I. Progetto di una CPU SAP1 Simple as Computer step-by by-step Giovanni De Luca Sito personale e forum .iniziamo con le installazioni Installazione
DettagliARCHITETTURA DI UN CALCOLATORE ELETTRONICO
Lezione di informatica del 31 marzo 2008 (appunti prelevati sulla rete) - Paolo Latella ARCHITETTURA DI UN CALCOLATORE ELETTRONICO Per architettura di un calcolatore elettronico si intende l'insieme delle
DettagliDIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo
DIREZIONE DIDATTICA DI SAN GIUSEPPE JATO Programma Operativo Nazionale Fondo Sociale Europeo - Competenze per lo sviluppo Ogni componente hardware dell elaboratore, per poter svolgere determinati compiti,
DettagliQuinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.
Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere
DettagliLaboratorio di Informatica
per chimica industriale e chimica applicata e ambientale LEZIONE 4 La CPU e l esecuzione dei programmi 1 Nelle lezioni precedenti abbiamo detto che Un computer è costituito da 3 principali componenti:
DettagliMacchina di von Neumann
Il processore PD32 Macchina di von Neumann Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo Suddivisione SCA-SCO Unità di Ingresso Memoria di lavoro Unità di Uscita
DettagliVarie tipologie di memoria
Varie tipologie di memoria velocita` capacita` registri CPU memoria cache memoria secondaria (Hard Disk) Gestione della memoria Una parte della viene riservata per il SO I programmi per poter essere eseguiti
DettagliIntroduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma La Sapienza WARNING Questo canale è solo per studenti di Fisica il cui cognome inizia con le lettere A-C TUTTAVIA
DettagliDIPARTIMENTO DI ELETTRONICA, ELETTROTECNICA E TELECOMUNICAZIONI
DIPARTIMENTO DI ELETTRONICA, ELETTROTECNICA E TELECOMUNICAZIONI PIANO DI LAVORO per l anno scolastico 2015-2016 Prof.ssa/Prof. Materia: Sistemi automatici Classe: III/IV/V Elettronica Numero ore settimanali:
DettagliParte II.2 Elaboratore
Parte II.2 Elaboratore Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 1, 2015 Elisabetta Elisabetta Ronchieri II Software Argomenti
DettagliIl processore - CPU (CENTRAL PROCESSING UNIT)
Il processore - CPU (CENTRAL PROCESSING UNIT) Funzionamento Programmi e dati risiedono in file memorizzati in memoria secondaria. Per essere eseguiti (i programmi) e usati (i dati) vengono copiati nella
DettagliARCHITETTURA DI UN SISTEMA A MICROPROCESSORE
ARCHITETTURA DI UN SISTEMA A MICROPROCESSORE 1. INTRODUZIONE In questo capitolo viene presentata la struttura, sia interna che esterna, di un microprocessore generico riprendendo i concetti esposti nella
DettagliPiccoli Ingegneri Informatici
Piccoli Ingegneri Informatici 1 Varie definizioni: INFORMATICA Scienza degli elaboratori elettronici (Computer p Science) ) Scienza dell informazione Definizione i i proposta: Scienza della rappresentazione
DettagliElementi di Informatica e Programmazione. # Memoria di massa. Problema: comprare un PC. Architettura del calcolatore. Architettura di Von Neumann
Elementi di Informatica e Programmazione Architettura del calcolatore (prima parte) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Problema:
DettagliL Assembler 8086. Istruzioni Aritmetiche. M. Rebaudengo - M. Sonza Reorda. Politecnico di Torino Dip. di Automatica e Informatica
L Assembler 8086 M. Rebaudengo - M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica 1 M. Rebaudengo, M. Sonza Reorda Si suddividono in: istruzioni per il calcolo binario istruzioni
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliCorso di Sistemi di Elaborazione delle informazioni
Corso di Sistemi di Elaborazione delle informazioni LEZIONE 2 (HARDWARE) a.a. 2011/2012 Francesco Fontanella Tre concetti Fondamentali Algoritmo; Automa (o anche macchina); Calcolo; 2 Calcolatore MACCHINA
DettagliLaboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008
Laboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 11/01/08 Nota Questi lucidi sono
DettagliIntroduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma La Sapienza WARNING Questo canale è solo per studenti di Fisica il cui cognome inizia con le lettere A-D Laboratorio
DettagliLa macchina di Von Neumann. Central Processing Unit (CPU) Elementi base. Architettura computer. Bus di sistema MEMORIA CENTRALE PERIFERICHE A B INTR
Architettura di un computer La macchina di Von Neumann Architettura organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton.
DettagliArchitettura del Calcolatore. Prof.Ing.S.Cavalieri
Architettura del Calcolatore Prof.Ing.S.Cavalieri 1 Evoluzione: tecnologia Sistemi Meccanici Sistemi Elettro-Meccanici (uso di Valvole) Sistemi Interamente Elettronici (basati su Valvole) Sistemi Interamente
DettagliCaratteristiche di un PC
Caratteristiche di un PC 1 Principali porte presenti sui personal computer PC Una porta è il tramite con la quale i dispositivi (periferiche o Device ) vengono collegati e interagiscono con il personal
DettagliINFORMATICA E COMPUTER : INTRODUZIONE
INFORMATICA E COMPUTER : INTRODUZIONE! Informatica: dal francese, informatique informat(ion) (automat)ique [termine coniato dall'ingegnere francese Philippe Dreyfus nel 1962] è la scienza che studia i
DettagliIngegneria del Software 1: Eclipse
Ingegneria del Software 1: Eclipse Da completare entro Marzo 15, 2016 S. Krstić and M. Scavuzzo and F. Marconi and A. Rizzi and C. Menghi 1 Contents 1 Introduzione 3 1.1 Java (JRE vs JDK)..........................................
DettagliL architettura del calcolatore (Prima parte)
L architettura del calcolatore (Prima parte) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Calcolatore astratto e reale Concetto astratto
DettagliLaurea triennale - Comunicazione&DAMS - UNICAL. Dr. Marco Manna 1
Corso di INFORMATICA Laurea triennale - Comunicazione&DAMS Dr. Marco Manna 1 1 Dipartimento di Matematica Università della Calabria Corso di laurea intercalsse in COMUNICAZIONE&DAMS http://elleboro.unical.it/drupalab/informatica2009/
Dettagliche vengano generati nell ordine corretto i sistema (es., la memoria, l unità aritmetico-
Principi di architetture dei calcolatori: l unità di controllo Mariagiovanna Sami L unità di controllo Per eseguire le istruzioni di macchina, occorre che vengano generati nell ordine corretto i segnali
DettagliFondamenti di informatica: un po di storia
Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi
DettagliCiclo di Istruzione. Ciclo di Istruzione. Controllo. Ciclo di Istruzione (diagramma di flusso) Lezione 5 e 6
Ciclo di Istruzione Può essere suddiviso in 4 tipi di sequenze di microoperazioni (cioè attività di calcolo aritmetico/logico, trasferimento e memorizzazione dei dati), non tutte necessariamente da realizzare
DettagliL Assembler 80x86 Concetti Generali. M. Rebaudengo M. Sonza Reorda P. Bernardi
L Assembler 80x86 Concetti Generali M. Rebaudengo M. Sonza Reorda P. Bernardi Sommario Introduzione Pseudo-Istruzioni Operatori Modi di Indirizzamento Istruzioni Sommario Introduzione Pseudo-Istruzioni
DettagliLaboratorio di Architettura degli Elaboratori
Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Introduzione a MARS: interfaccia, struttura di un programma, gestione dell input L assemblatore e simulatore MARS Permette di eseguire
DettagliLezione n.19 Processori RISC e CISC
Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni
Dettagli