Progettare l'isa. Progettare l'isa. Corso di Architettura degli Elaboratori. Interpretazione
|
|
- Concetta Belli
- 4 anni fa
- Visualizzazioni
Transcript
1 Corso di Architettura degli Elaboratori Il livelo ISA: ISA IJVM, tipi di dati e formato delle istruzioni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I Torino baldoni@di.unito.it ~baldoni Progettare l'isa Ponte tra l'hardware e il software: Forte correlazione tra hardware e livello ISA Forte correlazione tra livello hardware, ISA e i ideatori di compilatori Garanzia di compatibilita` con modelli precedenti (vedi esempio Intel) per questioni di marketing (i programmi precedenti devono continuare a funzionare!) ISA per sistemi embedded 1 2 Progettare l'isa Interpretazione ISA e tecnologia: facilmente realizzabile con la tecnologia corrente facilmente realizzabile con la tecnologia futura(!) Facilmente utilizzabile dai compilatori (traduttori automatici) e che permettano la generazione di codice efficiente Pubblicazione delle specifiche ISA Modalita` kernel o utente Codice Sorgente Interprete Interprete MacOS Interprete Interprete (JavaScript, Scheme, Prolog): Interazione. Più facile modificare un programma durante l'esecuzione Intel/Windows Apple 3 4
2 Traduzione o compilazione Memoria Compilatore binario Codice Sorgente Compilatore MacOS binario Apple Compilatore binario Importanza dell'allineamento Indirizzamento per area dati e programmi Compilazione (Pascal, C, Ada, C++): Efficienza di esecuzione. Il codice generato dal compilatore può essere ottimizzato, perché la compilazione è fatta una sola volta Intel/Wind Hardware supplementare per estrazione delle informazioni non allineate 5 6 Registri ISA IA-32 Intel (cenni) Non tutti i registri visibili al livello della microarchitettura sono visibili a livello ISA (es. TOS e MAR del Mic-1 non sono visibili a livello ISA) Registri ad applicazione particolare (SP, PC, ecc) e registri ad applicazione generale (OPC, ecc): i programmatori e i compilatori devono attenersi alle eventuali convenzioni di utilizzo Registri visibili a livello kernel: es. il registro dei flag o Program Status Word (PSW) contenente i condition codes (N, Z, V, C, A, P, livello di priorita` CPU, livello di abilitazione degli interrupt e altri ancora) E` l'architettura ISA a 32 bit dell'80386, estesa poi con il set di istruzioni MMX (per la multimedialita`) Modalita` reale (come un 8088), modalita` 8086 virtuale (ambiente isolato per l'esecuzione dei programmi 8088) e modalita` protetta di esecuzione con quattro livelli di protezione (tra cui kernel e utente) Memoria: segmenti da indirizzi (solitamente e` utilizzato un solo segmento) Solitamente i SO: spazio lineare di 2 32 byte Formato little endian 7 8
3 ISA IA-32 Intel (cenni) I registri sono organizzati in modo da garantire la possibilita` di emulare 8088, (e in parte 8080!) ISA UltraSparc (cenni) Architettura RISC a 64 bit (in origine a 32 bit) Memoria: 2 64 indirizzi, solitamente spazio lineare di 2 64 byte Formato big endian (ma possibile anche little endian) Due gruppi di registri: 32 registri (64 bit) generici e 32 registri floatin-point Meccanismo del register window Architettura load/store: le unicheoperazioni con accesso diretto alla memoria sono LOAD e STORE, le istruzioni per spostare i dati fra i registri e la memoria, tutti gli operandi (inclusa la destinazione) per le istruzioni aritmetiche e logiche devono provenire da registri 9 10 ISA JVM (cenni) Tipi di dati Memoria organizzata in quattro regioni: frame delle variabili locali, lo stack degli operandi, l'area del metodo e la constant pool come visto sull'esempio IJVM Heap per la memorizzazione di oggetti dinamici o di grosse dimensioni (int a[] = new int[4096];) Runtime storage allocator e garbage collector Macchina a stack pura: richiede una grande quantita` di accessi alla memoria ma ISA e` estremamente semplice ed elegante Implementazioni hardware relativamente semplici (ricordiamoci che Java era nato per programmare prodotti di tipo consumer!) Supporto hardware per un particolare tipo di dati: presenza di istruzioni che si aspettano i dati in un dato formato Numeri interi complemento a due, i numeri floating point secondo lo standard IEE 754, i caratteri secondo la codifica ASCII sono un tipo di dati e la maggior parte dei livelli ISA per processori di uso corrente offre istruzioni per il loro trattamento Simulazione software per i tipi di dati non supportati 11 12
4 Tipi di dati numerici Tipicamente 8, 16, 32 e 64 bit Numeri interi unsigned e signed Numeri floating point: 32, 64, 80, 128 bit Standard IEEE 754 e istruzioni ISA dedicate alla gestione di di tale formato standard Binary code decimal format introdotto nel COBOL (hardware dedicato, esempio IBM System 360): 4 bit per ogni cifra decimale Tipi di dati non numerici Codifica ASCII (7 bit ed in seguito 8 bit) Codifica UNICODE (16 bit) Istruzione speciali del livello ISA per la gestione di stringhe (la maggior parte delle applicazioni degli eleboratori è quella dell'elaborazione di informazione non numerica!) Valori Booleani: vero (1) e falso (0) Bit map Puntatori: indirizzo di memoria Panoramica supporto tipi di dati Pentium II (Un)Signed integer: 8, 16 e 32 bit Binary coded decimal integer: 8 bit Floating point: 32 e 64 bit Manipolazione di caratteri ASCII di 8 bit UltraSPARC II (Un)Signed integer: 8, 16, 32 e 64 bit Floating point: 32, 64 e 128 bit JVM: Signed integer: 8, 16, 32 e 64 bit FLoating point: 32 e 64 bit Manipolazione di caratteri UNICODE di 16 bit Formato delle istruzioni Formati comuni delle istruzioni: (a) zero indirizzi (b) un indirizzo (c) due indirizzi (d) tre indirizzi Lunghezza omogenea per facilitare la decodifica 15 16
5 Formato delle istruzioni Criteri per la progettazione del formato delle istruzioni: l'insieme delle istruzioni deve poter essere esteso facilmente nel futuro per includere nuove istruzioni tecnologia con cui è realizzato il calcolatore (ma tenendo conto delle future possibili evoluzioni) Istruzioni corte vs istruzioni lunghe: spazio occupato dai programmi larghezza di banda della memoria (CPU molto più veloci della capacità di fornire istruzioni da parte della memoria) avvio di più istruzioni possibili all'esecuzione in un ciclo di clock La lunghezza è una scelta fondamentale! Formato delle istruzioni Codici dedicati agli opcode: meglio prevederne di più di quelli necessari ma questo implica occupare spazio Spazio riservato agli indirizzi nelle istruzioni: maggiore risoluzione della memoria vs istruzioni più lunghe Bilanciamento della dimensione degli indirizzi con la risoluzione della memoria Attualmente la maggior parte delle moderne implementazioni adottano una risoluzione di 8 bit (ma leggono la memoria in blocchi di 1, 2, 4 o più parole alla volta con necessità di hardware di scomposizione del blocco di bit letti per l'accesso ai singoli byte) Espansione degli opcode Pentium II Bilanciare il numero di istruzioni: numero di istruzioni vs risoluzione della memoria e numero di operandi Opcode più corti per le istruzioni più frequenti o quelle che necessitano di più operatori Problemi con l'allineamento delle istruzioni Risente della compatibilità all'indietro Tecnica del prefisso (gli opcode erano finiti!): ecape code Lunga e complessa decodifica Molte istruzioni poco utilizzate Allineamento in memoria difficile 19 20
6 UltraSPARC II Istruzioni di 32 bit allineate in memoria Successivamente si sono aggiunti nuovi formati (incomincia a risentire della compatibilità all'indietro?) Due bit iniziali per aiutare a determinare il tipo di istruzione JVM Si predilige il codice compatto Machina a stack pura Opcode di un byte ILOAD speciali per offset di 0, 1, 2, 3 Tecnica del prefisso (esempio WIDE) JVM 42 byte! 2 byte vs 4 byte 34 byte! 23
Progettare l'isa. Progettare l'isa. Corso di Architettura degli Elaboratori. Interpretazione
Corso di Architettura degli Elaboratori Il livelo ISA: ISA IJVM, tipi di dati e formato delle istruzioni Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149
DettagliGli indirizzi occupano spazio! Gli indirizzi occupano spazio! Corso di Architettura degli Elaboratori. Indirizzamento immediato
Corso di Architettura degli Elaboratori Il livelo ISA: modalità di indirizzamento Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it
DettagliCorso di Architettura degli Elaboratori
Corso di Architettura degli Elaboratori Introduzione: linguaggi, livelli e macchine virtuali Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it
DettagliArchitettura dei calcolatori e sistemi operativi. Architettura MIPS e set istruzioni Capitolo 2 P&H
Architettura dei calcolatori e sistemi operativi Architettura MIPS e set istruzioni Capitolo 2 P&H Instruction Set Architecture ISA Linguaggio assemblatore e linguaggio macchina ISA processore MIPS Modello
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 3 aprile 2006 Esercizio 1 (punti 3) Considerare una codifica su 8 bit in complemento a due e rappresentare i seguenti
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 6 dicembre 2005 Esercizio 1 (punti -1, 2) Considerare una codifica su 8 bit in complemento a due e rappresentare i
DettagliIntroduzione a ISA. Il Livello ISA Instruction Set Level Architecture. Livello ISA e Motorola 68000: introduzione. Che cosa descrive ISA
Introduzione a ISA Il Livello ISA Instruction Set Level Architecture Livello ISA e Motorola 68000: introduzione Livello ISA (Instruction Level Architecture): insieme delle istruzioni (instruction set)
DettagliLinguaggio Assembly e linguaggio macchina
Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliISA e linguaggio assembler
ISA e linguaggio assembler Prof. Alberto Borghese Dipartimento di Informatica borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1, D2. 1/39 Introduzione
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Esonero del 7 luglio 2005 Esercizio 1 (punti 4) Le seguenti microistruzioni implementano l istruzione IJVM IINC varnum const che
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 2008/2009 Instruction Set Architecture: nozioni generali Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello del linguaggio specializzato Traduzione (compilatore) o interpretazione
DettagliIstruzioni e linguaggio macchina
Istruzioni e linguaggio macchina I linguaggi macchina sono composti da istruzioni macchina, codificate in binario, con formato ben definito processori diversi hanno linguaggi macchina simili scopo: massimizzare
DettagliIl linguaggio Assembly. Architettura degli Elaboratori e delle Reti Turno I
Il linguaggio Assembly Architettura degli Elaboratori e delle Reti Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it 1 Linguaggio
DettagliLinguaggio Assembly e linguaggio macchina
Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliMacchine astratte, linguaggi, interpretazione, compilazione
Macchine astratte, linguaggi, interpretazione, compilazione 1 Macchine astratte una collezione di strutture dati ed algoritmi in grado di memorizzare ed eseguire programmi componenti della macchina astratta
DettagliLinguaggio Assembly e linguaggio macchina
Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliArchitettura di un calcolatore: introduzione. Calcolatore: sottosistemi
Corso di Calcolatori Elettronici I A.A. 2012-2013 Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e
DettagliISA e linguaggio assembler
ISA e linguaggio assembler Prof. Alberto Borghese Dipartimento di Informatica borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1, D2. 1/57 Introduzione
DettagliScopo della lezione. Analizzare i tipi di macchine Indirizzamento e memorie Tipi di dato
Scopo della lezione Analizzare i tipi di macchine Indirizzamento e memorie Tipi di dato Little endian e big endian Indirizzamento logico e fisico Comprendere la struttura del micro Von Neumann architecture
DettagliL Instruction Set Architecture ed il Linguaggio Assembly
L Instruction Set Architecture ed il Linguaggio Assembly Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento Patterson: Capitolo
DettagliL Instruction Set Architecture ed il Linguaggio Assembly
L Instruction Set Architecture ed il Linguaggio Assembly Prof. Alberto Borghese Ing. Iuri Frosio Dipartimento di Scienze dell Informazione borghese,frosio@dsi.unimi.it Università degli Studi di Milano
DettagliL unità di controllo di CPU a singolo ciclo. Sommario
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2,
DettagliArchitettura di un calcolatore: Introduzione parte 2
Corso di Calcolatori Elettronici I Architettura di un calcolatore: Introduzione parte 2 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle
DettagliMacchine astratte, linguaggi, interpretazione, compilazione
Macchine astratte, linguaggi, interpretazione, compilazione 1 Macchine astratte una collezione di strutture dati ed algoritmi in grado di memorizzare ed eseguire programmi componenti della macchina astratta
DettagliL insieme delle istruzioni (6)
L insieme delle istruzioni (6) Architetture dei Calcolatori (lettere A-I) Alcune note conclusive I due principi dell architettura a programma memorizzato Uso di istruzioni indistinguibili dai dati Uso
DettagliArchitettura di un calcolatore: introduzione. Calcolatore: sottosistemi
Corso di Calcolatori Elettronici I A.A. 2010-2011 Architettura di un calcolatore: introduzione Lezione 18 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso
DettagliArchitettura di un calcolatore: introduzione. Calcolatore: sottosistemi
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
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
DettagliAccesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.
< < } } Lezione 5 e 6 Accesso a memoria A questo livello di astrazione, la memoria viene vista come un array di byte Per ogni richiesta di un dato ad un certo indirizzo, la CPU ottiene un numero di byte
DettagliProcedure e variabili locali. Corso di Architettura degli Elaboratori. Uno stack anche per i calcoli. Lo stack di esecuzione
Corso di Architettura degli Elaboratori Il livello della microarchitettura: l'isa IJVM Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 85 I-04 Torino baldoni@di.unito.it http://www.di.unito.it/
DettagliMacchina di Riferimento: argomenti
Macchina di Riferimento: argomenti L'architettura di una macchina MIPS Organizzazione della memoria I registri della CPU L'esecuzione dei programmi Il ciclo fetch-execute Il simulatore SPIM 1 Architettura
DettagliStruttura CPU. CPU con bus di sistema. Compiti CPU:
Struttura CPU Compiti CPU: Prelevare istruzioni Interpretare istruzioni Prelevare dati Elaborare dati Scrivere (memorizzare) dati Architettura degli elaboratori -1 Pagina 11 CPU con bus di sistema Architettura
DettagliIl processore Intel 8086
Il processore Intel 8086 Il processore Intel 8086, introdotto sul mercato nel giugno 1978 è stato il primo microprocessore a 16 bit; esso fu utilizzato nel 1981 per il Personal Computer IBM XT. È il progenitore
DettagliCorso di Laurea in Informatica
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 13 Dicembre 2004 Esercizio 1 (punti -1, 3) Si consideri l architettura nota come macchina di von Neumann (a) Come le
DettagliAssembly. Linguaggio di programmazione corrispondente al linguaggio macchina P.H. Cap. 2.1, 2.2 e App. A. Linguaggio assembly (App.
Assembly Linguaggio di programmazione corrispondente al linguaggio macchina P.H. Cap. 2.1, 2.2 e App. A 1 Linguaggio assembly (App. A) Rappresentazione simbolica del linguaggio macchina Più comprensibile
DettagliMIPS & SPIM. Modulo del Corso di Architettura degli Elaboratori. Nicola Paoletti. Università di Camerino Scuola di Scienze e Tecnologie
MIPS & SPIM Modulo del Corso di Architettura degli Elaboratori Nicola Paoletti Università di Camerino Scuola di Scienze e Tecnologie 10 Aprile 2013 AA 2012/2013 Informazioni utili (1/2) Email: nicola.paoletti@unicam.it
DettagliArchitettura del set di istruzioni (ISA)
Architettura del set di istruzioni (ISA) Calcolatori Elettronici-Ingegneria Telematica 1 Instruction Set Architecture Software Hardware Application (Netscape) Compiler Assembler Processor Memory Digital
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 7 luglio 2005 Esercizio 1 (punti 2) Considerare la rappresentazione dei numeri relativi su 10 bit in complemento a
DettagliMacchine Astratte. Luca Abeni. February 22, 2017
Macchine Astratte February 22, 2017 Architettura dei Calcolatori - 1 Un computer è composto almeno da: Un processore (CPU) Esegue le istruzioni macchina Per fare questo, può muovere dati da/verso la memoria
DettagliMicroelettronica. Note su RISC. Stefano Salvatori. Università degli Studi Roma Tre. Università degli Studi Roma Tre
Microelettronica Note su RISC Stefano Salvatori (salvator@uniroma3.it) Premessa 1980: Patterson e Ditzel, The case for the reduced instruction set computer Berkley: RISC I (progetto molto semplice rispetto
DettagliLaboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a Docente: H. Muccini
[http://www.di.univaq.it/muccini/labarch] Laboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a. 2005-2006 Docente: H. Muccini Lecture 2: Prime Istruzioni -Concetti Fondamentali
DettagliTeP Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazione
Dipartimento Informatica Materia TeP Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazione Classe 3 Tec Ore/anno 99 A.S. 2018-2019 Sapere individuare gli elementi che caratterizzano
DettagliMacchine astratte, linguaggi, interpretazione, compilazione
Macchine astratte, linguaggi, interpretazione, compilazione 1 Macchine astratte una collezione di strutture dati ed algoritmi in grado di memorizzare ed eseguire programmi componenti della macchina astratta
DettagliUna microarchitettura per IJVM. Corso di Architettura degli Elaboratori. Architetture degli Elaboratori. Central Processing Unit (richiamo)
Corso di Architettura degli Elaboratori Il livello della microarchitettura: data path e formato delle microistruzioni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149
DettagliUn quadro della situazione. Lezione 15 Il Set di Istruzioni (2) Le operazioni e gli operandi. Dove siamo nel corso. Cosa abbiamo fatto
Un quadro della situazione Lezione 15 Il Set di Istruzioni (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri
DettagliFamiglia dei processori INTEL
Famiglia dei processori INTEL 1975 2002 8080-8086 - 80286-80386 - 80486 - Pentium - Pentium II-III-IV - Itanium Compatibilità del SW (assemby) 8086 80286 80386 80486 Pentium Pentium III Perché studiare
DettagliCorso di. Stack: Procedure e variabili locali. Architetture degli Elaboratori. Uno stack anche per i calcoli. Lo stack di esecuzione
Corso di Architettura degli Elaboratori Il livello della microarchitettura: l'isa IJVM Stack: Procedure e variabili locali ambiente di esecuzione procedura A variabili locali di A variabili locali di B
DettagliCalcolatore: sottosistemi
Calcolatore: sottosistemi Processore o CPU (Central Processing Unit) Memoria centrale Sottosistema di input/output (I/O) CPU I/O Memoria Calcolatore: organizzazione a bus Il processore o CPU Unità di controllo
DettagliParte V. Il Livello delle Istruzioni Macchina
Parte V Il Livello delle Istruzioni Macchina V.1 Instruction Set Architecture Il livello ISA è l interfaccia tra HW e SW È il livello più basso a cui il processore è programmabile Criteri di scelta: Semplicità
DettagliIJVM. Fondamenti di Informatica II Ingegneria Informatica e Biomedica I anno, II semestre A.A. 2005/2006
Fondamenti di Informatica II Ingegneria Informatica e Biomedica I anno, II semestre A.A. 2005/2006 IJVM Prof. Mario Cannataro Università degli Studi Magna Graecia di Catanzaro 03.05.2006 1 Indice Data
DettagliCorso di Laurea in Informatica
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 18 gennaio 2007 Si ricorda che non è possibile usare appunti, calcolatrici, e nessun altro materiale cartaceo o elettronico.
DettagliCalcolatori Elettronici Prof. Gian Luca Marcialis. Capitolo 4 Unità Centrale di Elaborazione Istruzioni Macchina
Calcolatori Elettronici Prof. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Capitolo 4 Unità Centrale di Elaborazione Istruzioni Macchina Fonti Principali: Stallings, W., "Architettura
DettagliRappresentazione (Codifica Binaria dei Numeri) ed Elaborazione delle Informazioni
1 LEZIONE 3 Rappresentazione (Codifica Binaria dei Numeri) ed Elaborazione delle Informazioni LA CODIFICA DEI NUMERI Obiettivo: Codifica in binario dei numeri per favorire l elaborazione da parte dei calcolatori
DettagliFormato delle istruzioni Tipi di istruzione Modi di indirizzamento CISC vs RISC Pipeline Note sui RISC
Formato delle istruzioni Tipi di istruzione Modi di indirizzamento CISC vs RISC Pipeline Note sui RISC S. Salvatori - Microelettronica aprile 2016 (16 di 39) Compilatore Il progettista del up definisce
DettagliTraduzione ed Interpretazione
Traduzione ed Interpretazione Queste sconosciute Siano L Linguaggio ad alto livello M L Macchina astratta di L M 0 Macchina ospite Implementazione interpretativa di L Implementazione compilativa di L Simulazione
DettagliTraduzione e interpretazione
Traduzione e interpretazione Parte dei lucidi sono stati gentilmente forniti dal Prof. Salza VII.1 Linguaggi di programmazione Linguaggi ad alto livello Maggiore espressività Maggiore produttività Migliore
DettagliLA CPU INTEL Vantaggi dei programmi Assembly
1 LA CPU INTEL 8086 Vantaggi dei programmi Assembly L utilizzo del linguaggio Assembly anzichè di un linguaggio ad alto livello (tipo C o Pascal) è talvolta giustificato dalla maggiore efficienza del codice;
DettagliTraduzione ed Interpretazione. Queste sconosciute
Traduzione ed Interpretazione Queste sconosciute Siano L Linguaggio ad alto livello M L M 0 Macchina astratta di L Macchina ospite Implementazione interpretativa di L Simulazione software di M L su M 0
DettagliISA e linguaggio macchina
ISA e linguaggio macchina Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1, D2. 1/55
DettagliAXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori
AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli
DettagliRappresentazione dell informazione
Rappresentazione dell informazione La codifica delle informazioni codifica forma adatta per essere trattata dall elaboratore INFORMAZIONI DATI interpretazione 2 Informazioni Numeri Immagini fisse Interi
DettagliInformatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione
Informatica 3 LEZIONE 1: Introduzione Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Informatica 3 Lezione 1- Modulo 1 Introduzione al corso Introduzione Corso di Informatica 3
DettagliArchitettura dei Calcolatori elettronici
Architettura dei Calcolatori elettronici CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II Dal punto di vista architetturale un calcolatore
DettagliIl Linguaggio Assembly
Il Linguaggio Assembly Luca Abeni March 16, 2016 Linguaggio Macchina ed Assembly CPU: capisce (e riesce ad eseguire) solo il suo linguaggio macchina Sequenza di 0 e 1 Non proprio utilissimo per noi umani...
DettagliMacchine Astratte. Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari. Linguaggi di Programmazione feb, 2016
Macchine Astratte Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari Linguaggi di Programmazione 010194 29 feb, 2016 Sommario 1 Introduzione Macchina astratta Interprete Implementazione
DettagliEsercizio 1.A Aritmetica binaria (nel presentare le soluzione è necessario mostrare, almeno nei passaggi fondamentali, i calcoli eseguiti) (8 punti)
Cognome e Nome: Matr.: Architettura degli Elaboratori per TWM. Primo compitino - A 15 febbraio 2011 Esercizio 1.A Aritmetica binaria (nel presentare le soluzione è necessario mostrare, almeno nei passaggi
DettagliUn quadro della situazione. Lezione 14 Il Set di Istruzioni (2) Dove siamo nel corso. I principi di progetto visti finora. Cosa abbiamo fatto
Un quadro della situazione Lezione 14 Il Set di Istruzioni (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 5 Rappresentazione delle informazioni
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 5 Rappresentazione delle informazioni Marco Liverani (liverani@mat.uniroma3.it)
DettagliPROBLEMI E ALGORITMI
Fondamenti di Informatica PROBLEMI E ALGORITMI Fondamenti di Informatica - D. Talia - UNICAL 1 Specifica di un algoritmo Primo approccio, scrittura diretta del programma: la soluzione coincide con la codifica
DettagliParte VI. Istruzioni ed indirizzamento
Parte VI Istruzioni ed indirizzamento VI.1 Il livello ISA (Instruction Set Architecture) È il livello più basso a cui il microprocessore può essere programmato Nasconde i dettagli della microarchitettura
DettagliInformatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione
Informatica 3 Informatica 3 LEZIONE 1: Introduzione Lezione 1- Modulo 1 Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Introduzione al corso Politecnico di Milano - Prof. Sara Comai
DettagliLa CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2
La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri
DettagliLivello microarchitettura. Corso di. Architetture degli Elaboratori. Central Processing Unit (richiamo) Esempio: una microarchitettura per IJVM
Corso di Architettura degli Elaboratori Livello microarchitettura Il livello della microarchitettura: data path e formato delle microistruzioni Studio del Livello 1: ha il compito di interpretare il livello
DettagliIl set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini
Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliL'architettura del processore MIPS
L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento
DettagliArchitettura del processore e esecuzione delle istruzioni
Architettura del processore e esecuzione delle istruzioni Prof. CAPEZIO Francesco Quest'opera è soggetta alla licenza Creative Commons Attribuzione Non Commerciale Introduzione Il compito di un processore
DettagliParte VI. Istruzioni ed indirizzamento
Parte VI Istruzioni ed indirizzamento VI.1 Instruction Set Architecture Il livello ISA è l interfaccia tra HW e SW È il livello più basso a cui il processore è programmabile Criteri di scelta: Semplicità
DettagliInformatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.
Trasferimento Ambiente esterno Controllo Informatica Mario Pavone - Dept. Mathematics & Computer Science - University of Catania mpavone@dmi.unict.it Rappresentazione dell Informazione L informazione viene
DettagliFondamenti di Informatica A. A / 1 9
Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 1 8 / 1 9 Architettura di Von Neumann Architettura di Von Neumann: l Unità di Elaborazione L Unità di Elaborazione L unità di elaborazione (CPU) contiene
DettagliMicroelettronica Corso introduttivo di progettazione di sistemi embedded
Microelettronica Corso introduttivo di progettazione di sistemi embedded Elementi per il progetto di un microprocessore: note prof. Stefano Salvatori A.A. 2017/2018 Eccetto dove diversamente specificato,
DettagliSistemi Operativi. Lezione 3 Processi e Thread
Lezione 3 Processi e Thread Introduzione Sino ai sistemi batch la CPU di un sistema svolgeva un attività, la portava a termine e solo allora avviava un altra attività Con l avvento della multiprogrammazione
DettagliLABORATORIO DI SISTEMI
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,
DettagliMarco Tarini - Università dell'insubria A.A. 2016/17. Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate
Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Astrazione e Macchine Virtuali parte 2: in un tipico calcolatore I livelli nei moderni calcolatori 6. Livello delle applicazioni
DettagliCPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti
Architettura degli Elaboratori e delle Reti Lezione 18 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 18 1/2 Sommario!
DettagliIstruzioni e linguaggio macchina
Istruzioni e linguaggio macchina I linguaggi macchina sono composti da istruzioni macchina, codificate in binario, con formato ben definito processori diversi hanno linguaggi macchina simili scopo: massimizzare
DettagliArchitettura degli Elaboratori - 1. Pagina web del corso. Obiettivi del Corso. Contenuto del Corso. Corso di Laurea in Informatica
Architettura degli Elaboratori - 1 Università degli Studi di Padova Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica docente: Alessandro Sperduti Obiettivi del Corso Descrizione dell architettura
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione E una notazione con cui e possibile descrivere gli algoritmi. Programma: e la rappresentazione di un algoritmo in un particolare linguaggio di programmazione. In generale, ogni
DettagliArchitettura e funzionamento del calcolatore
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Università degli Studi di Udine Architettura e funzionamento del calcolatore Modello di calcolatore Si farà uso di un modello semplificato di elaboratore
DettagliEsercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti)
Cognome e Nome: Matr.: Architettura degli Elaboratori Inf A 3 febbraio 2016 Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti)
DettagliIl Processore. Informatica di Base -- R.Gaeta 27
Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
DettagliCalcolatori Elettronici
Calcolatori Elettronici Il linguaggio assemblativo MIPS (1) Istruzioni di ALU: operazioni ed operandi Trasferimenti tra memoria e CPU Vettori (1) Le costanti Livelli di astrazione s o f t w a r e H W Linguaggio
DettagliIl set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini
Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliArchitettura di un elaboratore. Il modello di von Neumann
Architettura di un elaboratore Il modello di von Neumann 4(5) componenti fondamentali unita di elaborazione: CPU memoria centrale: RAM periferiche (memoria di massa) bus di sistema bus di sistema CPU RAM
DettagliCapitolo 4 Unità Centrale di Elaborazione Istruzioni Macchina
Calcolatori Elettronici Prof. Ing. Fabio Roli Corsi di Laurea in Ingegneria Elettrica ed Elettronica, Informatica, Ingegneria Biomedica Capitolo 4 Unità Centrale di Elaborazione Istruzioni Macchina Fonti
DettagliSISTEMA DI ELABORAZIONE
SISTEMA DI ELABORAZIONE Una macchina M capace di eseguire programmi scritti in un linguaggio L adeguato DATI P(L) L M Osservazioni: M e' funzionalmente definita da L (L->M) Se L->M e L->M', allora M e'
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.
DettagliModi di indirizzamento del processore MC68000 parte 1
Corso di Calcolatori Elettronici I Modi di indirizzamento del processore MC68000 parte 1 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle
Dettagli