ASM GUIDE & TUTORIAL ASM dal Web

Gex001

Utente Storico
28 Novembre 2007
155
25
125
191
Ultima modifica da un moderatore:
Di seguito citero' le fonti Web che trattano tutorial e guide ASM

Assembly - UIC : Lo considero il capostipide dell' Howto ASM in Italia. Contiene anche molti tutorial e crack me.

Art Of Assembly
: Ottima Guida, non per principianti pero'

7 Video Lessons
: Video lezioni (preferisco i Testi)

Win32Assembly : OTTIMO, consigliato anche e tutti i newbie

Tutorial Assembler
Fonte: Giobe2000

Corsi Assembly
: Intuitivo anche per newbie, Fonte: Ra.M. Software

Guida Linguaggio Assembler
Fonte: Marco's WebSite

Il linguaggio Assembler
Fonte: HarrrDito.it

Breve Guida all'Assembly 80x86
Fonte: Univ. Bicocca

Assembly: esempi pratici
Fonte: Programmazione.it

PC Assembly Tutorial
Fonte: P. Carter

Linux Assembly HowTo
Fonte: P.L.U.T.O.

Assembler Tutorial
Fonte: A. Polo

Assembly
Fonte: Wikibooks

Imparare l'Assembly con Visual C++
Fonte:Blog di Leonardo

Assembly
Fonte: Wikipedia

I/O in Assembly


...work in progress
 
Ultima modifica:
Di seguito citero' le fonti Web che trattano tutorial e guide ASM

Assembly - UIC : Lo considero il capostipide dell' Howto ASM in Italia. Contiene anche molti tutorial e crack me.

Art Of Assembly
: Ottima Guida, non per principianti pero'

7 Video Lessons
: Video lezioni (preferisco i Testi)

Win32Assembly : OTTIMO, consigliato anche e tutti i newbie


...work in progress
Devo dire che la UIC mi è stata davvero utile, ho imparato da li quasi tutto quello che so su sull'asm (apparte qualche chicca del AT&T trovata da qualche parte)...
Le video lezioni, come quelle che trovi su youtube sul c++, alla fine non servono ad un picchio perchè ti fanno vedere solo delle cacchette di esempi e non spiegano un minimo di teoria (non ho visto queste che hai postato tu :D). La teoria prima di tutto!
 
Scusate la nabbagine con questo linguaggio di programmazione, ma siccome questa discussione parla dell'assmbler mi sembra idoneo chiedervi una cosa:

Quale programma si usa per programmare in assmbler? (Gratutto xD)

Mi attira questo linguaggio anche se non è proprio facile eh.
 
Scusate la nabbagine con questo linguaggio di programmazione, ma siccome questa discussione parla dell'assmbler mi sembra idoneo chiedervi una cosa:

Quale programma si usa per programmare in assmbler? (Gratutto xD)

Mi attira questo linguaggio anche se non è proprio facile eh.

anche a me
 
Ultima modifica:
D'accordo, ma il linguaggio si chiama Assembly, non Assembler. Anche conoscendo un po' di inglese ci si arriva, Assembler è "colui che assembla", ovvero il compilatore dell'Assembly.
Comunque Quequero rulla :asd:

p.s. SoulEater, il compilatore che dici tu è di MASM.
 
Ultima modifica:
Lo so quale compilatore è lo postato io :\

Assembler assmbly che mi frega xD, ho sbagliato a scrivere non è una tragedia :\
 
L assembly e anche il linguaggio per eccellenza dei Cracker visto che è quello che si avvicina di più alla macchina in senso di hardware,anche se adesso serve piu per capire piu come funzionano i calcolatori e elettronici.
 
Gli hackers nella maggior parte dei casi non hanno bisogno di usare l'asm.
I reverse engineers invece lo usano, ma di solito quando non se ne può fare a meno, perchè in altri casi è uno sforzo inutile. E' chiaro che per scrivere del codice direttamente su un software non c'è altra via che scriverlo in puro asm, o almeno scriverne in asm una parte di esso.
 
Eh, vi segnalo anche:

Il coprocessore matematico 8087

Wikipedia:
L'Intel 8087 fu il primo coprocessore matematico prodotto dalla Intel, ed era progettato per essere utilizzato insieme all'Intel 8088 e all'8086. Lo scopo dell'8087 era di accelerare i calcoli in virgola mobile: la velocità di calcolo aumentava dal 20% al 500% a seconda dell'applicazione specifica.
Questo coprocessore aggiungeva circa 60 nuove istruzioni disponibile al programmatore, il cui codice mnemonico iniziava per "F" per distinguerle dalle istruzioni standard per gli interi dell'8086/88, e i cui opcodes iniziavano tutti con i cinque bit "11011": oltre a divisione, somma e moltiplicazione l'8087 poteva calcolare radici quadrate, tangenti ed elevamenti a potenza. Poteva operare anche con interi, sebbene molto più lentamente.
L'interfaccia fra l'8087 e il processore principale 8086/8088 era, in pratica, una "non interfaccia": l'8087 condivideva gli stessi bus dati, indirizzi e segnali della CPU e duplicava internamente tutta la logica di decodifica delle istruzioni dell'8086. Quindi leggeva le istruzioni caricate dal processore principale finché non riconosceva una istruzione in virgola mobile (compito facile, vista la particolarità dei suoi opcodes): allora l'8086 si fermava e subentrava l'8087, che a operazione finita accedeva alla memoria (se necessario) e poi segnalava al processore principale di ripartire.
L'8087 (e tutti i suoi successori) non fornisce un insieme di registri utilizzabili liberamente, ma offre uno stack di otto registri da 80 bit che vanno da ST0 a ST7, e tutte le istruzioni operano implicitamente su ST0, la cima dello stack, se non altrimenti specificato: per questo motivo le istruzioni del coprocessore non hanno quasi mai argomenti. I risultati dei calcoli vengono salvati in memoria effettuando push e pop dei valori di questo stack.
Quando la Intel progettò l'8087 puntava a creare un formato standard per i futuri progetti. In effetti, una delle caratteristiche di maggior successo di questo coprocessore fu l'introduzione di uno dei primi standard per i PC x86: il formato in virgola mobile IEEE 754. L'8087 forniva due tipi base di tipi di dati a virgola mobile: singola precisione a 32 e doppia precisione a 64 bit, anche se internamente tutti i dati venivano silenziosamente portati a 80 bit per aumentare la precisione sui calcoli complessi. Inoltre l'8087 forniva un formato BCD a 80 bit e dati interi a 16, 32 e 64 bit.
L'8087, annunciato nel 1980, fu affiancato da nuove versioni per i successivi modelli di CPU: prima l'80287, poi l'80387DX/SX. L'Intel 80486, il Pentium e tutte le CPU successive inclusero un coprocessore matematico direttamente nel proprio core ponendo fine, di fatto, all'era dei coprocessori matematici esterni. L'Intel 486sx era una cpu con fpu disabilitata, ed era possibile "accoppiarla" a un 487.
Essendo un componente relativamente costoso e al tempo stesso non necessario a tutti gli utilizzatori dei personal computer del tempo, i costruttori prevedevano sulla motherboard, uno zoccolo vuoto, atto all'inserimento del coprocessore, fornito come opzione, all'eventuale cliente che ne facesse richiesta.
 
  • Mi piace
Reazioni: StratoKyke
Breve up. L'ASM è molto utile anche ai programmatori in C e C++ di microcontrollori Cortex, in quanto il loro ambiente di sviluppo permette di inserire codice ASM direttamente tra le stringhe, e l'esecuzione è prioritaria.
 
Oltre ai manuali assembly x86, né conoscete qualcuno anche per gli x64? e soprattutto, siccome Masm32 è solo per gli x86, conoscete qualche IDE che sia uguale (sintassi etc..) a Masm32 che però compila anche gli x64? (altrimenti non so quanto sia semplice passare da un compilatore ad un'altro, in quanto ho notato che cambiano un bel po' di cose, ma forse mi sbaglio)
 
No Predator, non voglio farmi del male xD. Però studiando l'asm andrò studiare cose che magari, con il Java non andrei mai a studiare, perché non servono. Però tale cose, come per esempio: una maggiore conoscenza della CPU, mi potrà tornare molto utile anche nel campo: game developer (per la performance).

Comunque, grazie del link.
 
eheheheh dicevo farti male sull'asm a 64bit ;D
io se fossi in te assolutamente studierei quello a 32, che è in assoluto il piu' diffuso, poi per migrare progetti al x64 (se necessario) allora con un manuale intel (scaricabile da intel o amd) fai la conversione dei registri. Ma impara pure sul 32 altrimenti troverai pochissssssimo materiale, non sufficente all'apprendimento :)
 
  • Mi piace
Reazioni: Mugetsu