ASM
L'Assembly (chiamato anche ASM o correttamente "arma nucleare") è il nuovo linguaggio di distruzione dell'universo.
Il suo compito, a differenza di linguaggi come il Perl che usano il motto: "rendere semplici i lavori semplici e non difficili i lavori difficili", è quello di: "rendere impossibili i lavori semplici e @łß€ðđ¢øþ i lavori difficili". Questo è il motivo per cui chi prova ad addentrarsi all'interno delle sue istruzioni rimane paralitico e diviene vegetale.
Storia
L'Assembly è stato creato verso i primi tempi dell'era informatica, quando quest'ambito stava cominciando a riscuotere il suo certo successo. Poiché i vecchi programmatori di un tempo non erano in grado di piegare i computer verso il loro cospetto, hanno deciso di creare questa potente arma di distruzione di massa in grado di trasformare il semplice Commodore 64 in un Gundam Wing.
Caratteristiche
Una delle caratteristiche dell'Assembly è quella di riuscire a portare a termine ogni compito, lavorando gomito a gomito con la CPU, e rendendo le prestazioni e le esecuzioni più storiche e veloci, tra cui quella di portare in fail la mente del programmatore stesso.
Per poter iniziare ad usare l'Assembly, occorre procurarsi un editor, acquisire un assemblatore, e infine, vendere l'anima al diavolo.
Il programmatore che svolge con successo questi compiti è in grado di scrivere in poche righe di codice il suo primo programma ASM:
.data
h: .string "Hello World!\n"
l = .-h
.text
.global main
main:
movl $4, %eax
movl $1, %ebx
movl $h, %ecx
movl $l, %edx
int $0x80
movl $1, %eax
movl $0, %ebx
int $0x80
Programma che scritto in Python:
print "Hello World!"
O in Perl:
print "Hello World!\n";
Avrebbe richiesto una quantità di tempo pari a 140 anni.
Tipicamente, il programmatore che scrive per molte lune una quantità inesauribile di codice ASM (ovvero il codice mostrato sopra), decide di andare in pensione lasciando un programma del genere:
.global main
main:
movl $2, %eax
int $0x80
jmp main
Mandando a fanculo l'intera comunità.
Tutte le istruzioni dell'ASM sono incomprensibili, e su questo non ci piove, essendo a basso livello, l'unica cosa ottenibile con l'ASM è il suicidio lento e doloroso.
Il codice che viene usato in maniera massiccia dall'ASM è quello che permette di interagire con registri, di chiamare syscall, interrupt, salti (in)condizionati ed altro ancora.
Il codice di sopra, ad esempio, sposta 2 in EAX, richiama l'interrupt(in questo modo fa una fork) e poi costringe l'utente a tagliarsi le vene, risaltando a main e rieseguendo tutto quel codice, portando il programmatore a morire dissanguato.