Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Eseguire i calcoli matematici di un numero scartando i bit superiori
Forum - C# / VB.NET - [VB.NET] Eseguire i calcoli matematici di un numero scartando i bit superiori - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
amreo (Normal User)
Pro


Messaggi: 93
Iscritto: 18/03/2013

Segnala al moderatore
Postato alle 22:44
Lunedý, 22/09/2014
quanti bit sono?

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 22:48
Lunedý, 22/09/2014
128 ma sono organizzati in modo da poter gestire anche decimali.

PM Quote
Avatar
amreo (Normal User)
Pro


Messaggi: 93
Iscritto: 18/03/2013

Segnala al moderatore
Postato alle 22:50
Lunedý, 22/09/2014
Allora dovrebbe andare bene. per scartare i 64 bit superiori basta che faccio numero and ULong.MaxValue (= 0xFFFFFFFFFFFFFFFF)?

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 22:52
Lunedý, 22/09/2014
Per tornare al problema dell'UInt64, se hai una variabile v che contiene il massimo

Dim v As UInt64 = UInt64.MaxValue

puoi scrivere

Codice sorgente - presumibilmente VB.NET

  1. Dim d1 As Decimal = v
  2.  
  3. d1 = d1 + 10   ' ----> sommi 10
  4.  
  5. Dim db() As Integer = Decimal.GetBits(d1)
  6. Dim d2 As New Decimal(db(0), db(1), 0, 0, 0)
  7. v = d2  ' ----> ottieni il valore 9 in v


PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo