Conversion binario hexadecimal

clamartell
28 de Enero del 2005
Hola, Necesito saber si exixte alguna intruccion que
permita convertir directamente en VB de binario a hexa y viceversa. Gracias..;-)

Baltasar
28 de Enero del 2005
Pues VB tiene las funciones HEX y OCT que convierten de decimal a hexadecimal y a octal respectivamente. Es una pena que no tengan (yo no lo he encontrado) para pasar a binario.
Así que me he puesto manos al teclado y te he preparado estas dos funciones que pasan de hex a bin y viceversa.
Aviso a los "perfeccionaistas": Seguro que hay maneras mejores de hacerlo, más resumidas, pero, ¿no se trata realmente de dar una respuesta clara y comprensible? jajaj
Bueno, esto es lo que te he preparado, espero que te sirva:

Public Function Hex2Bin(MH As String)
Dim MValor As Long
Dim MBase As Double
Dim MResult As String
Dim a As Integer

MResult = ""
For a = 1 To Len(MH)
MValor = Val("&h" & Mid(MH, a, 1))
MBase = 8
Do While MBase >= 1
If MValor >= MBase Then
MResult = MResult + "1"
MValor = MValor - MBase
Else
MResult = MResult + "0"
End If
MBase = MBase / 2
Loop
Next a
Hex2Bin = MResult
End Function

Public Function Bin2Hex(MB As String)
Dim MBase As Double
Dim MValor As Long
Dim a As Integer

MBase = 1
For a = Len(MB) To 1 Step -1
MValor = MValor + IIf(Mid(MB, a, 1) = "1", MBase, 0)
MBase = MBase * 2
Next a
Bin2Hex = Hex(MValor)
End Function

Saludos

aceror
28 de Enero del 2005
Deberias poner comentarios en el codigo para saber que es lo que hace que?

Magaly
28 de Enero del 2005
Hola como estas
Mira soy de Ecuador mi nombre es Magaly y tengo un problema que es:
tengo que hacer uun programa en c++ builder de la conversion de bases decimal octal hexadecimal y binario y no puede porque pénse hacer con % no funciona ni con fmod y por otra parte no se como puede verificar si el numero ingresado es decimal octal hexadecimal o binario y si no es mucho abuso me puedes auxiliar porfa y si aun no es abuso mi numero telefonico es 062937134 mi celular es 098317432 si me pudes ayudar te lo agradeciria

Magaly
28 de Enero del 2005
Hola como estas
Mira soy de Ecuador mi nombre es Magaly y tengo un problema que es:
tengo que hacer uun programa en c++ builder de la conversion de bases decimal octal hexadecimal y binario y no puede porque pénse hacer con % no funciona ni con fmod y por otra parte no se como puede verificar si el numero ingresado es decimal octal hexadecimal o binario y si no es mucho abuso me puedes auxiliar porfa y si aun no es abuso mi numero telefonico es 062937134 mi celular es 098317432 si me pudes ayudar te lo agradeciria

arturo
28 de Enero del 2005
soy arturo , soy de bilbao pero vivo en mexico. tengo que hacer un programa con el codigo de redundancia ciclica y tu codigo me sirvio para aligerar la chamba. muchas gracias