Architettura 8086 per programmazione ASM

Quello più vicino al linguaggio macchina vero e proprio.

Architettura 8086 per programmazione ASM

Postby Falcon on Sat Sep 30, 2006 3:22 pm

Per iniziare a programmare in linguaggio Asm bisogna prima conoscere come le istruzioni vengono gestite a livello macchina e,il primo microprocessore comodo e somigliante agli odierni è il microprocessore 8086 della famiglia Intel prodotto nel 1978.Ha avuto un enorme diffusione perchè la Microsoft ha costruito,per esso,il sistema operativo MS-DOS.Le caratteristiche principali di questo microprocessore sono:
-Bus indirizzi a 20bit (2^20)cioè è possibile indirizzare 1Mbyte di memoria;
-Bus dati a 16 bit;
-può supportare i cooprocessore matematico in virgola mobile 8087;
-ha un set di istruzioni pari a 70 di base e 30 modi di indirizzamento diverso,con la conseguenza di poter eseguire operazioni aritmetiche (binarie e BCD)con e senza segno su 8 o 16 bit.
Queste sono le principali caratteristiche di questo microprocessore.
L'8086 è composto essenzialmente da due unità che cooperano e cioè la BIU e la EU, la prima è la BUS interface Unit e la seconda è la Execute Unit.Queste due unità possono interagire fra di loro ma,per lo più lavorano in modo asincrono.
Senza entrare molto nel dettaglio si può dire che la BIU gestisce l'indirizzamento e il prelievo dei dati e delle istruzioni e il colloquio con i dispositivi esterni.Contiene i registri di segmento (CS,DS,ES,SS),il contatore di programma (IP)e una coda di istruzioni.
L'EU è la CPU vera e propria costituita da un registro istruzione,un registro di flag,due registri per il puntamento nello stack,4registri operativi,2 registri indice e una ALU (Aritmetical Logic Unit)che opera su dati a 16 bit.(Per un approfondito trattamento dei vari registi,se qualcuno è interessato contattatemi che proseguo).
Questo è in definita il Microprocessore su cui si basano gli odierni,ovviamente con un evoluzione maggiore(è stata introdotta la memoria cache,l'architettura a 32 bit,....).Per poter vedere più da vicino il funzionamento di questo processore esiste un emulatore (Emu8086) che mostra i contenuti,step by step,dei vari registri durante l'esecuzione del programma scritto,ovviamente in Asm. Alla prox...ciau! 8)
Linux Slackware User
User avatar
Falcon
Java Programmer
 
Posts: 542
Joined: Sat Jul 08, 2006 8:38 am

Architettura 8086 per programmazione ASM

Sponsor

Sponsor


Return to ASM

Who is online

Users browsing this forum: No registered users and 1 guest

cron