PDA

View Full Version : [Assembly] Piccoli problemi iniziali


vemi
10-01-2015, 21:37
Salve ragazzi da poco ho iniziato a studiare questo linguaggio.. in particolare il 6502 e mi chiedevo il significato dei seguenti simboli:
-$
-#
-#$

e poi volevo chiedere se ne esiste una buona guida in italiano!

Grazie mille ragazzi anticipatamente!!!

cdimauro
10-01-2015, 21:51
Salve ragazzi da poco ho iniziato a studiare questo linguaggio.. in particolare il 6502 e mi chiedevo il significato dei seguenti simboli:
-$
Marca l'inizio di un numero espresso in esadecimale.
-#
Rappresenta l'inizio di un valore immediato (può essere un'espressione, ma deve poter essere valutata interamente).
-#$
In realtà i due simboli non devono necessariamente stare assieme. Il primo, come già detto, denota l'inizio di un valore immediato. A seguire ci può essere qualunque cosa, e in questo caso c'è un numero esadecimale, ma potrebbe contenere espressioni più complesse.

Ad esempio:
#$1F + 1
E' un valore immediato che si traduce nel valore $20 in esadecimale, cioé 32 in decimale.
e poi volevo chiedere se ne esiste una buona guida in italiano!

Grazie mille ragazzi anticipatamente!!!
Purtroppo non conosco guide in italiano. Comunque il 6502 ha un'architettura estremamente semplice, per cui non dovresti avere difficoltà anche in inglese. Nel caso, c'è IL sito di riferimento per questo processore, il mitico: 6502.org .

vemi
11-01-2015, 18:06
grazie mille!
Veramente!!!
hai tolto tutti i miei dubbi.. grazie ancora!!!

cdimauro
12-01-2015, 07:14
Di nulla. Se hai altri dubbi, chiedi pure. Anche se sono circa 25 anni che non ci lavoro più, qualcosa la ricordo ancora di quel bel processore. :)

lorenzo001
12-01-2015, 21:33
Già ... gran bel processore ... :D

vemi
17-01-2015, 11:23
Di nulla. Se hai altri dubbi, chiedi pure. Anche se sono circa 25 anni che non ci lavoro più, qualcosa la ricordo ancora di quel bel processore. :)

:D Grazie allora ne approfitto..
Stavo analizzando l'indirizzamento Indiretto Assoluto usato soltanto dall'istruzione JMP.
Ho letto che:
" prende l'indirizzo passato e lo usa come puntatore alla parte inferiore di un un indirizzo 16-bit in memoria, e salta a quell'indirizzo. Per esempio:

JMP ($2345) salta all'indirizzo in $2345 inferiore e $2346 superiore

Così se $2345 contiene $EA e $2346 contiene $12 allora la prossima istruzione eseguita sarà quella contenuta in $12EA. E' importante ricordarsi che il 6502 usa gli indirizzi nel formato inferiore/superiore. "

In che maniera avviene ciò?
Lo stacco cresce verso il basso per questo introduce la notazione inferiore?
Un'indirizzo contiene a sua volta un'indirizzo?

Ti ringrazio ancora nuovamente per il confronto

lorenzo001
17-01-2015, 13:47
In che maniera avviene ciò?

In che senso?

Lo stacco

Eh?

vemi
17-01-2015, 14:07
In che senso?



Eh?

maledetta correzione automatica :p
Lo "stacco" doveva essere lo "stack"

Ho specificato quale fosse il problema.. un'indirizzo praticamente contiene un'indirizzo?! (guardando il mio esempio)

lorenzo001
17-01-2015, 14:22
maledetta correzione automatica :p
Lo "stacco" doveva essere lo "stack"

Ahhh ... scusa, ma non seguivo il discorso ... no lo stack non c'entra ...

Ho specificato quale fosse il problema.. un'indirizzo praticamente contiene un'indirizzo?! (guardando il mio esempio)

E perché è un problema? Quel tipo di indirizzamento prevedente un indirizzo che contiene un indirizzo ...

cdimauro
17-01-2015, 15:17
:D Grazie allora ne approfitto..
Stavo analizzando l'indirizzamento Indiretto Assoluto usato soltanto dall'istruzione JMP.
Ho letto che:
" prende l'indirizzo passato e lo usa come puntatore alla parte inferiore di un un indirizzo 16-bit in memoria, e salta a quell'indirizzo. Per esempio:

JMP ($2345) salta all'indirizzo in $2345 inferiore e $2346 superiore

Così se $2345 contiene $EA e $2346 contiene $12 allora la prossima istruzione eseguita sarà quella contenuta in $12EA. E' importante ricordarsi che il 6502 usa gli indirizzi nel formato inferiore/superiore. "

In che maniera avviene ciò?
Avviene nella maniera che hai esposto: il processore legge da $2346 il vero indirizzo a cui saltare, e... ci salta.
Lo stacco cresce verso il basso per questo introduce la notazione inferiore?
Sì, lo stack cresce verso il basso.
Un'indirizzo contiene a sua volta un'indirizzo?
Sarebbe meglio parlare di locazioni di memoria. Una locazione di memoria contiene l'indirizzo di un'altra locazione di memoria.

Comunque anche la dizione che hai riportato possiamo dire che sia corretta.
Ti ringrazio ancora nuovamente per il confronto
Di nulla.