По просьбе пользователя
Трава выкладываю эту элементарную библиотеку.
Функции такие:
integer any2int(
String s;
integer rad) - Переконвертирует строку s в десятичное число
rad - система счисления, в которой записано число до перекодировки
В случае ошибки при конвертировании, вернется число -1
string int2any(
integer i;
integer rad) - Переконвертировать число i в нужную систему счисления
rad - требуемая система счисления (например, 16 - для HEX, 8 - для OCT, 2 - для BIN)
В случае ошибки при конвертировании, вернется пустая строка
string any2any(
string s;
integer r1;
integer r2) - Переконвертировать число в строке s в нужную систему счисления
r1 - Система счисления, которая была
r2- Система счисления, которая нужна
В случае ошибки при конвертировании, вернется пустая строка
Пример использования либы показан ниже:
Program RadixTest;
Uses radix;
Begin
DrawText( int2any(65535, 16) , 5, 5); // Перевод из DEC --> HEX
DrawText( '' + any2int('ffff', 16) , 5, 25); // Перевод из HEX --> DEC
DrawText( any2any('ffff', 16, 2) , 5, 45); // Перевод из HEX --> BIN
Repaint; Delay(5000);
End.