Buenas!.
Si quiero convertir un número de binario a decimal, puedo hacerlo de esta forma:
Código:
'Binario -> Decimal
'Eso no es una cadena
Print &X11
'Nos devolvería 3
El problema que me encontraba es que quería usar los operadores lógicos con números binarios. Ejemplo:
Código:
Public Sub Ejemplo2()
Print OperaAND("0011", "0110")
Print
Print OperaOR("0011", "0110")
End
Me tuve que apoyar en la función val. Convertir una cadena a número. Realizar un AND de dos números decimales y el resultado convertirlo a binario
En este caso solo necesité obtener cuatro dígitos.
Código:
''Realiza un AND de dos números binarios
Public Function OperaAND(numero1 As String, numero2 As String) As String
Return Subst("&1 AND &2 = &3", numero1, numero2, Bin(Val("&X" & numero1) And Val("&X" & numero2), 4))
End
''Realiza un OR de dos números binarios
Public Function OperaOR(numero1 As String, numero2 As String) As String
Return Subst("&1 OR &2 = &3", numero1, numero2, Bin(Val("&X" & numero1) Or Val("&X" & numero2), 4))
End
Resultado:
Cita:
0011 AND 0110 = 0010
0011 OR 0110 = 0111
Saludos