MOV EAX,DWORD PTR DS:[6154C0]      eax=0065fe00
MOV BYTE PTR DS:[EAX],1            eax=0065fe00
MOV EAX,DWORD PTR DS:[615644]       //eax=0065fdb8
MOV EAX,DWORD PTR DS:[EAX]          //坐标X
MOV EDX,DWORD PTR DS:[615830]       edx=0065fdcc        
MOV DWORD PTR DS:[EDX],EAX         //eax=坐标X  edx=0065fdcc    
MOV EAX,DWORD PTR DS:[615530]       0065fdbc
MOV EAX,DWORD PTR DS:[EAX]        //坐标Y
MOV EDX,DWORD PTR DS:[615738]       0065fdd0         
MOV DWORD PTR DS:[EDX],EAX如何把上面的汇编写在函数里

解决方案 »

  1.   


    procedure TForm1.Fun;
    asm
    MOV EAX,DWORD PTR DS:[$6154C0] //eax=0065fe00
    MOV BYTE PTR DS:[EAX],1 //eax=0065fe00
    MOV EAX,DWORD PTR DS:[615644] //eax=0065fdb8
    MOV EAX,DWORD PTR DS:[EAX] //坐标X
    MOV EDX,DWORD PTR DS:[615830] //edx=0065fdcc
    MOV DWORD PTR DS:[EDX],EAX //eax=坐标X edx=0065fdcc
    MOV EAX,DWORD PTR DS:[615530] //0065fdbc
    MOV EAX,DWORD PTR DS:[EAX] //坐标Y
    MOV EDX,DWORD PTR DS:[615738] //0065fdd0
    MOV DWORD PTR DS:[EDX],EAX
    end;
      

  2.   


    procedure TForm1.Fun(X,Y:intger);
      而且你直接代进去运行是通不过的。,。
      

  3.   

    procedure zluy;
    asm
    MOV EAX,DWORD PTR DS:[$6154C0]
    MOV BYTE PTR DS:[EAX],1
    MOV EAX,$2c5
    MOV EDX,DWORD PTR DS:[$615830]
    MOV DWORD PTR DS:[EDX],EAX
    MOV EAX,$261 
    MOV EDX,DWORD PTR DS:[$615738]
    MOV DWORD PTR DS:[EDX],EAX
    end;上面的测试通过
    procedure zluy(X,Y:intger);
    传进去$261 $2c5 前面这个$ 是这么做的想知道里面的
      

  4.   

    你要了解下DELPHI内嵌汇编的程序撒。procedure zluy(X,Y:intger)这个函数传进来的X,Y值知道对应的是那个寄存器不?
      

  5.   

    我估计他要问的是:启动delphi7后,如何一步一步地操作,最终封装为程序。大家后部分指点的很好,前半部分忽略了,最好给他个完整的步骤。