Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Вниз

Двоичный вид числа и строки 


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]));

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




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.021 c
3-57598           Rash                  2002-03-27 00:29  2002.04.18  
Аварийное завершение.


1-57701           de_La_Fer             2002-04-08 10:01  2002.04.18  
Проблемы с TListBox! HELP!!!!!!!!!!!!!!!!!!!!!!!!!!!


1-57820           SeF                   2002-04-07 02:33  2002.04.18  
SSRROOCCHHNNOO


14-57880          VuDZ                  2002-03-12 05:59  2002.04.18  
Задачка ::>


4-57914           Romul                 2002-02-14 16:36  2002.04.18  
Как получить handle s элементов другой программы?