Hola que tal, espero que este tema no esté ya por ahí, he buscado y no encontré nada.
Bueno primero que nada me encargaron en la escuela realizar una calculadora IP, esto es que yo le de la IP la máscara y al presionar un botón me dé tanto el network id, host id, #redes, #host.
Por la simplicidad de Visual Basic opte por este lenguaje solo que tengo unos problemas. Al momento de querer hacer una AND con dos valores, primero que nada, como hacerle para que al poner mi IP la tome como un numero binario? Segundo como hacer una AND entre este número binario y la máscara.
Pongo lo que tengo de programación, Saludos
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Class FormPrincipal
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonSalir.Click
End
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub LabelMascaras_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LabelMascaras.Click
End Sub
Private Sub TextMascara_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextMascara.TextChanged
End Sub
Private Sub ButtonIP_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonIP.Click
Dim numero As Integer
numero = Val(TextMascara.Text)
TextNetwork.Text = Bin(numero) * TextIP.Text
End Sub
Function Bin(ByVal Numero As Integer) As String
Dim Binario As String
Dim Inicial() As String
Dim Final() As String
Dim Contador As Integer
Dim I As Integer
Dim J As Integer
Dim K As Integer
Do
Binario = Binario & CStr(Numero Mod 2)
Numero = Numero \ 2
Contador = Contador + 1
Loop Until Numero < 1
ReDim Inicial(Contador)
ReDim Final(Contador)
Binario = Trim(Binario)
For I = 1 To Contador
Inicial(I) = Mid$(Binario, I, 1)
Debug.Print(Inicial(I))
Next I
Binario = ""
For J = 1 To Contador
Final(J) = Inicial(Contador + 1 - J)
Next J
For K = 1 To Contador
Binario = Binario & Final(K)
Next K
Bin = Binario
End Function
End Class