Post AAbxttEhEEQ3C6g4RM by GustavinoBevilacqua@mastodon.cisti.org
(DIR) More posts by GustavinoBevilacqua@mastodon.cisti.org
(DIR) Post #AAbxtrgczPZcO9jLhQ by GustavinoBevilacqua@mastodon.cisti.org
2021-08-23T06:44:33Z
0 likes, 0 repeats
PROMEMORIA × PROGRAMMATORIIn un solo byte potete tenerci fino a 8 variabili booleane, in qualsiasi linguaggio, con un consumo minimo di risorse.Ho visto gente studiata usare STRINGHE CON UN AGGETTIVO DENTRO per un singolo valore booleano, tipo (ouch!)var Motore = "acceso";if (MancaLaLuce) Motore = "spento";Pensate al byte come se fosse un DIP switch… e vi verrà facile, anche se non avete iniziato a programmare in ASM 6502 con meno di mezzo Kb di RAM a disposizione.
(DIR) Post #AAbxtsA3E16prPUqYq by Madmonkey@mastodon.uno
2021-08-23T07:36:50Z
0 likes, 0 repeats
@GustavinoBevilacqua in alcuni linguaggi debolmente tipati (chi ha detto JS) spesso il comportamento delle booleane è… bipolare?
(DIR) Post #AAbxtscPWZnJHMlUlU by giarmini0@nebbia.fail
2021-08-23T07:39:31Z
0 likes, 0 repeats
@Madmonkey @GustavinoBevilacqua In realtà, sulle architetture hardware che usiamo comunemente almeno, qualsiasi variabile, in qualsiasi linguaggio, occupa almeno 1 byte: https://en.wikipedia.org/wiki/Byte"The byte [...] is the smallest addressable unit of memory in many computer architectures".In Javascript in particolare una booleana può occupare 4 byte su architettura a 32 bit e 8 su architettura a 64 bit: https://shevchenkonik.com/blog/memory-size-of-boolean(l'avevo cercato tempo fa e me lo ricordavo :) )
(DIR) Post #AAbxttEhEEQ3C6g4RM by GustavinoBevilacqua@mastodon.cisti.org
2021-08-23T08:24:21Z
0 likes, 0 repeats
@giarmini0 @Madmonkey Ok, però una variabile da 1 byte, tipo unsigned int, può tenere fino a 8 valori boolean, se chi programma ha voglia di farsi lo sbattone a lavorare sui singoli bit in cambio di una sostanziale riduzione dell'occupazione di memoria.Ha senso solo per grandi moli di dati, tipo i db di profilazione di FB, però è bene sapere che si può fare.
(DIR) Post #AAbxttqGyWTd4eG50i by giarmini0@nebbia.fail
2021-08-23T08:28:53Z
0 likes, 0 repeats
@GustavinoBevilacqua A quanto ho capito io, almeno sulle architetture in uso di questi tempi, il singolo bit non lo puoi proprio toccare, nemmeno in assembly, è un limite delle cpu.@Madmonkey
(DIR) Post #AAbxtuNwxJPol60yVE by GustavinoBevilacqua@mastodon.cisti.org
2021-08-23T08:30:56Z
0 likes, 0 repeats
@giarmini0 @Madmonkey In C si dovrebbe poter fare:https://en.wikipedia.org/wiki/Bitwise_operations_in_C
(DIR) Post #AAbxtuvcw6M0RXlrzk by bartholin@lainchan.gay
2021-08-23T08:38:36.312262Z
0 likes, 0 repeats
@GustavinoBevilacqua @giarmini0 @Madmonkey Generalmente, si usano un bitmask per modificare un singolo bit, o un campo di bit insieme.https://en.wikipedia.org/wiki/Mask_(computing)