Cómo convertir a un número decimal en un número binario en una cadena

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 109260
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Resumen
El programa de ejemplo siguiente muestra cómo convertir a un número decimal en su representación binaria equivalente almacenada en una cadena.

Este programa acepta un número decimal positivo de nueve dígitos y devuelve una cadena de 32 caracteres que representa el número en notación binaria. Los números negativos se convierten en el formato binario en dos complementos de 32 dígitos, utilizado por enteros largos en Basic.
Más información
En números decimales (base diez números), cada posición de decimal es una potencia de 10. Dígitos decimales pueden tener valores desde cero hasta nueve. En números binarios (base-dos números), cada posición de decimal es una potencia de dos. Dígitos binarios sólo pueden tener valores de 0 ó 1.

Programa de ejemplo

  1. Inicie un proyecto nuevo de Visual Basic. Se creará Form1 de manera predeterminada.
  2. Agregue dos cuadros de texto a Form1. Asegúrese de cada cuadro de texto en más de 32 caracteres de ancho.
  3. Haga doble clic en el cuadro de texto Text1 para abrir su ventana de código. Elija el evento Change en el cuadro procedimiento. Agregue el código siguiente al evento cambiar Texto1:
       Sub Text1_Change ()      Dim i As Long, x As Long, bin As String      Const maxpower = 30   ' Maximum number of binary digits supported.      text1.MaxLength = 9   ' Maximum number of decimal digits allowed.      text2.Enabled = False ' Prevent typing in second text box.      bin = ""  'Build the desired binary number in this string, bin.      x = Val(text1.Text) 'Convert decimal string in text1 to long integer      If x > 2 ^ maxpower Then         MsgBox "Number must be no larger than " & Str$(2 ^ maxpower)         text2.Text = ""         Exit Sub      End If      ' Here is the heart of the conversion from decimal to binary:      ' Negative numbers have "1" in the 32nd left-most digit:      If x < 0 Then bin = bin + "1" Else bin = bin + "0"      For i = maxpower To 0 Step -1         If x And (2 ^ i) Then   ' Use the logical "AND" operator.            bin = bin + "1"         Else            bin = bin + "0"         End If      Next      text2.Text = bin  ' The bin string contains the binary number.   End Sub						
  4. Inicie el programa, o presione la tecla F5. Introducir números decimales en el primer cuadro de texto. El número equivalente binario se muestra en el segundo cuadro de texto.
Nota : este programa convierte los números decimales negativos en formato binario interno dos complemento utilizado por Basic. En ese formato, el dígito binario de más a la izquierda (dígito de treinta segundos en un entero largo) siempre será 1 para un número negativo y 0 para un número positivo.
Decimal Value    Binary Value-----------------------------0                0000000000000000000000000000000021               000000000000000000000000000101011024             0000000000000000000001000000000032767            0000000000000000011111111111111132768            0000000000000000100000000000000065536            0000000000000001000000000000000016777216         00000001000000000000000000000000999999999        00111011100110101100100111111111-1               11111111111111111111111111111111-3               11111111111111111111111111111101				
2.00 3.00

Propiedades

Id. de artículo: 109260 - Última revisión: 12/04/2015 09:53:33 - Revisión: 2.0

Microsoft Visual Basic 2.0 Standard Edition, Microsoft Visual Basic 3.0 Professional Edition, Microsoft Visual Basic 2.0 Professional Edition, Microsoft Visual Basic 3.0 Professional Edition

  • kbnosurvey kbarchive kbmt KB109260 KbMtes
Comentarios