知识大全 Delphi的位操作以及嵌入式汇编[3]

Posted

篇首语:你不能左右天气,但你能转变你的心情。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Delphi的位操作以及嵌入式汇编[3]相关的知识,希望对你有一定的参考价值。

Delphi的位操作以及嵌入式汇编[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  一个把字符转化为大写的函数例子

function _UpCase( ch : Char ) : Char;

  asm

   CMP AL `a

   JB @@exit

   CMP AL `z

   JA @@exit

   SUB AL `a -`A

  @@exit:

  end;

  值得注意的是第二个例子中 没有象第一个那样把参数用语句放到寄存器中 这是由于Delphi中默认的把Byte(Char)类型放在AL中 不需要用Mov语句 但是这种函数不能是类的成员 否则结果会出错

   .在汇编中调用其它过程

  汇编语句中的Call语句 可以用于调用其它过程 既可以是其它汇编程序段也可以是Delphi中的标准过程

  例如 假设新建一个窗体并在上面加了一个按钮 在Click事件中写入以下代码

procedure TForm Button Click(Sender: TObject);

  begin

   showmessage(`ok );

  end;

  再写一个过程_X

 function TForm _x(var i:smallint):integer;

  asm

   call button click

  end;

  执行_x的结果就可以显示消息框

  * 汇编的调试

  Delphi嵌入式汇编一例

  用delphi写的程序 把x指针指向的 个字节次序颠倒过来

function toulong(x: pchar): longword;begin  result := (longword(x^) shl ) or    (longword((x + )^) shl ) or    (longword((x + )^) shl ) or    (longword((x + )^));end;

  以下是用delphi的嵌入式汇编写法

function toulong(x: pchar): longword;asm  mov esi eax  mov ax [esi]  xchg ah al  shl eax   mov ax [esi+ ]  xchg ah alend;

  说明 默认情况下 delphi使用 register 方式 若参数在 个已内 将分别使用eax edx和ecx 超过 个参数部分将使用堆栈 返回参数的存放视长度而定 例如 位用al返回 位用ax 位用eax 位用用两个 位寄存器edx:eax 其中eax是低位

  效率 本例asm大约比delphi或c快 %

cha138/Article/program/Delphi/201311/24899

相关参考

知识大全 Delphi的位操作以及嵌入式汇编[2]

Delphi的位操作以及嵌入式汇编[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  *Del

知识大全 Delphi开发嵌入式IE浏览器监控程序

Delphi开发嵌入式IE浏览器监控程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!引言  随着

知识大全 对象链接与嵌入(一)[3]

DELPHI基础教程:对象链接与嵌入(一)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(二)[3]

DELPHI基础教程:对象链接与嵌入(二)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 Linux用作嵌入式操作系统

Linux用作嵌入式操作系统  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  LinuxasanE

知识大全 嵌入式操作系统Symbian简介

嵌入式操作系统Symbian简介  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!SymbianOS是

知识大全 对象链接与嵌入(一)[5]

DELPHI基础教程:对象链接与嵌入(一)[5]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(一)[4]

DELPHI基础教程:对象链接与嵌入(一)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(一)[2]

DELPHI基础教程:对象链接与嵌入(一)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(二)[4]

DELPHI基础教程:对象链接与嵌入(二)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!