var s1,s2,s3,s4:string
begin
s1:=s[2];
s2:=s[1];
s3:=s[4];
s4:=s[3];
s:=s1+s2+s3+s4;
end

解决方案 »

  1.   

                    mov ebx,0                mov eax,mynum
                    and eax,$000000ff
                    shl eax,8
                    add ebx,eax                mov eax,mynum
                    and eax,$0000ff00
                    shr eax,8
                    add ebx,eax                mov eax,mynum
                    and eax,$00ff0000
                    shl eax,8
                    add ebx,eax                mov eax,mynum
                    and eax,$ff000000
                    shr eax,8
                    add ebx,eax                mov mynum,ebx
    不知能否达到目的?
      

  2.   

    感觉程序是对的,不过我把它封在一个函数里边调用返回的结果却不对。不知道为什么?
    function swapdword(mynum:dword):dword;
    begin
      asm
      ............//coldjy的代吗
      end;
      result:=mynum;
    end;
    我在一个循环里边调用它,除了第一个值是正确的外,其它的都不对。
      

  3.   

    1、用stdcall
    2、mov @result,eax
      

  4.   

    //faint
    打错了.
    mov @result,ebx