Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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]));

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



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

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

Наверх





Память: 0.45 MB
Время: 0.005 c
1-57821
Rammst
2002-04-07 06:25
2002.04.18
Работа с ini


1-57722
Елена
2002-04-08 13:41
2002.04.18
Перечислимый тип


3-57626
VAleksey
2002-03-28 08:46
2002.04.18
Delphi help


1-57703
B_A_V
2002-04-08 10:29
2002.04.18
select c выборкой по последней дате, которая < введенной даты


3-57657
ol
2002-03-26 15:38
2002.04.18
чем в sql IB можно работать с датами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский