Un altro esempio per approfondire l’utilizzo dei cicli in asm. Questa volta vediamo un altro classico problema per i programmatori in erba: la media di n numeri inseriti da tastiera con n a sua volta scelto in input dall’utente in input.
SASM
Asm Cheat Sheet
Un breve prontuario per gli studenti alle prime armi con assembly. E’ ideato per semplificare la vita soprattutto se si usa SASM come IDE di sviluppo.
Esempio 16: somma di 5 numeri in input con ciclo
Un altro esercizio in SASM riepilogativo con diversi elementi visti. Questa volta usiamo un ciclo per leggere in input cinque valori che poi sommiamo e stampiamo. Vediamo come.
Esempio 15: Il ciclo while con assembly
Abbiamo visto come il costrutto if/else si traduca in assembly con una serie di salti al punto corretto di codice da eseguire in base alla condizione valutata. Il ciclo in realtà è molto simile come approccio, tanto che non esiste una parola while vera e propria ma un if else che risalta su se stesso! Vediamo un esempio.
Esempio 14: if else in assembly
Vediamo più nel dettaglio il costrutto if/else in assembly e approfondiamo il concetto di “salto”
Esempio 12: somma di due numeri letti in input
Vista la stampa, vediamo come si fa la fase di input da tastiera. Anche qui, c’è una combinazione fissa di valore/registro da impostare per “richiedere” alla CPU di procedere ad una operazione specifica di lettura.
Esempio 03: somma di due numeri con ADD
Un semplice esempio per capire come si esegue la somma di due numeri. L’esempio aiuta a capire l’opCode ADD ma anche come l’assembly ragioni a basso livello tra assegnazione e somma.
Esempio 01: le variabili
Un altro semplice esempio in cui dichiariamo una variabile con un valore iniziale per spostarla quindi in un registro dove potremo usarla. In assembly le operazioni devono essere eseguite esclusivamente attraverso i registri!
Scrivere il primo programma assembly
Scrivere un programmino assembly è molto semplice, come detto basterebbe un semplice editor di testo con cui salvare i file.