Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-03-2003, 17:19   #1
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Testo su assembly Cercasi

Ciao a tutti, volevo imparare un po' l'assembly, se non altro per capire al meglio l'architettatura di una CPU 80x86 , e volevo un testo abbastanza universale , che mi insegnasse l'assembly su linux, quindi con sintassi Intel per NASM (l'assemblatore che uso) .

Vi ringrazio tanto per la vosta disponibilità

Ri-CIao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 18:32   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Perchè prprio il NASM ?!?!!?
Usa l'as del GCC... E' quello che usano anche per compilare parte del kernel...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 18:59   #3
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Ah ok, se mi dici che è meglio AS allora uso AS

Comunque allora un testo su AS , ne conosci?

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 19:01   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
No
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 19:09   #5
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originally posted by "cionci"

No
Ah ecco , grazie

SI accettano altri suggerimenti utili come quello di Cionci (scherzo bagaio! )

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 19:16   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ad esempio questo è codice per il gcc...
E' una parte di un mio esame...
E' la traduzione di una funzione appartenente ad una classe C++...
Codice:
.text
dieci: .double	0e10
venti: .double	0e20

.globl _elab2__2clG2stR2cl
_elab2__2clG2stR2cl:
		pushl	%ebp
		movl	%esp, %ebp
		subl	$84, %esp

		pushl	%eax
		pushl	%ebx
		pushl	%ecx
		pushl	%edi
		pushl	%esi
	
		pushl	92(%ebp)
		leal	-80(%ebp), %eax		#cca
		pushl	%eax
		call	___2clR2cl		
		addl	$8, %esp

		movl	$0, -84(%ebp)		#i=0
inFor1:		cmpl	$4, -84(%ebp)		#i<4
		jl	coFor1
		jmp	fiFor1
coFor1:		movl	-84(%ebp), %ecx

		leal	16(%ebp), %eax		#ss
		fldl	(%eax,%ecx,8)		#ss.vv[i]
		movl	92(%ebp), %eax		#cc
		fcompl	4(%eax,%ecx,8)		#compara con cc.s.vv[i]
		fstsw	%ax
		andw	$0x0100, %ax
		jnz	coIf1
		jmp	coElse1

coIf1:		leal	16(%ebp), %eax		#ss
		fldl	(%eax,%ecx,8)		#ss.vv[i]
		movl	12(%ebp), %ebx		#this
		faddl	4(%ebx,%ecx,8)		#+ s.vv[i]		
		leal	-76(%ebp), %eax		#ss
		fstpl	(%eax,%ecx,8)	  	#cca.s.vv[i] =
		jmp	fiIf1
coElse1:	fldl	dieci			#10
		movl	12(%ebp), %ebx		#this
		faddl	4(%ebx,%ecx,8)		#+ s.vv[i]
		leal	-76(%ebp), %eax		#ss
		fstpl	(%eax,%ecx,8)	  	#cca.s.vv[i] =
fiIf1:
		incl	-84(%ebp)
		jmp	inFor1				
fiFor1:

		movl	$4, -84(%ebp)		#i=0
inFor2:		cmpl	$8, -84(%ebp)		#i<8
		jl	coFor2
		jmp	fiFor2
coFor2:		movl	-84(%ebp), %ecx

		leal	16(%ebp), %eax		#ss
		fildl	64(%eax)		#ss.a
		movl	92(%ebp), %eax		#cc
		fcompl	72(%eax)		#compara con cc.s.b
		fstsw	%ax
		andw	$0x0100, %ax
		jnz	coIf2
		jmp	coElse2
coIf2:		fldl	16(%ebp,%ecx,8)		#ss.vv[i]
		movl	92(%ebp), %ebx		#this
		faddl	4(%ebx,%ecx,8)		#+ cc.s.vv[i]
		fstpl	-76(%ebp,%ecx,8)  	#cca.s.vv[i] =
		jmp	fiIf2
coElse2:	fldl	venti			#10
		movl	12(%ebp), %ebx		#this
		faddl	4(%ebx,%ecx,8)		#+ s.vv[i]
		fstpl	-76(%ebp,%ecx,8)  	#cca.s.vv[i] =
fiIf2:
		incl	-84(%ebp)
		jmp	inFor2
fiFor2:
		leal	-80(%ebp), %eax		#cca
		pushl	%eax
		pushl	8(%ebp)			#ritorno
		call	___2clR2cl		
		addl	$8, %esp

		popl	%esi
		popl	%edi
		popl	%ecx
		popl	%ebx
		popl	%eax
		leave
		ret
Ah...per compilare un sorgente assembly con gcc basta scrivere:

gcc sorgente.asm -o output

Ovviamente output è il file eseguibile...

Se ci devi linkare anche altri file C o C++ basta fare :

gcc sorgente1.c sorgente2.asm sorgente3.c -o output
gcc sorgente1.cpp sorgente2.asm sorgente3.cpp -o output -lgpp
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2003, 23:10   #7
vici_1
Senior Member
 
L'Avatar di vici_1
 
Iscritto dal: Aug 2002
Messaggi: 581
Io libri di as per Linux non ne ho mai trovati. Li ho cercati assiduamente anche in librerie specializzate ma ... niente da fare. Del resto il libraio benche' specializzato, su di un tema cosi' specifico, non puo' essere d'aiuto.
Non mi dispiacerebbe venire smentito dal suggerimento di un testo.
Cmq. ci si puo' arrangiare abbastanza bene con internet p.e. cercando con google "tutorial assembly linux". Si trovano diverse cose interessanti.

Ciao.
vici_1 è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2003, 23:32   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Io un libro in realtà ce lo avrei: http://www.ateneonline.it/LibroAteneo.asp?item_id=916
E' il mio libro di calcolatori elettronici...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2003, 15:12   #9
vici_1
Senior Member
 
L'Avatar di vici_1
 
Iscritto dal: Aug 2002
Messaggi: 581
Quindi, tu che lo utilizzi, mi sapresti dire se la sintassi per assembly contenuta nel testo e' quella AT&T ?
vici_1 è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2003, 16:21   #10
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Lì usano come compilatore DJGPP che è un porting Windows del GCC...
La sintassi è quella appunto di as... Non so quale sia la sintassi AT&T...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2003, 18:49   #11
vici_1
Senior Member
 
L'Avatar di vici_1
 
Iscritto dal: Aug 2002
Messaggi: 581
Ok. Indirettamente mi hai risposto. DJGPP usa la sintassi AT&T(cosi ho letto in giro). Inoltre vedendo il listato della tua precedente risposta corrisponde a quanto sto' leggendo sui tutorial del caso trovati su Internet.
Grazie.
Ciao.
vici_1 è offline   Rispondi citando il messaggio o parte di esso
Old 30-03-2003, 12:36   #12
andrea
Senior Member
 
L'Avatar di andrea
 
Iscritto dal: Jul 1999
Città: Roma
Messaggi: 614
Re: Testo su assembly Cercasi

Quote:
Originally posted by "AnonimoVeneziano"

Ciao a tutti, volevo imparare un po' l'assembly, se non altro per capire al meglio l'architettatura di una CPU 80x86 , e volevo un testo abbastanza universale , che mi insegnasse l'assembly su linux, quindi con sintassi Intel per NASM (l'assemblatore che uso) .

Vi ringrazio tanto per la vosta disponibilità

Ri-CIao
Da quel che so come libro per l'assembly sotto Linux ci dovrebbe essere:

Linux assembly language programming - Bob Neveln

Che dovrebbe trattare la sintassi intel per nasm...comunque oltre al nome non so altro e non ho idea di come sia come testo.

Andrea
__________________
...What you know that you time is close at hand, maybe then you'll begin to understand, life down there is just a strange illusion.
andrea è offline   Rispondi citando il messaggio o parte di esso
Old 30-03-2003, 12:37   #13
andrea
Senior Member
 
L'Avatar di andrea
 
Iscritto dal: Jul 1999
Città: Roma
Messaggi: 614
Dimenticavo che e' in inglese.

Andrea
__________________
...What you know that you time is close at hand, maybe then you'll begin to understand, life down there is just a strange illusion.
andrea è offline   Rispondi citando il messaggio o parte di esso
Old 30-03-2003, 17:52   #14
mjordan
Bannato
 
L'Avatar di mjordan
 
Iscritto dal: Mar 2002
Città: Pescara - 未婚・恋人なし Moto: Honda CBR 1000 RR ‫Casco: XR1000 Diabolic 3
Messaggi: 27578
Quote:
Originally posted by "AnonimoVeneziano"



Ah ecco , grazie

SI accettano altri suggerimenti utili come quello di Cionci (scherzo bagaio! )

Ciao
Ti conviene usare NASM per scrivere codice Assembly a mano. GAS ha una gestione degli errori molto limitata (è stato creato pensando che dovesse assemblare codice assembly sempre corretto, cioè generato da un compilatore). NASM sta 10 volte avanti GAS.
Il libro che ti consiglio si chiama:

Assembly Language Step by Step di Jeff Duntemann edito da John Wiley & Sons.

E' un libro introduttivo e copre anche una parte su NASM sia sotto Dos che sotto Linux. La parte Linux è la parte finale, ma stai tranquillo che moltissima differenza non c'è fatti alcuni chiarimenti.
Se poi che ti serve per imparare l'architettura questo testo è + che consigliato a te, perchè presenta esaurienti capitoli sull'architettura e l'aritmetica binaria, conversioni binarie, esadecimali, ecc. ecc.
E' anche simpatico da leggere.
Ciao.
mjordan è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2003, 10:23   #15
vici_1
Senior Member
 
L'Avatar di vici_1
 
Iscritto dal: Aug 2002
Messaggi: 581
Quote:
Originally posted by "cionci"

Io un libro in realtà ce lo avrei: http://www.ateneonline.it/LibroAteneo.asp?item_id=916
E' il mio libro di calcolatori elettronici...
Ho comprato questo libro. Incredibile... mi ha fornito un sacco di risposte che non avevo mai trovato da nessuna parte... Sono molto soddisfatto dell' acquisto tante' che in una settimana l'ho "divorato". Ovvio che ora volendo approfondire devo tornare con calma su diversi punti prima di assimilarli. Direi che e' ottimo per affrontare la programmazione assembler nonche' fornisce le basi teoriche dei processori PC e relativa architettura del sistema (chi avrebbe mai detto che spiega come creare driver?) quindi le teorie espresse si posso mette in pratica con qualunque sintassi si voglia utilizzare. Il testo propone as di DJGPP ma usare altro e' solo una pura formalita' di sintassi. Molto interessante la parte degli interrupt(non l'avevo mai approfondita cosi). Tante' che pensavo che fosse un'esclusiva MS-DOS(che ignorante che sono!)
Era da un po' che pensavo d'affrontare lo studio su come si sviluppa un sistema operativo, no non voglio svilupparne uno c'e' gia' chi l' ha fatto per noi, ora mi rendo conto che probabilmente senza le informazioni che ho avuto da questo testo, la comprensione di diverse cose annesse all'argomento SO sarebbe stata ardua.
Una nota e' doverosa : e' rivolto al mondo universitario(credo) quindi non gira intorno ai discorsi e va dritto al punto... cio' significa che da' per scontato alcune cose, e se non ne si e' a conoscenza occorre approfondire in altra sede.
vici_1 è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2003, 10:35   #16
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sì...è il libro di testo del mio corso di Calcolatori Elettronici...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2003, 14:28   #17
mjordan
Bannato
 
L'Avatar di mjordan
 
Iscritto dal: Mar 2002
Città: Pescara - 未婚・恋人なし Moto: Honda CBR 1000 RR ‫Casco: XR1000 Diabolic 3
Messaggi: 27578
Quote:
Originally posted by "cionci"

Sì...è il libro di testo del mio corso di Calcolatori Elettronici...
Noi lo usiamo ad Architettura degli Elaboratori.
mjordan è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2003, 17:24   #18
gokan
Senior Member
 
L'Avatar di gokan
 
Iscritto dal: Apr 2002
Città: Palermo
Messaggi: 4913
Tra gli autori c'è Paolo Corsini..non sarà quello del nostro forum...
Mi sa di si
Nel corso di Architettura degli elaboratori io ho usato il libro di Tanembaum 'Architettura deli computer'(mi pare), magari può interessare...
__________________
Sun Certified Java Programmer - Sun Certified Web Component Developer - Sun Certified Business Component Developer
gokan è offline   Rispondi citando il messaggio o parte di esso
Old 09-04-2003, 11:44   #19
mjordan
Bannato
 
L'Avatar di mjordan
 
Iscritto dal: Mar 2002
Città: Pescara - 未婚・恋人なし Moto: Honda CBR 1000 RR ‫Casco: XR1000 Diabolic 3
Messaggi: 27578
Quote:
Originally posted by "gokan"

Tra gli autori c'è Paolo Corsini..non sarà quello del nostro forum...
Mi sa di si
Nel corso di Architettura degli elaboratori io ho usato il libro di Tanembaum 'Architettura deli computer'(mi pare), magari può interessare...
No non è lui...
mjordan è offline   Rispondi citando il messaggio o parte di esso
Old 09-04-2003, 12:05   #20
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sono tutti e 3 miei prof...compreso Paolo Corsini (che ovviamente non è quello di questo sito)...
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Dopo 23 anni di silenzio, Warcraft 3 spi...
Roblox sfida l'ecosistema gaming: app st...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:22.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v