Albert82 Inserito: 29 marzo 2010 Segnala Share Inserito: 29 marzo 2010 Salve a tutti sono vuovo di Siemens e chiedo scusa in anticipo se non sapro spiegarmi in modo corretto.Devo leggere una word in un DB. per la word puo essere la 0, la 1, la 2, ect a seconda di varie condizioni.come faccio?devo fare un confronto con ogni possibilità?io pensavo di fare una cosa del genere.L DB50.DBW********al posto degli asterischi vado ad inserire una MW od una variabile chemi contiene un valore numerico che corrisponderà alla riga da leggere nel database.c'è un modo per realizzare una cosa del genere???grazie a tutti Link al commento Condividi su altri siti More sharing options...
ken Inserita: 29 marzo 2010 Segnala Share Inserita: 29 marzo 2010 si chiama puntatore.cerca nel forum, trovi molte info a riguardo. Link al commento Condividi su altri siti More sharing options...
STEU Inserita: 29 marzo 2010 Segnala Share Inserita: 29 marzo 2010 (modificato) AUF DB50L DW[MD0]Nella MD0 c'è il valore da te impostato Modificato: 29 marzo 2010 da STEU Link al commento Condividi su altri siti More sharing options...
Albert82 Inserita: 29 marzo 2010 Autore Segnala Share Inserita: 29 marzo 2010 Vi scrivo quello che sto provando a fare ma chi mi da errore:L DB100.DBW0 \\Qui c'è il numero intero che devo prendere come puntatoreT MW20 \\Carico il valore quiAUF DB50 \\Apro il database dove devo leggere il recordL DW[MW0] QUI MI DA ERRORENon capisco quale sia errore, non avendo anche molta conoscenza..... mi lascia la scritta in rossosuggerimenti? Link al commento Condividi su altri siti More sharing options...
Albert82 Inserita: 30 marzo 2010 Autore Segnala Share Inserita: 30 marzo 2010 Provando varie combinazioni ho trovato che....Non utlizzando MW20 ma una varibile TEMP #valore e come tipo dati Dint oppur DWorde facendo un L DBW[#valore]non mi alcun errore evidenziato in rossoquindi ricapitolando:L DB100.DBW0 \\Qui c'è il numero intero che devo prendere come puntatoreT #valore \\Carico il valore qui, è una variabile TEMP di tipo Dint oppure DWordAUF DB50 \\Apro il database dove devo leggere il recordL DBW[#valore] qualcuno sa pero spiegarmi il motivo tecnico???grazie Link al commento Condividi su altri siti More sharing options...
lucios Inserita: 30 marzo 2010 Segnala Share Inserita: 30 marzo 2010 Devi usare un double, come ti ha detto steu:L DW[MD10] Link al commento Condividi su altri siti More sharing options...
STEU Inserita: 30 marzo 2010 Segnala Share Inserita: 30 marzo 2010 (modificato) Siccome devi puntare il bit devi shiftare di 3 posizioni verso sinistra il valore:es.L L 20SLD 3T MD10AUF 50L DW[MD10] // NON L DW[MW10]OPPUREL P#20.0T MD10AUF 50L DW[MD10]Ti consiglio di non andare a toccare i registri AR Modificato: 30 marzo 2010 da STEU Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora