vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Variablen/Strings · Algorithmen/Mathematik   |   VB-Versionen: VB.NET11.06.04
Dezimalzahl zu Binärezahl (Dualzahl) und umgekehrt

Diese Klasse wandelt eine Dezimalzal in eine Binärzahl um und umgekehrt.

Autor:   Michael FuhrerBewertung:     [ Jetzt bewerten ]Views:  15.939 
ohne HomepageSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Dieser Tipp zeigt, wie mal eine Dezimalzahl in eine Binärzahl umrechnen kann und umgekehrt.

Zunächst einmal die benötigte Klasse mit den zwei benötigten Umrechnungs-Funktionen:

Public Class clsBinär
  Private Const binärBasis As Byte = 2
 
  ' Rückgabewert: angefangen vom niedrigen Bit
  Public Function binäreZahl(ByVal DezimalZahl As String) As String
    If Not IsNumeric(DezimalZahl) Then Exit Function
 
    Dim Rest As String = 0
    Dim tmpBinäreZahl As String = ""
 
    Try
      Do
        ' Dezimalzahl durch die binäre Basis teilen
        Rest = Fix(DezimalZahl / binärBasis).ToString
        tmpBinäreZahl &= (DezimalZahl - (Rest * binärBasis)).ToString
        DezimalZahl = Rest
      Loop Until Rest <= 0
 
      Return tmpBinäreZahl
    Catch
      Return ""
    End Try
  End Function
 
  Public Function dezimalZahl(ByVal binäreZahl As String) As String
    If Not IsNumeric(binäreZahl) Then Exit Function
 
    Dim tmpBinZahl As Byte = 0
    Dim tmpDezZahl As String = 0
    Dim addValue As String = 1
 
    Try
      For i As Integer = 0 To binäreZahl.Length - 1
        tmpBinZahl = CByte(binäreZahl.Chars(i).ToString)
        If tmpBinZahl = 1 Then
          If i = 0 Then
            tmpDezZahl = addValue
          Else
            tmpDezZahl += addValue * binärBasis
          End If
        End If
        If i > 0 Then addValue *= binärBasis
      Next i
 
      Return tmpDezZahl
    Catch
      Return ""
    End Try
  End Function
End Class

Anwendungsbeispiel der Klasse:
Fügen Sie zwei Buttons auf die Form (Button1 und Button2), sowie zwei Textbox-Controls (TextBox1 und TextBox2). Für die Umrechnung muss zunächst muss ein neues Objekt erstellt werden.

' gehört in den Deklarations-Teil der Form
Dim b As New clsBinär

In das Button1_Click-Ereigniss setzen Sie nachfolgenden Code:

' Binärzahl ermitteln und in TextBox2 ausgeben
TextBox2.Text = b.binäreZahl(TextBox1.Text)

In das Button2_Click-Ereigniss setzen Sie diesen Code:

' Dezimalzahl ermitteln
MsgBox(b.dezimalZahl(TextBox2.Text))

Dieser Tipp wurde bereits 15.939 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel