Я хочу преобразовать восьмеричное число в двоичное для целей, связанных с моей авионикой (в частности, с транспондерами). Я делаю vb.net в свободное время, учусь самостоятельно. Но для этого я не уверен, как это сделать, даже после того, как погуглил.
Вот как я это настроил: form1
Вот весь код, который у меня есть. Это значит, что можно ввести только цифры 1-7:
Public Class Form1
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
If Asc(e.KeyChar) <> 8 Then
If Asc(e.KeyChar) < 48 Or Asc(e.KeyChar) > 55 Then
e.Handled = True
End If
End If
End Sub
End Class
Я не уверен, как преобразовать Textbox1.text в двоичный файл, а затем разделить его на следующие текстовые поля для A, B, C, D.
Пример: У вас есть A4, A2 и A1 (000). Те добавляют к 7 (111). Это повторяется для B, C и D.
Итак, чтобы подвести итог, я хочу преобразовать восьмеричное число в двоичное и, если смогу, разделить его на отдельные поля, соответствующие буквам.
Вот как это должно выглядеть (нельзя размещать более 2-х ссылок): 2134 = A4,2,1(010) B4,2,1(001) C4,2,1(011) D4,2,1(100 )
Изменить: я пробовал Convert.ToString(#NUMBER, 2), но он возвращает неправильный двоичный код. 7631 возвращает 1110111001111, но должно быть 111110011001. См. http://ncalculators.com/digital-computation/binary-octal-converter.htm