Вниз
Скачать: CL | DM;

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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
1-101207
VJar
2002-10-18 00:25
2002.10.31
Фильтр для Edit


3-101115
Юра
2002-10-09 16:37
2002.10.31
Сортировка на украинском.


1-101236
Прохожий
2002-10-21 21:53
2002.10.31
Lib-файлы


1-101251
kukuikar
2002-10-21 21:56
2002.10.31
Проблема в следующем. Опять про ...


1-101378
jen_bond
2002-10-21 13:06
2002.10.31
Защита софта




   Наверх