Assembly. Modello x86

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Assembly. Modello x86"

Transcript

1 Assembly Modello x86 1

2 Il microprocessore Un MICROPROCESSORE è un circuito integrato dotato di una struttura circuitale in grado di attuare un prefissato SET di ISTRUZIONI 2

3 Caratteristiche del microprocessore Nel mercato ci sono diversi microprocessori tra loro differenti a livello fisico e software; In comune hanno: La dimensione delle celle di memoria: 1, 2, 4, 8 byte; Il numero ed il tipo di registri interni: 8, 16, 32, 64 bit; L ampiezza dei bus (dati ed indirizzi); Il numero di istruzioni: ridotte (RISC) o complesse (CISC); La dimensione delle istruzioni. 3

4 CPU INTEL 8086 L 8086 è un microprocessore a 16 bit. Le caratteristiche principali sono: Capacità di indirizzamento: 1 MB Bus indirizzi da 20 bit; 14 registri interni da 16 bit; Bus dati da 16 bit; Alimentazione a 5 volt; 48 pin di interconnessione (dual in line); Set di istruzioni esteso (CISC). 4

5 Architettura della CPU 5

6 SEGMENT POINTER GENERAL PURPOSE Registri dell 8086 AX (ACCUMULATOR) BX (BASE) CX (COUNTER) DX (DATA) 15 AH BH CH DH 8-7 AL BL CL DL 0 SP (STACK POINTER) BP (BASE POINTER) SI (SOURCE INDEX) DI (DESTINATION INDEX) SP BP SI DI IP (INSTRUCTION POINTER) IP CS (CODE SEGMENT) DS (DATA SEGMENT) SS (STACK SEGMENT) ES (EXTRA SEGMENT) CS DS SS ES FLAGS FLAGS 6

7 Registri General Purpose AX Accumulatore (diviso in AH e AL) BX Puntatore memoria (diviso in BH e BL) CX Contatore di cicli (diviso in CH e CL) DX Dati (diviso in DH e DL) 7

8 Registri speciali Instruction Register: contiene il codice operativo dell istruzione prelevata dalla memoria durante il fetch; Instruction pointer: contiene l indirizzo di memoria in cui è contenuta l istruzione immediatamente successiva a quella attuale; Stack Pointer: contiene l indirizzo di una zona di memoria interna chiamata Stack; Flag Register: gruppo di bit che forniscono una serie di informazioni sullo stato dei risultati dell ultima operazione. Address Registers: sono i registri che contengono gli indirizzi dei vari segmenti di memoria: Code Segment Data Segment Stack Segment Extra Segment 8

9 Registri Segment CS: Code Segment Register Contiene sempre l indirizzo di testa del segmento contenente il codice; viene inizializzato dal Sistema Operativo e non deve essere utilizzato dal programmatore. SS: Stack Segment Register Contiene sempre l indirizzo di testa del segmento contenente lo stack; viene inizializzato dal Sistema Operativo e non deve essere modificato dal programmatore. DS: Data Segment Register di solito contiene l indirizzo di testa del segmento dei dati utilizzati dal programma; deve essere inizializzato dal programmatore all interno del suo programma. ES: Extra Segment Register può essere utilizzato per definire un segmento ausiliario, per esempio per un ulteriore segmento dati; deve essere inizializzato dal programmatore 9 all interno del suo programma.

10 Registri Pointer SP BP SI DI IP Puntatore alla memoria di Stack (SS:SP) Di solito punta alla memoria di Stack (SS:BP) Puntatore alla memoria del segmento dati (DS:SI) Puntatore alla memoria del segmento dati esteso (ES:DI) Puntatore all indirizzo dell istruzione successiva (CS:IP) 10

11 Gestione della RAM Per comodità la memoria si può pensare divisa in: Paragrafi: Sono zone di memoria costituite da 16B contigui. Il sistema può gestire fino a (64K) paragrafi. I paragrafi sono numerati a partire dalla locazione di memoria00000h. I paragrafi non possono sovrapporsi. Segmenti: Sono zone di memoria costituite da 64KB contigui. Il sistema può gestire fino a (64K) segmenti; Ogni segmento inizia in corrispondenza di un paragrafo, ossia ad un indirizzo multiplo di 16 (10h). I segmenti possono sovrapporsi (Overlapping Segments). 11

12 Paragrafi e segmenti Indirizzo 00000h 00010h 00020h FFFFFh 12

13 Calcolo dell indirizzo fisico L indirizzo fisico di una cella di memoria è espresso da 20 bit; non è quindi possibile un indirizzamento mediante un solo registro a 16 bit. Esso è infatti ottenuto mediante la somma di due contributi: Segment Address: è l indirizzo di testa del segmento e viene ottenuto moltiplicando per 16 il numero del segmento (shift di 4 bit a sinistra). Offset: è l indirizzo relativo all interno del segmento. 13

14 Esempio di indirizzamento INDIRIZZO [SEGMENT:OFFSET] A100:0200 OFFSET SEGMENT A PHYSICAL ADDRESS A

15 Organizzazione della memoria RAM Segmenti Puntatori STACK SEGMENT Stack Segment Stack Offset CODE SEGMENT DATA SEGMENT EXTRA SEGMENT Code Segment Data Segment Extra Segment Code Offset Data Offset Extra Offset 15

16 La memoria di Stack Indirizzo SS:SP E E

17 Flag 17

18 Flag di stato Forniscono indicazioni relative al risultato dell ultima istruzione eseguita. Vengono automaticamente aggiornati dal processore ed il loro valore può essere testato dall utente tramite opportune istruzioni. I principali sono: Carry Flag (CF) indica se un istruzione di somma (o sottrazione) produce un riporto (o un prestito); Parity Flag (PF) indica se il risultato di una operazione contiene un numero pari di 1; usato principalmente per trasmissione dati. Zero Flag (ZF) indica se il risultato di una operazione è un valore nullo; Sign Flag (SF) ripete il valore del bit più significativo del risultato di una operazione; Overflow Flag (OF) indica se un operazione aritmetica dà origine ad una condizione di overflow. 18

19 Flag di controllo Il loro valore può essere forzato dall utente attraverso apposite istruzioni. In determinate situazioni sono testati dal processore che, a seconda del loro valore, si comporta in modi diversi. Trap Flag (TF) usato in ambiente di debug, causa l esecuzione single-step dei programmi Interrupt Enable Flag (IF) usato per disabilitare (quando uguale a 0) eventuali richieste di interruzioni esterne (interrupt) Direction Flag (DF) usato nelle operazioni sulle stringhe per regolare l incremento (DF=0) o il decremento (DF=1) dei Registri Indice 19

20 Modello di programmazione x86 Un modello di programmazione è la parte dell architettura di un microprocessore accessibile al programmatore: registri ed istruzioni L architettura x86 rappresenta il modello di programmazione dei processori 8086 e successivi (80286, 80386, 80486, Pentium, ) detti anche PC compatibili 20

21 Evoluzione dell

22 SEGMENT POINTER GENERAL PURPOSE Registri dell x86 EAX (ACCUMULATOR) EBX (BASE) ECX (COUNTER) EDX (DATA) 31 EAX EBX ECX EDX 15 AH BH CH DH 8-7 AL BL CL DL 0 ESP (STACK POINTER) ESP SP EBP (BASE POINTER) ESI (SOURCE INDEX) EDI (DESTINATION INDEX) EBP ESI EDI BP SI DI EIP (INSTRUCTION PTR) EIP IP CS (CODE SEGMENT) CS DS (DATA SEGMENT) DS SS (STACK SEGMENT) SS ES (EXTRA SEGMENT) ES EFLAGS EFLAGS FLAGS 22

Famiglia dei processori INTEL

Famiglia 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

Dettagli

Nel microprocessore 8086 abbiamo una gran quantità di registri

Nel microprocessore 8086 abbiamo una gran quantità di registri I registri del microprocessore 8086 Nel microprocessore 8086 abbiamo una gran quantità di registri AH AL AX 1 1 1 1 1 1 1 0 0 1 0 1 1 1 0 1 B H B L BX 1 0 1 0 1 0 0 1 1 1 0 1 1 0 1 0 C H C L CX 1 0 1 1

Dettagli

Architettura degli Elaboratori

Architettura 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

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Corso di Laurea Triennale in Informatica Università degli Studi di Bari Laboratorio lez1: il processore 8086/88 Prof. S.Pizzutilo Microprocessori INTEL per il PC 8080 (1974)

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel di terza generazione progetto originario del 1979, ancora oggi interessanti per: motivi didattici: l architettura dei processori Intel

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA 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

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel della terza generazione progetto del 1978/79 address bus: 20 bit Ä 1M byte data bus: 8 bit per l 8088, 16 bit per l 8086 identico

Dettagli

Architettura degli elaboratori (A)

Architettura 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

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel di terza generazione progetto originario del 1979, ancora oggi interessanti per: motivi didattici: l architettura dei processori Intel

Dettagli

Tutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086.

Tutta 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

Dettagli

ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10)

ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) Chip con 40 piedini e 29000 transistori Progettato a metà degli anni 70, periodo in cui la densità di integrazione era relativamente bassa ( solo

Dettagli

Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin

Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin 1 Un po di storia 1978: architettura 8086, a 16 bit, con registri dati a 16 bit e spazio di indirizzamento

Dettagli

Il microprocessore 8086

Il 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

Dettagli

Calcolatori Elettronici Lezione A2 Architettura i8086

Calcolatori Elettronici Lezione A2 Architettura i8086 Calcolatori Elettronici Lezione A2 Architettura i8086 Ing. Gestionale e delle Telecomunicazioni A.A. 2007/08 Gabriele Cecchetti Architettura i8086 Sommario: L i8086 Registri Accesso alla memoria: indirizzi

Dettagli

Architettura 8086/8088

Architettura 8086/8088 Architettura 8086/8088 M. Rebaudengo - M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica 1 M. Sonza Reorda, M. Rebaudengo - a.a. 2007/08 Caratteristiche generali dell'8086 Usa la tecnologia

Dettagli

L insieme delle istruzioni (6)

L 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

Dettagli

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011 Sistemi Operativi Introduzione all architettura IA-32 Lez. 16 1 Microprocessori Intel Nel 1979 Intel introduce la famiglia dei microprocessore 8086 8086, 8087, 8088, e 80186 Processori a 16-bit con registri

Dettagli

Linguaggio Assembler Intel 80x86. Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin

Linguaggio Assembler Intel 80x86. Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin Linguaggio Assembler Intel 80x86 Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin 1 Scopi principali Studiare un ulteriore esempio di linguaggio assembler Saper svolgere semplici programmi

Dettagli

L architettura Intel

L architettura Intel Architettura degli Elaboratori e delle Reti Lezione 33 L architettura Intel Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 33 1/30 Le prime

Dettagli

Architettura di una CPU

Architettura di una CPU Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1

Dettagli

iafelice at cs(dot)unibo(dot)it

iafelice at cs(dot)unibo(dot)it Corso di Archite?ura degli Elaboratori Modulo di Assembly ARCHITETTURA 8088 Bruno Iafelice Università di Bologna iafelice at cs(dot)unibo(dot)it 1 Evoluzione: crescente integrazione ~7% growth per year

Dettagli

Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO. 01/04/03 G. Bucci - Calcolatori Elettoronici 1

Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO. 01/04/03 G. Bucci - Calcolatori Elettoronici 1 Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO 01/04/03 G. Bucci - Calcolatori Elettoronici 1 Giugno 1978: 8086 40 piedini 29.000 transistori f = 5 Mhz CPI = 15

Dettagli

Il livello architettura e set di istruzioni

Il livello architettura e set di istruzioni Corso di Informatica 2 Prof. Sciuto Il livello architettura e set di istruzioni Daniele Paolo Scarpazza Dipartimento di Elettronica e Informazione Politecnico di Milano 7 Giugno 2004 Daniele Paolo Scarpazza

Dettagli

Ing. Gabriele MONTI

Ing. Gabriele MONTI Ing. Gabriele MONTI 1999-2005 8086 www.ingmonti.it 1 Architettura 8086 L'8086, capostipite della famiglia 80X86, fu una dei primi microprocessori a 16 bit. In un 8086 sia il bus dati che la ALU erano a

Dettagli

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ARCHITETTURA 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

Dettagli

Componenti principali

Componenti principali Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria

Dettagli

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria

Dettagli

Parte VI. Istruzioni ed indirizzamento

Parte 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à

Dettagli

Consegne estive per gli studenti con sospensione del giudizio nella materia Sistemi per l'elaborazione e la trasmissione dell'informazione.

Consegne estive per gli studenti con sospensione del giudizio nella materia Sistemi per l'elaborazione e la trasmissione dell'informazione. Consegne estive per gli studenti con sospensione del giudizio nella materia Sistemi per l'elaborazione e la trasmissione dell'informazione. Facendo esclusivamente uso delle istruzioni del linguaggio macchina

Dettagli

Hardware di un Computer

Hardware 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,

Dettagli

Parte V. Il Livello delle Istruzioni Macchina

Parte 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à

Dettagli

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

Dettagli

Scopo 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 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

Dettagli

Sistemi x86 CALCOLATORI ELETTRONICI LM

Sistemi x86 CALCOLATORI ELETTRONICI LM Sistemi x86 CALCOLATORI ELETTRONICI LM 1 Registri x86 31 15 8 7 AH AX AL EAX 31 IP BH BX BL EBX CH CX DH DX CL DL ECX EDX 31 FLAGS EF SI ESI DI EDI BP EBP 15 8 7 SP CS SS DS ESP Sono presenti anche i registri

Dettagli

Lezione XII: La gestione delle eccezioni in MINIX

Lezione XII: La gestione delle eccezioni in MINIX 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 4 aprile 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Il 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

Dettagli

ARCHITETTURA DEI CALCOLATORI VOLUME I

ARCHITETTURA DEI CALCOLATORI VOLUME I Graziano Frosini ARCHITETTURA DEI CALCOLATORI VOLUME I ASSEMBLER E CORRISPONDENZA FRA C++ E ASSEMBLER CON RIFERIMENTO AL PERSONAL COMPUTER E ALL AMBIENTE DI PROGRAMMAZIONE DJGPP Copyright MMIX ARACNE editrice

Dettagli

Interazione con il DOS e il BIOS

Interazione con il DOS e il BIOS Interazione con il DOS e il BIOS ARGOMENTI PRESENTATI IN QUESTI LUCIDI Routine di BIOS e DOS Due modalità diverse di restituire il controllo al DOS L interazione con le routine del DOS: l interrupt 21H

Dettagli

Cenni ad Assembly Intel

Cenni ad Assembly Intel Cenni ad Assembly Intel Luca Abeni April 17, 2015 Architerrura Intel Utilizzata sulla maggior parte dei laptop, desktop e server moderni Lunga storia Dagli anni 70 (Intel 8080-8 bit!)......fino ad oggi

Dettagli

Breve guida AL LINGUAGGIO ASSEMBLY (emulatore EMU8086)

Breve guida AL LINGUAGGIO ASSEMBLY (emulatore EMU8086) PROF. CARMELO CALARCO Breve guida AL LINGUAGGIO ASSEMBLY (emulatore EMU8086) 1 IL LINGUAGGIO ASSEMBLY Il linguaggio assembly è un linguaggio di programmazione a basso livello. Per linguaggi di basso livello

Dettagli

Esercizi per il recupero del debito formativo:

Esercizi per il recupero del debito formativo: ANNO SCOLASTICO 2005/2006 CLASSE 4 ISC Esercizi per il recupero del debito formativo: Facendo esclusivamente uso delle istruzioni del linguaggio macchina mnemonico del microprocessore INTEL 8086 viste

Dettagli

Modi di indirizzamento

Modi di indirizzamento Vari modi di specificare l indirizzo degli operandi Modi di indirizzamento Capitolo 11 Immediato Diretto Indiretto Registro Registro indiretto Spiazzamento Pila 1 2 Indirizzamento immediato L operando

Dettagli

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.

Accesso 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

Dettagli

HARDWARE E SOFTWARE DEL µp 8086

HARDWARE E SOFTWARE DEL µp 8086 HARDWARE E SOFTWARE DEL µp 8086 Dispensa interna Istituto Tecnico Industriale M. Panetti BARI Premessa Un sistema a µp si può pensare costituito da due strutture: una software e l altra hardware. Esse

Dettagli

Macchina di Riferimento: argomenti

Macchina 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

Dettagli

Sistemi Operativi 1. Mattia Monga. 6 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. 6 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 6 marzo 2007 1 c 2007 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

I.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 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,

Dettagli

Programmazione Assembly Note su Microsoft Assembler

Programmazione Assembly Note su Microsoft Assembler Programmazione Assembly Note su Microsoft Assembler Giacomo Fiumara giacomo.fiumara@unime.it Anno Accademico 2012-2013 1 / 254 Microsoft Assembler Masm32.com installare configurare path perchè contenga

Dettagli

Programmazione Assembly

Programmazione Assembly Programmazione Assembly Giacomo Fiumara giacomo.fiumara@unime.it Anno Accademico 2013-2014 1 / 205 La famiglia dei processori Pentium Processore 4004 (1969) bus indirizzi a 12 bit bus dati a 4 bit Processore

Dettagli

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore

Dettagli

Architettura dei Calcolatori elettronici

Architettura 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

Dettagli

Il linguaggio assembly

Il linguaggio assembly Il linguaggio assembly Introduzione al linguaggio macchina Indice Che cos è l assembly Elementi del linguaggio Memoria di programma Registri interni e di I/O Registri particolari Rappresentazione dell

Dettagli

MDR MAR IR RN ALU PC FLAG DATA BUS BANCO DEI REGISTRI ADDRESS BUS MODELLO DI PROGRAMMAZIONE(A REA ACCESSIBILE DECODIFICA DELLE ISTRUZIONI CLOCK

MDR MAR IR RN ALU PC FLAG DATA BUS BANCO DEI REGISTRI ADDRESS BUS MODELLO DI PROGRAMMAZIONE(A REA ACCESSIBILE DECODIFICA DELLE ISTRUZIONI CLOCK DATA BUS ADDRESS BUS MDR MAR R1 R2 R3 BANCO DEI REGISTRI IR RN MODELLO DI ID PROGRAMMAZIONE(A REA DECODIFICA DELLE ISTRUZIONI ACCESSIBILE CLOCK ALU CONTROL BUS CU RESET INCREMENTO PC FLAG SEZIONE DI CONTROLLO

Dettagli

La 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 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

Dettagli

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO ARCHITETTURA DI UN CALCOLATORE ELETTRONICO Per architettura di un calcolatore elettronico si intende l'insieme delle principali unità funzionali di un calcolatore ed il modo in cui queste interagiscono.

Dettagli

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU: Struttura e Funzione del Processore Capitolo 12 Struttura CPU Compiti CPU: Prelevare istruzioni Interpretare istruzioni Prelevare dati Elaborare dati Scrivere (memorizzare) dati 1 CPU con bus di sistema

Dettagli

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003 Il Ciclo Fetch-Decode-Execute C Nyssen/Aberdeen College 2003 Linguaggio Assembler Op code (Mnemonico) Operando #assembly code program 0000 LDA-24 #loads 0001 ADD-25 #adds 0002 HLT #stops #end of program

Dettagli

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA Lezione n.11 n.11 Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di base relativi

Dettagli

Il linguaggio assembly 8086

Il 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

Dettagli

Programmazione Assembly per 8088: Esercizi svolti

Programmazione Assembly per 8088: Esercizi svolti Programmazione Assembly per 8088: Esercizi svolti Marco Di Felice 13 dicembre 2006 1 Esercizio 1 (esercizio 1 del Tanenbaum, Appendice C) TESTO. Dopo l esecuzione dell istruzione MOV AX, 702 qual è il

Dettagli

FONDAMENTI DI INFORMATICA Lezione n. 11

FONDAMENTI DI INFORMATICA Lezione n. 11 FONDAMENTI DI INFORMATICA Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di

Dettagli

Il processore Pentium (G. Manduchi - M. Moro - 2001)

Il processore Pentium (G. Manduchi - M. Moro - 2001) Il processore Pentium (G. Manduchi - M. Moro - 2001) Il processore Pentium (introdotto nel 1993) rappresenta l evoluzione della linea di processori Intel formata dalla serie 8086/88, 80286, Intel386 DX

Dettagli

Il processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler.

Il processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler. Il processore N.12 Struttura di base di un microprocessore Il microprocessore (detto comunemente CPU, per Central Processing Unit) è preposto al coordinamento di tutte le componenti che formano l'architettura

Dettagli

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il processore. Istituzionii di Informatica -- Rossano Gaeta 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

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE memoria centrale Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). John von Neumann (Neumann János) (December 28, 1903

Dettagli

Il microprocessore DMC8

Il microprocessore DMC8 Il microprocessore DMC8 Fig. 1: Registri ed elementi di calcolo del DMC8 PC 16 bit Program Counter In altri contesti è chiamato anche Instruction Pointer. Questo registro a 16 bit contiene l indirizzo

Dettagli

Architettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica

Architettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architettura e funzionamento del calcolatore 20 Pier Luca Montessoro (si veda la nota di copyright

Dettagli

CALCOLATORI ELETTRONICI II

CALCOLATORI ELETTRONICI II CALCOLATORI ELETTRONICI II L INTERFACCIA PARALLELA Argomenti della lezione Le interfacce parallele Il dispositivo Intel 855 Architettura Funzionamento Le interfacce parallele Esempio Le interfacce parallele

Dettagli

CAPITOLO 4: BASI DI ASSEMBLY

CAPITOLO 4: BASI DI ASSEMBLY CAPITOLO 4: BASI DI ASSEMBLY x86 Un giorno a qualcuno venne in mente di creare un processore 8086, che si è poi evoluto ed è diventato il più veloce 80286, meglio conosciuto come 286, che a sua volta ha

Dettagli

PASSI DI SVILUPPO DI UN PROGRAMMA: ESEMPIO

PASSI DI SVILUPPO DI UN PROGRAMMA: ESEMPIO PASSI DI SVILUPPO DI UN PROGRAMMA: ESEMPIO Programma diviso in due moduli: MA.ASM: programma pricipale e funzioni di utilità MB.ASM: sottoprogramma di elaborazione Primo modulo: MA.ASM EXTRN alfa: BYTE

Dettagli

Componenti di un processore

Componenti di un processore Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria

Dettagli

Il Processore: l unità di controllo

Il Processore: l unità di controllo Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di

Dettagli

SET/CLEAR LOAD DATA FROM STRING

SET/CLEAR LOAD DATA FROM STRING SET/CLEAR STD CLD AZIONE: Imposta ad 1 (STD) o a zero (CLD) il valore del flag DF. Sono istruzioni senza parametri. Vanno sempre messi!! FLAG di cui viene modificato il contenuto: Nessuno (a parte DF).

Dettagli

Lezione 15. L elaboratore Elettronico

Lezione 15. L elaboratore Elettronico Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente

Dettagli

Set di istruzioni Z80 (quarta parte) Pagina 1 di 9 ISTRUZIONI DI SALTO

Set di istruzioni Z80 (quarta parte) Pagina 1 di 9 ISTRUZIONI DI SALTO Set di istruzioni Z80 (quarta parte) Pagina 1 di 9 ISTRUZIONI DI SALTO JP pq E un istruzione di salto assoluto incondizionato. Per salto assoluto si intende il fatto che grazie a quest istruzione, il contenuto

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchiana di Von Neumann: Non distingueva fra RAM

Dettagli

Informatica (A-K) 3. Architettura del Computer

Informatica (A-K) 3. Architettura del Computer L architettura del computer Informatica (A-K) 3. Architettura del Computer Corso di Laurea in Ingegneria Civile & Ambientale A.A. 2011-2012 2 Semestre Prof. Giovanni Pascoschi a cura di Pascoschi Giovanni

Dettagli

1.8 Architettura interna della CPU

1.8 Architettura interna della CPU Architettura interna della CPU 1.8 Architettura interna della CPU In questa unità viene analizzata l architettura interna di un CPU di tipo Von Neumann da un punto di vista sistemico, cioè attraverso schemi

Dettagli

Microcontrollori 12/03/2014. Progettazione Sistemi Elettronici 2013/2014 1

Microcontrollori 12/03/2014. Progettazione Sistemi Elettronici 2013/2014 1 Microcontrollori 2013/2014 1 Microcontrollori 2013/2014 2 Microcontrollori CPU Instruction set -CISC Complex Instruction Set Computing (Intel x86 family; Motorola 680x0) -RISC Reduced Instruction Set computer

Dettagli

Numeri Reali. Sottoinsieme discreto dei Numeri Razionali. Sequenze di bit. Underflow. Densità che dipende dal numero di bit usati

Numeri Reali. Sottoinsieme discreto dei Numeri Razionali. Sequenze di bit. Underflow. Densità che dipende dal numero di bit usati Numeri Reali Sottoinsieme discreto dei Numeri Razionali Sequenze di bit Overflow Underflow Overflow 0 Densità che dipende dal numero di bit usati 1 Numeri Reali Virgola fissa (1/5) Si usa un numero fisso

Dettagli

Architettura di un calcolatore: Introduzione parte 2

Architettura 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

Dettagli

Calcolatori Elettronici Parte VII: il Livello delle Istruzioni Macchina

Calcolatori Elettronici Parte VII: il Livello delle Istruzioni Macchina Anno Accademico 2013/2014 Calcolatori Elettronici Parte VII: il Livello delle Istruzioni Macchina Prof. Riccardo Torlone Universita Roma Tre Instruction Set Architecture Il livello ISA è l interfaccia

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica L architettura del computer Fondamenti di Informatica 3. Architettura del Computer Corso di Laurea in Ingegneria Informatica e dell Automazione A.A. 2012-2013 2 Semestre Prof. Giovanni Pascoschi 2 Sommario

Dettagli

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina

Dettagli

1 Esercizi con architettura a 1 bus

1 Esercizi con architettura a 1 bus 1 Esercizi con architettura a 1 bus 1.1 Fetch dell istruzione NOTA: l istruzione ClearY azzera il registro Y mentre l istruzione CB imposta a 1 il bit di riporto/prestito in modo da sommare/sottrarre 1.

Dettagli

ARCHITETTURA DI UN SISTEMA A MICROPROCESSORE

ARCHITETTURA 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

Dettagli

Istruzioni di modifica della sequenza di elaborazione

Istruzioni 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

Dettagli

Lezione4: MIPS e Istruzioni (1 Parte)

Lezione4: MIPS e Istruzioni (1 Parte) Architettura degli Elaboratori Lezione4: MIPS e Istruzioni (1 Parte) Michele Nappi mnappi@unisa.it http://www.biplab.unisa.it/ Alcune slide di questa lezione sono prodotte dal Prof. Luigi Palopoli AGENDA

Dettagli

PROGRAMMAZIONE MISTA. G. Frosini Programmazione mista Slide 1

PROGRAMMAZIONE MISTA. G. Frosini Programmazione mista Slide 1 PROGRAMMAZIONE MISTA G. Frosini Programmazione mista Slide 1 Caratteristiche del processore PC Processore PC (Processore Completo): processore didattico; schematizzazione (software compatibile) dei processori

Dettagli

Introduzione ai Sistemi Operativi

Introduzione ai Sistemi Operativi Introduzione ai Sistemi Operativi Scopo di questa parte del corso e : introdurre i concetti principali dei sistemi operativi, identificare i requisiti hardware necessari alla gestione dei processi e del

Dettagli

Gestione della memoria centrale. Marco Cesati. Schema della lezione. Memoria centrale. Linux su Intel IA-32 SO Gestione della memoria centrale

Gestione della memoria centrale. Marco Cesati. Schema della lezione. Memoria centrale. Linux su Intel IA-32 SO Gestione della memoria centrale Di cosa parliamo in questa lezione? Lezione 7 La gestione della Sistemi operativi 1 Schemi di indirizzamento della 2 La segmentazione 3 La paginazione 9 maggio 2017 4 System Programming Research Group

Dettagli

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) 1^ parte Cosa è Arduino? Arduino è una piattaforma di sviluppo open-source basata su una semplice scheda

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio 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

Dettagli

A.S. 2017/2018 PIANO DI LAVORO PREVENTIVO CLASSE 4Be

A.S. 2017/2018 PIANO DI LAVORO PREVENTIVO CLASSE 4Be A.S. 2017/2018 PIANO DI LAVORO PREVENTIVO CLASSE 4Be Docenti Disciplina Cinzia Brunetto, Antonino Cacopardo SAE Sistemi Automatici Elettronici Competenze disciplinari di riferimento Il percorso formativo

Dettagli

Il processore Pentium

Il processore Pentium Caratteristiche principali (I) Architettura interna a 32 bit Address bus a 32 bit: si possono indirizzare fino a 4 GB di memoria fisica Data bus a 64 bit (si tratta in pratica di 2 data bus a 32 bit in

Dettagli

Programmazione A.A Architettura dei Calcolatori. ( Lezione V ) Componenti hardware e loro schema funzionale

Programmazione A.A Architettura dei Calcolatori. ( Lezione V ) Componenti hardware e loro schema funzionale Programmazione A.A. 2002-03 I Architettura dei Calcolatori ( Lezione V ) Componenti hardware e loro schema funzionale Prof. Giovanni Gallo Dr. Gianluca Cincotti Dipartimento di Matematica e Informatica

Dettagli

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 15. Corso: Sistemi Operativi Danilo Bruschi A.A. 2014/2015

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 15. Corso: Sistemi Operativi Danilo Bruschi A.A. 2014/2015 Sistemi Operativi Introduzione all architettura IA-32 Lez. 15 1 Microprocessori Intel Nel 1979 Intel introduce la famiglia dei microprocessore 8086 8086, 8087, 8088, e 80186 Processori a 16-bit con registri

Dettagli

Set Istruzioni della CPU. Classificazione del set istruzioni Modi di indirizzamento

Set Istruzioni della CPU. Classificazione del set istruzioni Modi di indirizzamento Set Istruzioni della CPU Classificazione del set istruzioni ---------------------------- Modi di indirizzamento Classificazione del set Istruzioni Organizzazione. Il set istruzioni dei mp della famiglia

Dettagli

CLASSIFICAZIONE DEI SISTEMI DI ELABORAZIONE AUTOMATICA DELL INFORMAZIONE

CLASSIFICAZIONE DEI SISTEMI DI ELABORAZIONE AUTOMATICA DELL INFORMAZIONE APPUNTI DI SISTEMI rancesco Longo 4 ISC CLASSIICAZIONE DEI SISTEMI DI ELABORAZIONE AUTOMATICA DELL INORMAZIONE 1 SISTEMI CONVENZIONALI (Von Neumann) Sistemi che eseguono un programma già memorizzato nella

Dettagli

Il linguaggio macchina

Il linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 16 Il linguaggio macchina Proff. A. Borghese, F. Pedeini Dipaimento di Scienze dell Informazione Univeità degli Studi di Milano L 16 1/33 Linguaggio

Dettagli