Binär to Dezimal, Hexa to Dezinal etc...

    • VB6

      Binär to Dezimal, Hexa to Dezinal etc...

      Hier mal Funktionen die Binär in Dezimal, Hexa in Dezimal etc. umwandelt...
      Viel Spass damit!

      Visual Basic-Quellcode

      1. Option Explicit
      2. Function CheckDual(ByVal Dual As String) As Boolean
      3. Dim i As Integer
      4. Dim Value As Variant
      5. CheckDual = True
      6. For i = 0 To Len(Dual) - 1
      7. Value = UCase(Mid(Dual, i + 1, 1))
      8. If Value <> 0 And Value <> 1 Then CheckDual = False
      9. Next i
      10. End Function
      11. Function CheckHex(ByVal Hex As String) As Boolean
      12. Dim i As Integer
      13. CheckHex = True
      14. For i = 0 To Len(Hex) - 1
      15. Select Case UCase(Mid(Hex, i + 1, 1))
      16. Case 0 To 9, "A" To "F"
      17. Case Else
      18. CheckHex = False
      19. End Select
      20. Next i
      21. End Function
      22. Function HexToDez(ByVal VarHex As Variant) As Double
      23. Dim intHochzahl As Integer
      24. Dim intHexa As Integer
      25. Dim dblDez As Double
      26. VarHex = UCase(VarHex)
      27. For intHochzahl = 0 To (Len(VarHex) - 1)
      28. Select Case (Mid(VarHex, Len(VarHex) - intHochzahl, 1))
      29. Case 0 To 9
      30. intHexa = CInt((Mid(VarHex, Len(VarHex) - intHochzahl, 1)))
      31. Case "A"
      32. intHexa = 10
      33. Case "B"
      34. intHexa = 11
      35. Case "C"
      36. intHexa = 12
      37. Case "D"
      38. intHexa = 13
      39. Case "E"
      40. intHexa = 14
      41. Case "F"
      42. intHexa = 15
      43. Case Else
      44. HexToDez = 0
      45. Exit Function
      46. End Select
      47. dblDez = dblDez + intHexa * 16 ^ intHochzahl
      48. Next intHochzahl
      49. HexToDez = dblDez
      50. End Function
      51. Function DezToBinär(ByVal VarDez As Variant) As Double
      52. Dim dblDez As Double
      53. Dim intHochzahl As Integer
      54. Dim VarBin As Variant
      55. If IsNumeric(VarDez) Then
      56. dblDez = CDbl(VarDez)
      57. If dblDez >= 2 ^ 32 Then MsgBox "Zahl ist größer als 32 Bit": Exit Function
      58. Do
      59. If (dblDez And 2 ^ intHochzahl) Then
      60. VarBin = "1" & VarBin
      61. Else
      62. VarBin = "0" & VarBin
      63. End If
      64. intHochzahl = intHochzahl + 1
      65. Loop Until 2 ^ intHochzahl > dblDez
      66. Else
      67. MsgBox ("Bitte nur Zahlen"): Exit Function
      68. End If
      69. DezToBinär = VarBin
      70. End Function
      71. Function BinärToDez(ByVal VarBin As Variant) As Double
      72. Dim dblDez As Double
      73. Dim intHochzahl As Integer
      74. Dim intCounter As Integer
      75. If IsNumeric(VarBin) Then
      76. For intHochzahl = 0 To (Len(VarBin) - 1)
      77. intCounter = CInt((Mid(VarBin, Len(VarBin) - intHochzahl, 1)))
      78. If intCounter < 0 Or intCounter > 1 Then MsgBox ("Bitte nur 1 und 0"): Exit Function
      79. dblDez = dblDez + intCounter * 2 ^ intHochzahl
      80. Next intHochzahl
      81. Else
      82. MsgBox ("Bitte nur Zahlen"): Exit Function
      83. End If
      84. BinärToDez = dblDez
      85. End Function

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ValvePro“ ()