chi spiega cosa fanno queste 2 righe di codice

mi sono perso in un "bicchiere di bit"

le altre cose piu o meno le ho chiarite, ma la formula non troppo,
alla fine quella formula deve per forza eseguire una di queste due cose, (oltre al fatto che legge 24 bit)

primo che semplicemente trasforma i bit (classici) in numero comune seguendo le vostre formule

secondo che trasforma i bit in numero comune, ma i bit sono a complemento a due

quale posso escludere con certezza?

reading=reading+(data[x]*pow(2,x-25));