Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2009, 16:18   #1
florion
Новичок
Джуниор
 
Регистрация: 27.02.2009
Сообщений: 2
По умолчанию Програмка по выделению и замене байтов

Помогли написать вот такую вот програмулину.
Состоит из нескольких частей:
1. В Edit1 вводится десятичное число от 2*10 ^9 до 3*10 ^9, при на жании на Button 1 происходят такие действия: в Edit2 появляется введенное 10-ое число только в 2сс, в Edit3 выделяется 3-ий байт двоичного числа, в Edit4 выделенный 3-ий байт переводится в 10сс.

2.После нажатия Button2 в Edit5 появляется введенное в Edit1 10-ое число только в 2сс, в Edit6 отображается 10 число выполнения операции выделения 3-его байта из Edit5 и замены им 2 и 1 байта

Как подругому можно наисать эту програмку. И как втавить ассемблерную вставку в этот код.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Math;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Edit3: TEdit;
Button2: TButton;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
function IntToBin(dec: int64): string; //Функция перевода десятичного числа в двоичное
function BinToInt(Value: string): int64; //функция перевода двоичного в десятичное


{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
str:string;
begin
str:=IntToBin(strtoint64(Edit1.Text )); //перевод десятичного числа в двоичное с помощью самописной функции IntToBin
Edit2.Text:=str; //Отображение двоичного числа в Edit2
Edit3.Text:=Copy(str,9,8); //3-й байт двоичного числа
Edit4.Text:= inttostr(BinToInt(Edit3.Text)); //перевод 3-го байта в десятичное
end;
{--------------------------------------------------------------------------------}
function TForm1.IntToBin(Dec: int64): string; //Собственно и есть самописная функция перевода десятичного числа в двоичное
var
del: int64;
size: Integer;
str:string;
begin
Result:='';
str:='';
del:=dec;
While (del div 2)<>0 do
begin
str:=str+inttostr(del mod 2);
del:=(del div 2);
end;
str:=str+'1';
size:=Length(str);
while size>0 do
begin
Result:=Result+copy(str,size,1);
size:=size-1;
end;

end;
{--------------------------------------------------------------------------------}
function TForm1.BinToInt(Value: String): int64 ; //Собственно и есть самописная функция перевода двоичного числа в десятичное
var
i:integer;
begin
i:=1;
Result:=0;
while not(i>Length(Value)) do
begin
if copy(Value,i,1)='1' then Result:=Result+strtoint64(Floattost r(IntPower(2,(Length(Value))-i))) ;
i:=i+1;
end;
end;
{--------------------------------------------------------------------------------}
procedure TForm1.Button2Click(Sender: TObject);
var
str:string;
begin
str:=IntToBin(strtoint64(Edit1.Text )); //перевод десятичного числа в двоичное с помощью самописной функции IntToBin
Edit5.Text:=Copy(str,1,8)+Copy(str, 9,8)+Copy(str,9,8)+Copy(str,9,8); //Замена в исходном числе 2 и 1 байты 3им и перевести полученное число в 10 сс
Edit6.Text:= inttostr(BinToInt(Edit5.Text)); //перевод в десятичное
end;

end.
florion вне форума Ответить с цитированием
Старый 28.02.2009, 00:00   #2
florion
Новичок
Джуниор
 
Регистрация: 27.02.2009
Сообщений: 2
По умолчанию

Очень нужно. Помогите плз.
florion вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна програмка romanukk Фриланс 5 19.02.2009 09:23
извлечение битов из байтов... WinApi Помощь студентам 4 10.11.2008 15:14
Нужен макрос Excel по поиску и замене Михалыч01 Microsoft Office Excel 2 06.11.2008 18:03
Строка символов в виде байтов Blondinka Общие вопросы Delphi 17 14.09.2007 19:06
прога по замене текста alex89bb Общие вопросы Delphi 6 27.01.2007 16:09