一个那样把参数用语句放到寄存器中,这是由于Delphi中默认的把Byte(Char)类型放在AL中,不需要用Mov语句,但是这种函数不能是类的成员,否则结果会出错。
3.在汇编中调用其它过程
汇编语句中的Call语句,可以用于调用其它过程,既可以是其它汇编程序段也可以是Delphi中的标准过程:
例如:假设新建一个窗体并在上面加了一个按钮,在Click事件中写入以下代码
procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(`ok');
end;
再写一个过程_X
function TForm1._x(var i:smallint):integer;
asm
call button1click
end;
执行_x的结果就可以显示消息框。
* 汇编的调试
编好了程序,没错,还好,如果有错,就得用到调试工具:如变量的跟踪、断点、堆栈查看……对于汇编还可以用View菜单的Debug Windows的CPU窗口跟踪。