View Full Version : memoria e linguaggio assembly
gaiapuffo
08-10-2011, 11:31
perchè il linguaggi assembly occupa meno spazio in memoria dei programmi scritti ad alto livello?è vero che le istruzioni assembli essendo istruzioni semplificate sono più corte ma e anche vero che un programma scritto in assembly richiede più righe di codice
http://it.wikipedia.org/wiki/Assembly
perchè il linguaggi assembly occupa meno spazio in memoria dei programmi scritti ad alto livello?è vero che le istruzioni assembli essendo istruzioni semplificate sono più corte ma e anche vero che un programma scritto in assembly richiede più righe di codice
dove l'hai sentita questa cosa? un sorgente assembly ed uno in C (ad esempio) che fanno le STESSE cose nello STESSO modo, occupano circa la stessa quantità di memoria. Questo perchè un qualsiasi linguaggio compilato viene tradotto dal compilatore il linguaggio macchina, indi sequenza di bit, così come anche lo stesso linguaggio assembly. Se provi a disassemblare un sorgente C con objdump o gdb o quello che è, vedrai che non compaiono le istruzioni che hai scritto, ma il relativo assembly.
Il fatto che un sorgente in assembly richieda piu righe di codice deriva dal fatto che una cpu esegue una istruzione alla volta. quindi una riga di C del tipo
a=b+1
verrà tradotta nello stesso modo in cui tu scriveresti un programmino assembly che esegue questa operazione.
I linguaggi ad alto livello si sono sviluppati proprio per mascherare questa complessità e e astrazione di scrivere un sorgente in assembly. Scrivere semplicemente il nome di una variabile piuttosto che l'indirizzo dove risiede è oggettivamente piu comodo.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.