Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Ciclo macchina - Teknopedia
Ciclo macchina - Teknopedia
Niente fonti!
Questa voce o sezione sull'argomento computer non cita le fonti necessarie o quelle presenti sono insufficienti.

Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti.
Schema architetturale a blocchi di un generico processore

In informatica ed elettronica, il ciclo macchina o ciclo fetch-decode-execute è un algoritmo che descrive in via generale e semplificata il funzionamento dei processori. Viene utilizzato in modo particolare come riferimento iniziale nella progettazione di CPU.

In termini generali un processore è una macchina a stati finiti che esegue a ciclo continuo la stessa sequenza di tre operazioni:

  • recupero di un'istruzione (instruction fetch) dalla memoria programma;
  • decodifica (decode) ovvero "interpretazione" dell'istruzione ed attivazione delle funzioni associate;
  • esecuzione (execute) dell'istruzione e memorizzazione del risultato.

L'esecuzione comporta l'invio di segnali di controllo a un certo numero di unità interne del processore, a seconda dell'istruzione da eseguire. Alla fine del processo il Program Counter (PC) viene incrementato per puntare all'istruzione successiva (se presente).

Descrizione

[modifica | modifica wikitesto]
Diagramma di flusso del ciclo macchina

Fase 1: Recupero dell'istruzione

[modifica | modifica wikitesto]

All'inizio di ogni ciclo la CPU carica l'istruzione da eseguire facendo riferimento al Program Counter (PC), ovvero il registro che tiene traccia dell'istruzione da eseguire. Il codice dell'istruzione viene così trasferito dalla memoria programma mediante Data Bus nel Memory Data Register (MDR). Il valore dalla MDR è poi depositato nell'Instruction Register (IR), un circuito che trattiene l'istruzione temporaneamente così che possa essere decodificata ed eseguita. Il Program Counter aumenta di 1 l'indirizzo contenuto in memoria (ad esempio da 1000 passa a 1001), per indicare che la prossima istruzione sarà contenuta all'interno di questa nuova cella di memoria.

Fase 2: Decodifica

[modifica | modifica wikitesto]

La CPU legge l'indirizzo dalla memoria principale se l'istruzione ha un indirizzo indiretto. Dopodiché carica i dati richiesti dalla memoria principale per poi essere processati e depositati all'interno dei registri. Dall'Instruction Register, l'istruzione è decodificata dall'Unità di Controllo (Control Unit). Eventuali indirizzi di memoria in cui leggere o scrivere dati sono contenuti nel MEM register, un ulteriore registro oltre l'Instruction Register.

Fase 3: Esecuzione

[modifica | modifica wikitesto]

A questo punto, se l'istruzione decodificata è tale da portare i dati memorizzati precedentemente nell'Instruction Register all'interno dei registri della ALU, i dati possono essere manipolati da quest'ultima: in generale il dato nuovo viene scritto mediante "scrittura distruttiva" in uno dei registri stessi della ALU, il che comporta la perdita eventuale di dati precedentemente memorizzati nello stesso registro. Nel caso invece l'istruzione non prevedesse la manipolazione, ma solo la scrittura di una cella o la sua lettura, l'ALU non viene interpellata. Se l'azione è terminata con successo, il ciclo può allora ricominciare.

Bibliografia

[modifica | modifica wikitesto]
  • David Andrew Patterson e John LeRoy Hennessy, Struttura e progetto dei calcolatori, a cura di Alberto Borghese, 5ª ed., Bologna, Zanichelli, 2015, ISBN 978-88-08-35202-6.
  • Andrew Stuart Tanenbaum, Architettura dei calcolatori. Un approccio strutturale, Amsterdam, Pearson, 2006, ISBN 88-7192-271-9.

Voci correlate

[modifica | modifica wikitesto]
  • Unità di elaborazione centrale
  • Architettura di un processore basato su registri generali
  • Clock

Altri progetti

[modifica | modifica wikitesto]

Altri progetti

  • Wikimedia Commons
  • Collabora a Wikimedia Commons Wikimedia Commons contiene immagini o altri file sul ciclo di fetch-execute

Collegamenti esterni

[modifica | modifica wikitesto]
  • Filmato audio (EN) Tom Scott, The Fetch-Execute Cycle: What's Your Computer Actually Doing?, su YouTube, 19 luglio 2019. URL consultato il 22 novembre 2023.
  • (EN) Denis Howe, fetch-execute cycle, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
  Portale Informatica: accedi alle voci di Teknopedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=Ciclo_macchina&oldid=148176024"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022