Come programmare in Assembler

tramite: O2O
Difficoltà: media
17

Introduzione

L'Assembler, o Assembly, è un linguaggio di programmazione a basso livello, ovvero più vicino alla macchina, perciò molto più complicato da utilizzare per il programmatore, in quanto, per poter effettuare elaborazioni, elementari per i linguaggi ad alto livello, è necessaria una serie di operazioni, riguardanti la gestione dello stato dei registri. Nei passi seguenti verranno chiariti i concetti di base della programmazione in Assembler e verrà illustrato come programmare alcune semplici applicazioni Assembly per qualunque CPU.

27

Occorrente

  • CPU
37

Registri per la programmazione in Assembler

Innanzitutto, essendo un linguaggio di basso livello, è strettamente legato al tipo di macchina su cui viene eseguito il codice. Ciò significa che l'Assembler per un tipo di CPU è diverso da quello di un altro. Uno dei registri fondamentali per la programmazione in Assembler è il PC, ovvero Program Counter, contenente il puntatore alla prossima istruzione da eseguire. Più precisamente, l'indirizzo puntato dal Program Counter non è propriamente quello dell'istruzione successiva da eseguire, ma dell'istruzione da prelevare in memoria. Un altro registro importante in Assembler è lo Status Register, che mantiene lo stato della CPU, in modalità utente o amministratore.

47

Altri registri

Altri registri particolari sono i registri General Purpose, che servono semplicemente a mantenere i valori utili per l'elaborazione. Fondamentali, specie nelle operazioni cicliche, risultano essere i registri dei flag, che mantengono un particolare stato del processore, e si riassumono essenzialmente in registro dello zero, se lo stato di un'istruzione ha prodotto risultato 0, oppure il registro negative, che va ad uno, se il risultato di un'operazione ha dato numero negativo. Ogni istruzione può cambiare lo stato dei registri di flag, di conseguenza è importante tenerlo a mente, perché essi vengono utilizzati specialmente per i cicli e i salti condizionati.

Continua la lettura
57

I salti

I salti sono le componenti fondamentali di un programma Assembler, perché permettono di passare interi blocchi di istruzioni, se si verificano determinati stati dei registri di flag. Questi risultano particolarmente importanti per implementare gruppi di istruzioni cicliche, per le quali è necessario utilizzare un registro d'appoggio, in cui porre il numero di ripetizioni da fare. È importante ricordare che, quando arriva un'interruzione, si deve salvare lo stato dell'elaborazione, conservando i valori dei registri mediante inserimento degli stessi sullo stack, effettuando operazioni di up e down.

67

Guarda il video

Potrebbe interessarti anche

Segnala contenuti non appropriati

Tipo di contenuto
Devi scegliere almeno una delle opzioni
Descrivi il problema
Devi inserire una descrizione del problema
Si è verificato un errore nel sistema. Riprova più tardi.
Segnala il video che ritieni inappropriato
Devi selezionare il video che desideri segnalare
Verifica la tua identità
Devi verificare la tua identità
chiudi
Grazie per averci aiutato a migliorare la qualità dei nostri contenuti

Guide simili

Windows

Come installare e configurare Microsoft Macro Assembler

Microsoft Macro Assembler è un programma in grado di tradurre il linguaggio sorgente in quello con cui il computer è stato impostato, ossia il codice detto anche assembly. Microsoft Macro Assembler è differente rispetto agli altri compilatori, perché...
Programmazione

Guida alla programmazione in Assembly

Il linguaggio assembly è il linguaggio di programmazione più vicino alla realtà fisico-elettronica di una macchina. L'assembly permette di ignorare la forma binaria del programma finale e sostituire i codici in linguaggio macchina con una sequenza...
Elettronica

Programmazione base con PIC

Il microcontrollore esegue il programma caricato nella sua Flash memoria. È' un codice eseguibile che consiste in un apparentemente e bizzarra sequenza di zero e uno. A seconda dell'architettura del microcontrollore, il codice binario è organizzato...
Hardware

Come programmare un microcontrollore Pic 16f84

Il 16F84 è un microcontrollore 8 bit prodotto dalla famosissima azienda Microchip detentrice del marchio. Esso è molto versatile e semplice da utilizzare. Con esso puoi controllare led, relè, motori e attuatori oppure controllare lo stato di sensori...
Programmazione

Regole per programmare in Assembly

Prima di tutto, per chi non lo sapesse, una breve presentazione di questo linguaggio di programmazione. L'assembly è stato uno dei primi linguaggi mai sviluppati e viene detto di "basso" livello o meglio definito come linguaggio macchina. Questo perché...
Programmazione

Guida alla programmazione a basso livello

In questa guida tratteremo della programmazione a basso livello. Nei vari passi successivi all'introduzione vi rilascio molte informazioni molto utili che vi aiuteranno certamente a programmare sempre meglio a basso livello. Un consiglio che vi dò e...
Windows

Come simulare un pic con Pic Simulator Ide

In questa guida vedremo come simulare un pico con pic simulator ide. PIC Simulator IDE è un simulatore software di microcontrollori per processori Microchip PIC. I modelli previsti da questo software sono appartenenti alle fasce basi e medie. Con esso...
Windows

Come Simulare Un Programma A Microcontrollore Con Real Pic Simulator

In questo momento uno dei simulatori software più veloci di microcontrollori per processori Microchip PIC basati sul flash, è Real Pic Simulator. I modelli previsti da questo software appartengono alle fasce basi e medie. Con Real Pic non è assolutamente...
I presenti contributi sono stati redatti dagli autori ivi menzionati a solo scopo informativo tramite l’utilizzo della piattaforma www.o2o.it e possono essere modificati dagli stessi in qualsiasi momento. Il sito web, www.o2o.it e Arnoldo Mondadori Editore S.p.A. (già Banzai Media S.r.l. fusa per incorporazione in Arnoldo Mondadori Editore S.p.A.), non garantiscono la veridicità, correttezza e completezza di tali contributi e, pertanto, non si assumono alcuna responsabilità in merito all’utilizzo delle informazioni ivi riportate. Per maggiori informazioni leggi il “Disclaimer »”.