Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.18;
Скачать: CL | DM;

Вниз

Двоичный вид числа и строки   Найти похожие ветки 

 
dr_neo_rostov   (2002-04-05 14:24) [0]

Этот сайт уже вообще офанарел!!!
Я уже этот вопрос посылал на форум "Алгоритмы", но ни вопроса, ни ответа я там не обнаружил
Так вот, у меня такая проблема. Есть какой - то строковый объект (TEdit or TMemo or TRichEdit) и я хочу сделать так, чтобы по нажатию на кнопку этот текст превращался в двоичный вид, а по другой кнопке - наоборот из двоичного вида в обычный. ( Замечание: текст содержит в себе как буквы(на русском или английском языке), так и цифры).
Заранее Благодарен!
И еще, администрация сайта, пожалуста не удаляйте это сообщение, мне очень нужны эти функции для работы программы


 
Song ©   (2002-04-05 14:38) [1]

Переводи каждую букву в её код, а потом последний в двоичное представление.


 
eheyler   (2002-04-05 15:32) [2]

f-n StrToHex(s: string): string;
begin
Result := "";
for i := 1 to Length(s) do
Result := Result + " "+ IntToHex(Ord(s[i]), 2);
end;


 
AFROLOV   (2002-04-05 15:36) [3]

Принципиально это выглядит так:
Представляем байт в виде его битов:

type BitArray=array[0..7] of byte;

function ConvertToBits(X:byte):BitArray;
var
i:integer;
tmp:byte;
begin
tmp:=1;
for i:=0 to 7 do
begin
if ((X and tmp)>0) then result[i]:=1 else result[i]:=0
tmp:=tmp*2;
end;

end;
function ConvertToByte(bits:BitArray):byte;
var
i:integer;
tmp:byte;
begin
tmp:=1;
for i:=0 to 7 do
begin
if bits[i]>0 then result:=result+tmp;
tmp:=tmp*2;
end;
end
;



 
Fantasist   (2002-04-07 02:47) [4]

Значит, вот тебе функция:


function _10to2(v:byte):string;
var
i:integer;
begin
Result:="";
for i:=0 to 8 do
begin
Result:=char((v and 1)+48)+Result;
v:=v shr 1;
end;
end;


Теперь берешь свою строку S, и делаешь примерно так:

Result:=""
for i:=1 to lenght(s) do
Result:=Result+_10to2(byte(s[i]));

Ну, обратно, по аналогии.



Страницы: 1 вся ветка

Текущий архив: 2002.04.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
7-57903
prosof
2001-11-06 12:55
2002.04.18
Видео в полный экран


3-57615
sysoper
2002-03-28 07:10
2002.04.18
Ошибка в IB5.6 +Win2000 server+sp2


1-57709
mike.dld
2002-04-06 00:22
2002.04.18
Delphi4 vs Delphi6


1-57760
Oleon
2002-04-05 16:23
2002.04.18
Ворос с печатью бланков строгой отчетности.


4-57917
vitnt2000
2002-02-15 06:58
2002.04.18
Управление окном IExplorer