Преобразование шестнадцатеричного числа в десятичное
Автор Маша задал вопрос в разделе Компьютеры, Связь
кто поможет: создать прогу в Visual Basic перевод чисел из десятиричной системы в 16-тиричную??? и получил лучший ответ
Ответ от 3 000 000 $[гуру]
может это поможет?--------------------------------------------------------------------------------Как осуществить преобразование между десятичными, шестнадцатиричными и двоичными значениямиDim lDec As Long, aHex As String, aBin As StringlDec = 121aHex = Hex$(lDec) ' Десятичное в шестнадцатиричноеlDec = Val("&H" & aHex) ' Шестнадцатиричное в десятичное' Обратите внимание, что несоставляет труда преобразовать шестнадцатиричное значение в' двоичное, поэтому, чтобы преобразовать из десятичного в шестнадцатиричное, удобней сперва преобразовать десятичное в двоичное. Наиболее быстрый способ двоичного преобразования, это' использовать специальную таблицу преобразования.Dim vBinTable As VariantvBinTable = Array("0000", "0001", "0010", "0011", _"0100", "0101", "0110", "0111", _"1000", "1001", "1010", "1011", _"1100", "1101", "1110", "1111")Dim i As Integer, k As LongFor k = 1 To Len(aHex)' Шестнадцатиричное в двоичноеi = Val("&H" & Mid$(aHex, k, 1))aBin = aBin & vBinTable(i)Next' Так же несложно сделать преобразование из двоичного значения вдесятичное. Однако,' это не всегда выполнимо, так как шестнадцатиричные и двоичные значения в VB могут' представлять из себя намного большие размеры чем десятичное значение. Таким образом' для преобразование из двоичного в шестнадцатиричное опять прибегнем к таблице' преобразования, только другого типа.Dim aBinTable As String, aHexTable As StringaBinTable = " 0000 0001 0010 0011 0100 0101 0110 0111" & _" 1000 1001 1010 1011 1100 1101 1110 1111 "aHexTable = "0123456789ABCDEF"If Len(aBin) Mod 4 Then' Делаем длину чётной 4aBin = String$(Len(aBin) Mod 4, "0") & aBinEnd IfaHex = ""For k = 1 To Len(aBin) Step 4i = InStr(aBinTable, " " & Mid$(aBin, k, 4))aHex = aHex & Mid$(aHexTable, (i - 1) 5 + 1, 1)Next
Советую все-таки почитать лекции по информатике и написать самостоятельно. Пригодится!!!!
как перевести из восьмеричной СС в двоичную?
В восьмеричной системе исчисления нет таких цифр.
А в шестнадцатеричной - есть.
0 0
подробнее...
Как перевести число в разные системы счисления с помощью калькулятора?
bin - двоичная
oct - восьмеричная
dec - десятичная
hex - шестнадцатеричная
подробнее...
Чем различаются двоичная тетрада и двоичная триада?
Двоичная тетрада (последовательность из четырех бит) используется для представления
одной цифры
подробнее...
Напишите правило перехода десятичных чисел в двоичный код.
Можно записать две похожих формулировки правила перевода из десятичной системы в двоичную:
подробнее...
что такое диаметр?
Диаметр — это хорда (отрезок, соединяющий две точки) на окружности (сфере, поверхности шара), и
подробнее...