Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перевод из 16 системы в двоичную


Anatoliy112 ©   (2002-11-24 15:54:00) 

Подскажите как попроще перевести число из шестнадцатиричного вида в двоичный?
То биш есть некое число напр. 21ff - его надо записать как 001010101 и т.д. - где каждая цифра значит или нормальную работу или отказ.


Vlad1   (2002-11-24 20:27:00) [1]

function LongWordToBit(w:longword):String;
const ArBin:array[0..15] of String[4]=("0000","0001","0010","0011","0100","0101","0110","0111","1000","1001",1010","1011","1100","1101","1110","1111");
var i:integer;
begin
result:="";
for i:=1 to 8 do
result:=result+ArBin[strtoint("$"+inttohex(w,8)[i])];
end;

Тоже просто.


ret_Avr   (2002-11-24 19:34:00) [2]

function TForm1.ByteToBin(value:Byte):string;
var i:integer;
begin
for i:=0 to 7 do
Result:=Result+Chr(byte(((Value shl i) and $80)=$80)+$30);
end;

Ну и типа
var w:word;
w:=$21FF;
Caption:=ByteToBin(HiByte(w))+" "+ByteToBin(LoByte(w));


Наверх

Титульная страница Поиск, карта сайта Написать письмо