Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Matrice [C / C++]

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

2
voti

[71] Re: Matrice [C / C++]

Messaggioda Foto UtenteTardoFreak » 20 apr 2014, 11:46

Io comunque avrei semplicemente dichiarato un array di 24 bytes e me ne sarei sbattuto i c... ehm ... ed avrei risolto con due righe.
In fondo si tratta di utilizzare 24 byte di FLASH (non di RAM) al posto di 8 bytes. Già il codice che non si scrive occupa più di 16 bytes. :mrgreen:
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[72] Re: Matrice [C / C++]

Messaggioda Foto UtenteShockwaver » 20 apr 2014, 11:49

No spe.. A meno che non li dichiari const li sbatte in RAM...
Anyone who has never made a mistake has never tried anything new
Two things are infinite: universe and human stupidity, and I'm not sure about the former
You did not really understand something unless you can explain it to your grandmother
A. Einstein
Avatar utente
Foto UtenteShockwaver
770 1 5 11
Expert
Expert
 
Messaggi: 859
Iscritto il: 3 mar 2010, 18:56

2
voti

[73] Re: Matrice [C / C++]

Messaggioda Foto UtenteTardoFreak » 20 apr 2014, 12:01

E perché non dovrei dichiarala const? E' una tabella delle balle!
Serve per decodificare e basta.
Se non ho capito male rimane fissa, altrimenti ritiro quello che ho detto.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[74] Re: Matrice [C / C++]

Messaggioda Foto Utentedaniele1996 » 20 apr 2014, 12:07

Si, rimane fissa, comunque con le and bitwise secondo me si risparmia piu spazio in ram... ho gia usato quelle appena ho 10 min mi ristudio il codice... Buona pasqua a tutti :)
Avatar utente
Foto Utentedaniele1996
570 2 7 11
Sostenitore
Sostenitore
 
Messaggi: 1143
Iscritto il: 29 ago 2011, 11:29

4
voti

[75] Re: Matrice [C / C++]

Messaggioda Foto UtenteTardoFreak » 20 apr 2014, 12:11

E allora se rimane fissa non serve fare tutto questo casino.
- Non risparmi RAM, anzi ne impieghi di meno (anche a livello di elaborazione)
- E' molto più veloce
- Risparmi addirittura FLASH
- Rendi il programma più lineare e leggibile.

Poi, per carità, ognuno è libero di incasinarsi come meglio preferisce eh! :mrgreen:
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[76] Re: Matrice [C / C++]

Messaggioda Foto Utentedaniele1996 » 20 apr 2014, 12:13

sisi, "risparmia piu spazio in ram" significava che ne usava di meno tutto qui.. :)
Avatar utente
Foto Utentedaniele1996
570 2 7 11
Sostenitore
Sostenitore
 
Messaggi: 1143
Iscritto il: 29 ago 2011, 11:29

1
voti

[77] Re: Matrice [C / C++]

Messaggioda Foto UtenteTardoFreak » 20 apr 2014, 12:15

Con il tuo sistema ne usi di più.
So bene cosa ho scritto ed ho anche capito bene quello che hai scritto tu.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

1
voti

[78] Re: Matrice [C / C++]

Messaggioda Foto UtenteShockwaver » 20 apr 2014, 12:20

TardoFreak ha scritto:E allora se rimane fissa non serve fare tutto questo casino.
- Non risparmi RAM, anzi ne impieghi di meno (anche a livello di elaborazione)
- E' molto più veloce
- Risparmi addirittura FLASH
- Rendi il programma più lineare e leggibile.

Poi, per carità, ognuno è libero di incasinarsi come meglio preferisce eh! :mrgreen:

Quoto.
Sempre sbattere su flash ciò che non cambia. La RAM sui micro è oro..
Anyone who has never made a mistake has never tried anything new
Two things are infinite: universe and human stupidity, and I'm not sure about the former
You did not really understand something unless you can explain it to your grandmother
A. Einstein
Avatar utente
Foto UtenteShockwaver
770 1 5 11
Expert
Expert
 
Messaggi: 859
Iscritto il: 3 mar 2010, 18:56

2
voti

[79] Re: Matrice [C / C++]

Messaggioda Foto UtenteTardoFreak » 20 apr 2014, 12:22

Shockwaver ha scritto:... La RAM sui micro è oro ...

iOi
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

2
voti

[80] Re: Matrice [C / C++]

Messaggioda Foto UtenteTardoFreak » 20 apr 2014, 12:41

Codice: Seleziona tutto
const uint8_t tabDec[8][3] =
{
  {0,0,0},
  {0,0,1},
  {0,1,0},
  {0,1,1},
  {1,0,0},
  {1,0,1},
  {1,1,0},
  {1,1,1}
};


void decode(uint8_t codice)
{
  if (codice > 7) return;
 
  // Azioni sulla linea P1
  if (tabDec[codice][0])
  {
    // Mette la linea a 1
  }
  else
  {
    // Mette la linea a 0
  }
 
  // Azioni sulla linea P2
  if (tabDec[codice][1])
  {
    // Mette la linea a 1
  }
  else
  {
    // Mette la linea a 0
  }
 
  // Azioni sulla linea P3
  if (tabDec[codice][2])
  {
    // Mette la linea a 1
  }
  else
  {
    // Mette la linea a 0
  }
}
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

PrecedenteProssimo

Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite