Se ad esempio definisco:
pippo DB ?
per passare segmento ed offset di pippo ad una procedura faccio:
PUSH SEG pippo
PUSH OFFSET pippo
CALL proc
c'è un modo per compattare le prime due istruzioni?
Grazie,
Samuel
sulla famiglia x86 no ... perche' hai che i registri interni della cpu
quasi mai contengono la word intera del bus indirizzi, quindi devi cmq fare
2 push dei due dati ...
come mai vuoi compattare quelle 2 push ???
ciao
Mi chiedevo se esisteva una funzione di PUSH sintetica. Allo stesso modo con
cui, mi sembra, dovrebbe esserci una particolare istruzione di PUSH che
salva tutti i registri del processore e che risparmia dal dover fare:
PUSH AX
PUSH BX
PUSH CX
......
PUSH ES
....
e così via.
bhe non penso ci sia un istruzione ... piu' che altro ci sara' una macro
dell'interprete asm che stai usando ... magari leggi il manuale e trova una
definizione di macro da definire, cosi' che tu nelle tue procedure scrivi
PUSH ALL e poi l'interpete in automatico va a sostituire tutti i comandi per
tutti i registri cosi che non li debba scrivere tu 30 volte magari.
ciao
PUSHA
ma riguardo alla tua domanda iniziale non sono in grado di aiutarti
ciao
Vabbé
"il_fu_darth_pelo" <er...@lycos.it> ha scritto nel messaggio
news:McRUa.207215$lK4.5...@twister1.libero.it...
pippo:
DB ?
"Samuel" <x@y.z> wrote in message
news:2yBUa.205796$Ny5.5...@twister2.libero.it...
> Salve,
> utilizzando la stack per il passaggio di parametri alla procedure, Х
> possibile passare un indirizzo far di una variabile mediante una sola
> istruzione?
>
> Se ad esempio definisco:
>
> pippo DB ?
>
> per passare segmento ed offset di pippo ad una procedura faccio:
>
> PUSH SEG pippo
> PUSH OFFSET pippo
> CALL proc
>
> c'Х un modo per compattare le prime due istruzioni?
>
> Grazie,
> Samuel
>
>
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.504 / Virus Database: 302 - Release Date: 7/25/2003