Форум: "Основная";
Текущий архив: 2002.10.31;
Скачать: [xml.tar.bz2];
Вниз
Dec->Bin->Hex, Hex->Bin->Dec Найти похожие ветки
← →
Dmitriy_R (2002-10-21 10:18) [0]Народ подскажите как перевести десятичное число в бинарное и в шестнадцатеричное, и как все тоже обратно. Да и вот еще как к примеру число 640 разложить на два шестнадцатеричных числа, тоесть 02h, 80h.
← →
Smithson (2002-10-21 10:28) [1]Как разложить - любое число в IBM PC представлено БАЙТАМи. СледовательноЮ достаточно написать функцию подобной трансляции БАЙТа, а далее более длинные числа раскладывать на них.
Функция преобразования - ну например:
[code]
function ByteToHex(B: Byte): String; // Извини, не придумал, как
еще можно представить
const PP: Array[0..15] of Char = ("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
Begin
Result := PP[(B shr 4)]+PP[B and $0F];
End;
[/code]
В двоичный код переводить сложнееЮ сейчас нет времени городить, подумай сам.
← →
Внук (2002-10-21 10:33) [2]В качестве шутки:
function ToBin(a:longword):string;
var i:longword;
f:Boolean;
begin
Result:="";
i:=1;
while i<>0 do
begin
f:=not ((i and a) = 0);
Result:=IntToStr(Integer(f))+Result;
i:=i shl 1;
end;
end;
И еще IntToHex :)
← →
REA (2002-10-21 10:43) [3]Можно еще наверно в TBits загнать - там по индексу должен быть доступ к битам.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.10.31;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.029 c