mautomazione Inserito: 3 giugno 2008 Segnala Inserito: 3 giugno 2008 In STEP 7 esiste il dato semplice chiamato NUMERO DECIMALE SENZA SEGNO di tipi WORD A 16 bit o 32 bit. Considerando il tipo WORD a 16 bit, minimo che può essere rappresentao è B#(0,0) e il massimo è B#(255,255). Per il tipo WORD A 32 bit il valore minimo è B#(0,0,0,0) e quello massimo è B#(255,255,255,255). Ho capito bene? se si mi sapreste spiegare il significato della rappresentazione dei numeri separati da virgole che si trovano all'interno delle parentesi tonde? Altra domanda: Con il tipo di formato BCD posso rappresentare solamente un numero che mi va da -999 a +999, è vera questa affermazione?Grazie
rddiego Inserita: 3 giugno 2008 Segnala Inserita: 3 giugno 2008 sono tutte vere.Le virgole servono a separare i byte: ogni singolo byte è composto da 8 bit che in decimale assumono il valore massimo 255.il formato BCD codifica ogni cifra di un numero decimale utilizzando 4 bit (valore max 9). Massimo codificato è 999 (16 bit) o 9999999 (32 bit). Gli ultimi 4 bit codificano tutti insieme il segno + tutti 0 - tutti 1
kamikaze Inserita: 3 giugno 2008 Segnala Inserita: 3 giugno 2008 BCD è un tipo di formato, in cui ogni singolo gruppo di quattro bit binari può rappresentare un numero decimale da 0 a 9. Il nome è l’abbreviazione di Binary Code to Decimal. Il sistema BCD, nasce nei primi circuiti logici digitali, privi di microprocessore, per la rappresentazione di numeri su display a 7 segmenti , a cui ogni singolo gruppo di 4 bit, corrispondeva un singolo numero visualizzato dal display. Nel sistema Simatic , il numero BCD è preceduto dalla dichiarazione tipo : B#L’interpretazione del singolo raggruppamento di 4 bit segue le stesse regole del codice binario con il solo limite che il numero rappresentabile più alto è il 9. L’ordine dei gruppi di 4 bit a partire da sinistra, definisce i multipli X10 della cifraNel sistema operativo del PLC, come anche nel BIOS dei PC, i dati riguardanti data e ora corrente sono memorizzati in formato BCD. Inoltre, è bene sottolineare che gli elementi di programmazione come i timers, che sono residenti nella memoria di sistema , vogliono anch’essi l’impostazione del tempo in formato BCD.Gli ultimi 4 bit codificano tutti insieme il segno + tutti 0 - tutti 1Non mi pare esista il numero BCD negativo.CiaoIvan
mautomazione Inserita: 3 giugno 2008 Autore Segnala Inserita: 3 giugno 2008 Allora la seguente scrittura L B#(10,20) che numero mi rappresenta ?
Savino Inserita: 6 giugno 2008 Segnala Inserita: 6 giugno 2008 L B#(10,20) HEX W#16#0A14 => decimale 2580
mautomazione Inserita: 6 giugno 2008 Autore Segnala Inserita: 6 giugno 2008 ok. l'esadecimale è tutto chiaro . Ma L B#(10,20) non l'ho capita. In decimale quanto vale?grazie
mautomazione Inserita: 6 giugno 2008 Autore Segnala Inserita: 6 giugno 2008 grazie Savino . ora ho capito!
rddiego Inserita: 7 giugno 2008 Segnala Inserita: 7 giugno 2008 Non mi pare esista il numero BCD negativoti pare male, il bit più significativo codifica il segnoper esempio il numero -11in binario 1111 1111 1111 0101in BCD 1000 0000 0001 0001
mautomazione Inserita: 7 giugno 2008 Autore Segnala Inserita: 7 giugno 2008 ma -11 in BCD dovrebbe essere 1111 0000 0001 0001 .
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