Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Quattro modi di indossarlo, stessa app del Plaud Note Pro e integrazione con il desktop. Il registratore IA da indossare di Plaud eccelle in mobilità, ma resta vincolato all'abbonamento ed è facile da perdere
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Xiaomi ha portato Redmi Watch 6 anche sul mercato italiano, puntando su un display AMOLED da 2,07 pollici con picco di luminosità a 2000 nit, frame in alluminio da 9,9mm e un'autonomia dichiarata di 12 giorni. Lo smartwatch gira su HyperOS 3 e integra GPS, Bluetooth 5.4 e oltre 150 sport mode. Il tutto a meno di 100 euro
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Con 22 tasti, il pulsante 5D, lo Shift Mode e il sensore PixArt 3395 da 26.000 DPI, il nuovo mouse wireless di Mad Catz si rivolge in modo preciso ai giocatori di MMO e RPG. Ma chi conosce già il R.A.T. 8+ ADV si accorgerà subito di quanto i due prodotti condividano, e di dove invece divergono
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


Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro Redmi Watch 6 in prova: lo smartwatch con ampio ...
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ...
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC Radeon RX 9070 GRE, AMD la porta in tutto il mon...
Reolink OMVI 3i WiFi: videosorveglianza più intelligente e facile da usare Reolink OMVI 3i WiFi: videosorveglianza pi&ugrav...
Hyundai IONIQ 6 N-Line, prova in antepri...
Sospesi i lavori di riparazione delle pe...
Formula V vi farà cambiare l'airf...
Netflix usa l'IA generativa per battere ...
Quando l'AI costruisce sé stessa:...
Meno ventole, più raffreddamento:...
Adidas Trionda: come funziona la tecnolo...
Withings BodyFit, la bilancia che va ben...
QNAP annuncia QuTS hero h6.0: il sistema...
ColorOS 17 con Android 17: la lista dei ...
DDR4, il ritorno che nessuno si aspettav...
Corsair vuole un singolo cavo per colleg...
Linux 7.2 si avvierà sui Mac M3, ...
Xiaomi 17T e 17T Pro a prezzi mai visti:...
Microsoft annuncia Majorana 2 e prevede ...
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: 22:44.


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