vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
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:  Views:  15.983 
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))



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.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.