Istruzioni Riferimento alla memoria

Slides:



Advertisements
Presentazioni simili
Circuiti Aritmetico-Logici
Advertisements

Organizzazione della memoria
Università degli Studi di Napoli Federico II Facoltà di Ingegneria Dipartimento di Informatica e Sistemistica Corso di Sistemi ad elevate prestazioni –
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
Virtual CPU - Eniac Dr.ssa Veronica Marchetti
Caratteristiche principali dell’architettura del processore MIPS
Esercizio Esame Un processore PD32 è interfacciato a due periferiche di input A e B, e ad un DMAC il quale puo’ gestire trasferimento di dati da B verso.
Il processore PD32.
Schema di principio del SCA di una MMU Memory Management Unit
Criticità sui dati (1° esempio)
Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Corso di Informatica Applicata Lezione 3 Università degli studi di Cassino Corso di.
Il livello Microarchitetturale

Il Linguaggio Macchina
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi Metà anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Il calcolatore Stefano Cagnoni e Monica Mordonini Dipartimento.
L’Architettura del Sistema di Elaborazione
Microprocessore Intel 8086
Introduzione al linguaggio assembly del microprocessore a parte
Introduzione al linguaggio assemby del microprocessore a parte
I vettore interruzioni
Istruzioni per la Manipolazione dei Bit
Architetture dei Calcolatori (Lettere j-z ) Il Processore
Architettura del calcolatore
Strutture di Controllo
Dimitri Caruso Classe 2^ Beat ISIS G. Meroni Anno Scolastico 2007/08
Introduzione al linguaggio assembly del microprocessore a parte
ARCHITETTURA DI UN ELABORATORE
LOGICA DI FUNZIONAMENTO
Unità centrale di processo

Università degli Studi di Napoli “Federico II” Facoltà di Ingegneria Dipartimento di Informatica e Sistemistica Corso di Sistemi ad elevate prestazioni.
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda L’Assembler 8086 Istruzioni per.
Luca Orrù 1 Input/Output. 2 SOMMARIO Organizzazione di sistema Trasferimento dati; Gestione I/O.
La rappresentazione delle informazioni in un computer Seconda parte.
La rappresentazione delle informazioni in un computer [Terza parte]
Arch. Elab. - S. Orlando 1 Esercitazione su Instruction Level Parallelism Salvatore Orlando.
Architettura di una CPU
Il µP Intel 8086 Marco Lettieri 3 C Informatica A.S. 2009/2010 All’attenzione del Professor Claudio Gatto.
Tesina di fine corso Argomento: Corso: Professore: Autori:
3  Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione  elaborazione dati  memorizzazione dati 
Informatica A.A. 2009/2010 Parte 2 L’Elaboratore Corso A: Prof. Stefano Berardi Corso B: Prof. Ugo de’ Liguoro
Calcolatori Elettronici Il Processore
Architettura IA - 16 M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Calcolatori Elettronici Il Processore (2)
CALCOLATORI ELETTRONICI
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata Instruction Set Architecture (2) Istruzioni I-type Indirizzamento.
Esempi domande primo compitino Claudia Raibulet
Architettura di un calcolatore e linguaggio macchina.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
2 bits di mantissa e 3 di esponente = 0 =
Fondamenti di Informatica1 Linguaggi Diversi tipi di linguaggi: –Imperativi –Funzionali –Dichiarativi Tutti basati sulla traduzione nell'unico linguaggio.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Architettura IA - 16 M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
Come esegue le istruzioni il microprocessore Un’istruzione è sempre composta da più operazioni elementari.
Il Processore Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo.
Riassunto INIZIO LEGGI DATO1 SOMMA DATO2 SCRIVI RISUL DATO1 DEFB 5 DATO2 DEFW 7 RISULT DEFB ? FINE ;trasferisce il contenuto della locazione di indirizzo.
Presentazione di sistemi Ambrosio Federica Anna Esposito 3C inf.
Università degli Studi di Roma – Tor Vergata Facoltà di Ingegneria – Corso di Laurea in Ingegneria Medica Azione delle istruzioni.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Introduzione ai Microcontrollori Una prima definizione I microcontrollori sono utilizzati per gestire segnali in ingresso (input utente o da sensori),
Architettura e funzionalità
Cammino dei Dati (Datapath)
ALU (Arithmetic Logic Unit)
Relazioni tra CPU e Memoria e Dispositivi I/O
Transcript della presentazione:

Istruzioni Riferimento alla memoria Codice 0XXX 1XXX 2XXX 3XXX 4XXX 5XXX 6XXX Descrizione AC M[XXX] M[XXX]  AC AC AC+ M[XXX] AC AC AND M[XXX] PC  XXX If M[XXX] =0 then PC PC+1 If M[XXX] >0 then PC PC+1 Mnemonico LD XXX ST XXX ADD XXX AND XXX JMP XXX SKZ XXX SKP XXX

Istruzioni Riferimento ai registri Codice 8xxx 9xxx Axxx Bxxx Cxxx Descrizione AC AC’ AC 0 ACAC+1 V0 If V=1 then PCPC+1 Mnemonico CMP CLA INC CLV SKV   dove V è un flag che vale 1 se vi è un overflow in ADD

BUS E DATA FLOW ALU ADD bus (12 bit) Memoria LD INC CLR LD AC IR(16 bit) Data Reg (MBR) (16 bit) PC (12 bit) Mem Addr Reg (MAR) (12 bit) ADD bus (12 bit) DATA bus (16 bit) Memoria CS R/W BUS E DATA FLOW ALU

Realizzazione di macro istruzioni per una AC based CPU Utilizzando una CPU con un limitato set di istruzioni è possibile realizzare delle istruzioni più complesse scomponendole in istruzioni elementari eseguibili dalla CPU. Es.1: Realizzare una macro che esegue il salto condizionale a una certa locazione di memoria (XXX) se un dato contenuto in una locazione (YYY) è diverso da zero. Il mnemonico della macro è : JNZ XXX,YYY. La CPU esegue le istruzioni elementari di salto (JMP XXX) e di skip condizionale (SKZ YYY) JMPZ XXX,YYY: SKZ YYY JMP XXX Se YYY è diverso da zero eseguo l’operazione di JMP Se YYY è zero non eseguo l’operazione di JMP

Es.2: Realizzare una macro che esegue l’OR bit a bit tra una locazione di memoria XXX e il contenuto dell’accumulatore. Il mnemonico della macro è : OR XXX. La CPU esegue le istruzioni elementari di complemento dell’accumulatore(CMP) e di AND bit a bit tra l’accumulatore e una locazione di memoria (AND XXX). Utilizzando De Morgan l’operazione di OR può essere scritta come: A+B = A·B OR XXX: CMP ST TEMP LD XXX AND TEMP Complemento AC Memorizzo AC Carico XXX sull’accumulatore Complemento il valore che era contenuto in XXX Eseguo l’AND tra AC e XXX Complemento il risultato dell’ operazione di AND N.B.: La realizzazione della macro utilizza una locazione di memoria aggiuntiva (TEMP), che dopo l’esecuzione della macro contiene un valore diverso dall’inizio. Si deve tenere conto di tale effetto collaterale (Side Effect) evitando di utilizzare la locazione TEMP per contenere dei dati!

Es.3: La CPU esegue le addizioni tra operandi a 16 bit utilizzando l’operazione ADD(XXX). Tale operazione esegue: AC AC + M[XXX] Per eseguire somme tra operandi con lunghezza multipla di 16 bit si può utilizzare una istruzione di somma con riporto (ADC XXX) che esegue: AC AC + M[XXX] +V Dove V è il flag di carry. Definiamo due operandi A e B a 32 bits memorizzate nelle locazioni XXX e XXX+1 e YYY e YYY+1. carry A AL AH BL BH B AL AH BL BH + + CL CH = XXX+1 XXX YYY+1 YYY La somma a 32 bits può essere eseguita nel seguente modo: Carico i 16 bits meno significativi di A (AL) LD XXX ADD YYY LD (XXX+1) ADC (YYY+1) Eseguo la somma tra AL e BL Carico i 16 bits più significativi di A (AH) Eseguo la somma tra AH e BH tenendo conto del riporto

Es.3: Nel caso la CPU non abbia a disposizione un’istruzione di ADC(XXX) essa si può realizzare con una macro: ADC XXX: SKV JMP L1 INC L1:ADD XXX Controlla il flag di carry: Se è 0 esegui AC AC+M[XXX] Se il flag di carry è 1 esegui AC AC+1