Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [VB6] Big Endian

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152

    [VB6] Big Endian

    Ciao,

    Come si fa ad trasformare un numero con la convenzione BigEndian?

    io devo scrivere ad es. 1038 (dec)?

    C'è una funzione che fa questo?

    Grazie

    Cia'

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    117

    è solo un'ipotesi..

    ciao, pare che si scarichino API per la conversione in:
    http://www.atereon.com/AtFileIo.asp

    Auguri !!

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    Speravo in qualcosa di più economico ed immediato tipo una funzioncina già pronta ...

    Provo con quest'API sperando che vada bene

    Grazie mille

    Cia'

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non dovrebbe essere complesso ... anzi.

    Ti serve la rappresentazione a video ?

    Cioe', per capirci, per il 1038 devi visualizzare

    4
    14

    ... oppure ... ?

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    esattamente.

    mi serve che 1038 diventi

    /0
    /0
    004
    016

    ovvero rientri in 4 bytes

    Come devo fare ?

    Grazie
    Cia'

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ti serve in ottale ?

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    In ogni caso, il codice e' questo ...

    codice:
        Dim a As Long
        Dim b1 As Byte
        Dim b2 As Byte
        Dim b3 As Byte
        Dim b4 As Byte
        
        a = 1038
        
        b1 = ((a And &HFF000000) \ &H1000000) And &HFF&
        b2 = (a And &HFF0000) \ &H10000
        b3 = (a And &HFF00&) \ &H100&
        b4 = a And &HFF
        
        Print b1
        Print b2
        Print b3
        Print b4
    ... le conversioni nella base che preferisci le puoi fare alla fine prima di visualizzare i risultati ...

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    Allora questta è la mia direttiva (sto inviando XML via socket):

    "Tutte le istanze XML devono cominciare con 4 bytes (in Network order/BigEndian format) indicanti la dimensione totale del messaggio inclusi i 4 bytes iniziali"

    L'esempio che mi hanno dato invia un messaggio di 1038 bytes e mi viene tradotto in /0 /0 004 016 .

    Quindi so il risultato ed il parametro iniziale ma non so il procedimento. (come mi capitava negli esercizi di matematica all'università )

    Spero di averti chiarito la situazione.

    Grazie
    Cia'

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    Mentre spiegavo mi hai risposto ... grazie !!

    Dovrebbe funzionare (anche se non mi spiego perchè mi dà 00414 invece di 000004016 come da esempio che mi hanno dato)


    Lo sapevo che per chi lo sapeva fare esa un gioco da ragazzi

    Grazie ora spero di riuscire ad inviare 'sto benedetto pacchetto!

    Cia'

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    016 e' espresso in ottale ed equivale a 14 decimale ... quindi e' la stessa cosa ...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.