Ottenere un numero dalla sua memorizzazione in formato Big-Endian
Da Gambas-it.org - Wikipedia.
Versione del 12 giu 2015 alle 01:25 di Vuott (Discussione | contributi) (Creata pagina con 'Il caso è quello in cui si intende convertire i dati di un valore, memorizzati in formato Big-Endian all'interno di un file o di un vettore di tipo Byte[], ottenendo così al...')
Il caso è quello in cui si intende convertire i dati di un valore, memorizzati in formato Big-Endian all'interno di un file o di un vettore di tipo Byte[], ottenendo così al termine l'effettivo numero corrispondente.
Porremo come esempio un vettore di tipo Byte[] di tre elementi contenente i seguenti valori: &FF, &FF, &FF. Per ottenere il corrispondente numero potremo utilizzare due modalità:
Public Sub Main() Dim bb As Byte[] = [&FF, &FF, &FF] Print ((bb[0] Or ((bb[1] * CInt(2 ^ 8)))) Or ((bb[1] * CInt(2 ^ 16)))) End
oppure:
Public Sub Main() Dim q As Byte Dim bb As Byte[] = [&FF, &FF, &FF] Dim ris As Integer Do ris = (ris * CInt(2 ^ 8)) Or bb[q] Inc q Loop Until q = 3 Print ris End