鱼C论坛

 找回密码
 立即注册
查看: 2838|回复: 5

求助Delphi 写一个字节翻转

[复制链接]
发表于 2012-11-28 13:40:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
输入框如 输入1234567890
输出框转换出 2143658709
求高手帮忙写一个  或者提供源码也行
先谢谢了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-29 11:08:40 | 显示全部楼层
留个名,下午补代码~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-29 12:07:47 | 显示全部楼层
//假设有edit1,labei1两个控件,大概就是这样吧,delphi很久没用了,好多都忘了,凑合凑合啊,有问题留言
var
 str,temp:String;
 i:Integer;
 begin
 str :=edit1.text;
 i :=0;
 for i to Length(str)-1 do
 begin
   if(i mod 2 == 1)
   temp :=str[i];
   str[i]:=str[i-1];
   str[i-1]:=str[i];
 end;
 
 label1.caption :=str;
 end;

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-29 13:42:19 | 显示全部楼层
你的“1234567890”是16进制的还是10进制的?如果是10进制的照你那样写就不是单字节翻转,而是相邻两字节翻转
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-29 23:23:08 | 显示全部楼层
未命名.jpg
 unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons;
type
  TForm1 = class(TForm)
    btn1: TBitBtn;
    edt1: TEdit;
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
var dj:Integer=0;
{$R *.dfm}
procedure dh (var i:string);
begin
  asm
     mov ebx,0
     mov ecx,0ffffh
     mov ebx,i
     mov esi,[ebx]
     @s:mov al,[esi+1]
     cmp al,0
     je @ok
     xchg al,[esi]
     mov 1[esi],al
     add esi,2
     loop @s
     @ok:nop
   end;
end;
procedure TForm1.btn1Click(Sender: TObject);
var
  s:string;
  i:byte;
begin
  s:=Trim(edt1.Text);
  dh(s);
  edt1.Text:=s;
end;
end.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-11-29 23:28:04 | 显示全部楼层
字符串调换.rar (5.47 KB, 下载次数: 1)
D里使用的汇编~嘿嘿
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 12:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表