Delphi的位操作以及嵌入式汇编[2]

2024-12-29 22:44:47
推荐回答(1个)
回答1:

   * Delphi嵌入式汇编的使用方式

   .在一般函数过程中使用汇编

  汇编程序段可以嵌套于其它过程中 如

procedure TForm Button Click(Sender: TObject);

  var i: *** allint;

  begin

   i:= ;

   a ***

   mov ax i

   sal ax

   mov &i ax

   end;

   showmessage(inttostr(i));

  end;

  这个程序段是把 位的变量I进行左移 然后把结果用Mov &I ax语句放入I变量所在地址返回值 最后显示I 的值是

   .独立的汇编程序段

  汇编程序段也可以单独写成函数或过程 这就涉及到参数的传递与结果的返回 首先Delphi对于函数的返回有一个约定

  即 整型数据 位的用AL返回 位的用AX返回 位的用EAX返回

  实型 用ST( )返回

  指针 用EAX返回

  长字符串 用EAX返回其所在地址

  变量 可用@Result返回

  例如 一个用汇编的求和函数

function _Sum(X Y: Integer): Integer;

   a ***

  MOV EAX X //把 位的数放入EAX

  ADD EAX Y //进行加法运算

  MOV @Result EAX //返回X+Y

   end;

lishixinzhi/Article/program/Delphi/201311/24898