non riesco a capire cos'è una maschera in C...
praticamente io dovrei manipolare un certo file usando come maschera certi byte contenuti in un altro file... una piccola delucidazione?
grazie
non riesco a capire cos'è una maschera in C...
praticamente io dovrei manipolare un certo file usando come maschera certi byte contenuti in un altro file... una piccola delucidazione?
grazie
V+K
le avevo viste ankio ma nn mi sembra una gran spiegazione...
V+K
Se intendi l'operazione di "mascheratura dei bit", è una banale operazione di AND che consente di ottenere un nuovo valore che contiene solamente certi bit del valore iniziale.Originariamente inviato da valer_85
non riesco a capire cos'è una maschera in C...
praticamente io dovrei manipolare un certo file usando come maschera certi byte contenuti in un altro file... una piccola delucidazione?
grazie
Esempio:
codice:int a = 0x4F; /* 01001111 */ int mask = 0x61; /* 01100001 */ int r; r = a & mask; /* r = 01000001 (0x41) */
credo di aver capito... nel mio caso xò devo usare lo xor, xkè l'esercizio dice di modificare il file usando una trasformazione xor, usando come maschera i byte contenuti in un file di maschera...
quindi invece dell'and devo usare lo xor?
grazie
V+K
L'operazione di XOR serve in genere per invertire selettivamente solo certi bit di un valore. Esempio:Originariamente inviato da valer_85
credo di aver capito... nel mio caso xò devo usare lo xor, xkè l'esercizio dice di modificare il file usando una trasformazione xor, usando come maschera i byte contenuti in un file di maschera...
quindi invece dell'and devo usare lo xor?
grazie
codice:int a = 0x45; /* 01000101 */ int mask = 0x0F; /* 00001111 --> inverte i bit 3-0 */ int r; r = a ^ mask; /* r = 01001010 (0x4A) */
ke casino
ecco la signature dell'esercizio
provamaschera principale maschera finale
quindi senti se è giusto il mio ragionamento:
- vedo di quanti byte è il file di mask ( per esempio n ), e quindi la trasformazione del file "principale" dev'essere fatta a blocchi di n byte.
- per ogni blocco faccio lo xor byte x byte tra file principale e maskera
- scrivo quel ke viene in un altro file "finale"
giusto?
V+K