Comandi assembly Il termine assembly deriva dal programma traduttore in linguaggio macchina assembler, l’assemblatore non fa altro che assemblare il.

Slides:



Advertisements
Presentazioni simili
A. FERRARI MATERIALE DALLA DISPENSA DI P. OLLARI
Advertisements

Programmazione assembler
in un programma Assembler
Dalla scrittura all’esecuzione
Procedure In assembler.
Organizzazione della memoria
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
CALCOLATORI ELETTRONICI Gestione delle subroutine.
Gestione delle subroutine
Corso di Informatica Applicata - Lezione 3 - © 2005 Saverio De Vito Corso di Informatica Applicata Lezione 3 Università degli studi di Cassino Corso di.

Il Linguaggio Macchina
1 Generazione codice Daniela Briola Lorena Bellino.
Gestione della memoria logica e fisica degli elaboratori x86
Prof. Marco Mezzalama –All rights reserved Esempio Si consideri listruzione in modo protetto: MOV AX, (EBX) Si supponga che DS = 200 e EBX = 155 Lindirizzo.
Microprocessore Intel 8086
Introduzione al linguaggio assembly del microprocessore a parte
Introduzione al linguaggio assemby del microprocessore a parte
I vettore interruzioni
Istruzioni per la Manipolazione dei Bit
Architettura del calcolatore
Introduzione al linguaggio assembly del microprocessore a parte
Unità centrale di processo

1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda L’Assembler 8086 Istruzioni per.
Architettura di una CPU
Il µP Intel 8086 Marco Lettieri 3 C Informatica A.S. 2009/2010 All’attenzione del Professor Claudio Gatto.
Architettura IA - 16 M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Calcolatori Elettronici Il Processore (2)
1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda L’Assembler 8086 Istruzioni per.
Programmazione Assembly
1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda L’Assembler 8086 Istruzioni per.
Corso di Laurea in Informatica Architettura degli elaboratori a.a ISA e Asm: esempi e suggerimenti.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Architettura di un calcolatore e linguaggio macchina.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
L’esecuzione dei programmi
2 bits di mantissa e 3 di esponente = 0 =
Fondamenti di Informatica1 Linguaggi Diversi tipi di linguaggi: –Imperativi –Funzionali –Dichiarativi Tutti basati sulla traduzione nell'unico linguaggio.
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
Architettura IA - 16 M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
Il Processore Il processore è la componente dell’unità centrale che elabora le informazioni contenute nella memoria principale L’elaborazione avviene eseguedo.
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata (3) Istruzioni J-type Istruzioni di salto Istruzioni.
1 M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica M. Rebaudengo - M. Sonza Reorda L’Assembler 8086 Istruzioni per.
Architettura 8086/8088 M. Rebaudengo - M. Sonza Reorda
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
LA MEMORIA CENTRALE. La memoria nella struttura generale del calcolatore MEMORIA CONTROLLO INGRESSO E USCITA ARITMETICA E LOGICA CPU Dispositivi esterni.
IL PROCESSORE I MICROPROCESSORI INTEL Il microprocessore è un circuito integrato dotato di una struttura circuitale in grado di effettuare un determinato.
Sistemi Operativi : Gestione della Memoria Anno Scolastico 2012/2013 Un sistema operativo è un programma o un insieme di programmi che garantisce e permette.
Elementi fondamentali dell’ Architettura di di un elaboratore elettronico.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica PROBLEMI E ALGORITMI LINGUAGGIO MACCHINA.
Architettura e funzionalità
LE ARCHITETTURE NON VON NEUMANN
I microprocessori Il microprocessore è un circuito integrato costituito da silicio. Il microprocessore svolge fondamentalmente due funzioni: sovraintende.
Cammino dei Dati (Datapath)
Organizzazione fisica
Introduzione I microcontrollori.
ALU (Arithmetic Logic Unit)
Controllo e microprogrammazione
Codicfiche Interi Complemento alla base.
Azione delle istruzioni
Vari e semplici programmi.
IL LINGUAGGIO ASSEMBLY
Azione delle istruzioni
Programmazione e Laboratorio di Programmazione
Programmazione e Laboratorio di Programmazione
Relazioni tra CPU e Memoria e Dispositivi I/O
Transcript della presentazione:

Comandi assembly Il termine assembly deriva dal programma traduttore in linguaggio macchina assembler, l’assemblatore non fa altro che assemblare il codice macchina partendo da istruzione scritte in linguaggio mnemonico assembly.

Esistono diversi tipi di comandi, in tutto ci sono 15 tipologie. Istruzioni di spostamento o assegnazione. Istruzioni aritmetiche. Istruzioni bitwise logiche. Istruzioni bitwise di rotazone/traslazione. Istruzioni di confronto. Istruzioni di salto. Istruzioni di gestione stringhe. Istruzione di lettura/scrittura da e per I/O. Istruzioni di attesa. Istruzioni logiche bitwise. Istruzioni bitwise di rotazione/taslazione.

Istruzioni di spostamento o assegnazione. Istruzioni assembly che servono per lo spostamento di dati da un registro ad un altro.

Istruzioni bitwise logiche. Istruzioni logiche servono principalmente per la manipolazione di bit.

Istruzioni di lettura e scrittura da e per I/O. Istruzioni che servono per la lettura e scrittura delle informazioni da e per I/O.

ISTRUZIONI BITWISE ROTAZIONE

ISTRUZIONI DI CONFRONTO

ISTRUZIONI DI ATTESA

Trasferisce un byte o una word Tra due registri MOV destinazione, sorgente ISTRUZIONE DI TRASFERIMENTO GENERICO Trasferisce un byte o una word Tra due registri Tra un registro e una locazione di memoria Per trasferire un dato da una locazione di memoria a un’altra: MOV AX, fromVar; copia fromVar in AX MOV toVar,AX; e quindi in toVar Non è possibile caricare una costante (come l’indirizzo di un segmento) in un registro di segmento:

PUSH sorgente POP destinazione L’unico operando (sempre una word) può essere un registro o una locazione di memoria NON può essere una costante MOV AX, 100; costante in AX PUSH AX; e quindi sullo stack MOV AX, OFFSET Var; prima in AX PUSHF (PUSH Flags onto stack) POPF (POP Flags off stack) Trasferiscono il contenuto del registro flag (16 bit) nello stack e viceversa PUSHF= PUSH del registro flag POPF= POP del registro flag NECESSARIE IN QUANTO IL REGISTRO FLAG NON HA UN NOME GENERAL PURPOSE MOV destinazione,sorgente Muove un byte o una word PUSH sorgente Push di una word nello stack POP destinazione Pop di una word nello stack

XCHG destinazione sorgente Scambia (eXCHanGE) il contenuto (byte o word) dei due operandi-due registri o un registro e una locazione di memoria Per scambiare il contenuto di due locazioni di memoria: XCHG AX, var 1 XCHG AX, var 2; var 2<-var 1 XCHG AX, var 3; var 1<-var 2

LEA reg16, mem16 LEA (Load Effective Address): Calcola l’EA del secondo operando (un riferimento a una word in memoria) e Lo carica nel primo operando (un registro generale a 16 bit) LEA BX, Table; MOV BX, OFFSET Table LEA BX, [Table+BP+SI] Il secondo esempio non ha un’istruzione MOV equivalente, in quanto l’operatore OFFSET richiede un’espressione costante.

SUB destinazione, sorgente SBB destinazione, sorgente SUB (SUBtract) sottrae l’operando sorgente all’operando destinazione e memorizza il risultato nell’operando destinazione SBB (Subtract with Borrow) effettua la stessa operaazione, comprendendo nella sottrazione il flag del riporto (CF) Destinazione_=sorgente+CF L’istruzione SBB permette di effettuare la sottrazione di numeri maggiori di 16 bit Sottrazione di due numeri di 32 bit (AX:BX)<- (AX:BX)-(CX:DX) SUB BX,DX; sottrae i 16 bit meno significativi SBB AX,CX; sottrae i 16 bit più significativi Le istruzioni di sottrazione modificano il contenuto dei flag in modo analogo alle istuzioni di somma.

GENERAL PURPOSE TRASFERIMENTO DI INDIRIZZI MOV destinazione, sorgente: muove un byte o una word LEA reg16, mem16: carica un indirizzo effettivo (EA) PUSH sorgente: Push di una word nello stack LDS reg16, mem32: carica un indirizzo completo in DS:reg16 POP destinazione: Pop di una word dallo stack LES reg16, mem32: carica un indirizzo completo in ES:reg16 XCHG destinazione, sorgente: Scambia un byte o una word ARRIVEDERCI E GRAZIE !!

Realizzato da: Lorenzo Cerami_Gabriele Salemi_Giuseppe Lanzetta. Classe III I A.S. 2015/2016