assembly

14,90

Description

Microprocessori e sistemi embedded sono comunemente programmati con linguaggi ad alto livello come C e Python, linguaggi che rendono chiara la programmazione senza necessariamente conoscere intimamente l’hardware per cui si realizza il programma. L’assembly, dal canto suo, offre l’opportunità di programmare l’hardware colloquiando direttamente con il microprocessore indirizzando dati verso registri, memorie e I/O con semplici istruzioni.Questo libro infatti propone un corso in 20 capitoli per apprendere le basi della programmazione in assembly adoperando un simulatore software del microprocessore Z80, il miglior candidato didattico per l’apprendimento di questo linguaggio a basso livello.Anche se ogni microprocessore ha un proprio linguaggio assembly, saper già programmare un determinato microprocessore rende più facile passare ad un altro poiché molti procedimenti sono simili. È necessario soltanto assimilare le nuove modalità con cui sono proposti i codici mnemonici ed istruzioni univoche che ogni CPU possiede e non utilizzabili sulle altre.Un simulatore replica totalmente il sistema di riferimento ed è capace di eseguire un programma a velocità ridotta consentendo di esaminare la movimentazione dati in registri, memorie e I/O in tempo reale oppure nella modalità passo-passo eseguendo un’istruzione alla volta per cogliere ogni istante dell’esecuzione. Sono analizzate le istruzioni più comuni delle numerose disponibili seguendo un percorso logico nel proporle; ogni capitolo aggiunge nuove complessità impiegando le istruzioni già apprese nel precedente capitolo realizzando soluzioni a successivi programmi. La programmazione in assembly completa lo studio dei sistemi a microprocessori svelando quei meccanismi nascosti del software che governa l’hardware a livello di bit.

Contenuti:
Il microprocessore – Il linguaggio assembly – Il simulatore – Indirizzamento dati: Registri – Indirizzamento dati: Memoria – Salti assoluti e relativi – Subroutine – Trasferimento, ricerca e ordinamento dati – Interfacciamento I/O – Operazioni logiche – Rotazione e scorrimento – Aritmetica binaria: Somma – Aritmetica binaria: Sottrazione – Conversione in decimale – Aritmetica binaria: Moltiplicazione – Aritmetica binaria: Divisione – Quadrato e radice quadrata – Codifica BCD – Interrupt (Interruzioni) – Debugging – Tabella conversione Dec-Hex-Bin: 0-127 – Tabella conversione Dec-Hex-Bin: 128-255 – Tabella conversione ASCII – Indice mnemonico istruzioni Z80 – Istruzioni che modificano i flag

Additional information

Weight 1 kg