国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Delphi > 正文

Delphi嵌入式匯編一例

2019-11-18 18:59:25
字體:
來源:轉載
供稿:網友
用delphi寫的程序,把x指針指向的4個字節次序顛倒過來:
function toulong(x: pchar): longWord;
begin
  result := (longword(x^) shl 24) or
    (longword((x + 1)^) shl 16) or
    (longword((x + 2)^) shl 8) or
    (longword((x + 3)^));
end;

以下是用delphi的嵌入式匯編寫法:
function toulong(x: pchar): longword;
asm
  mov esi,eax
  mov ax,[esi]
  xchg ah,al
  shl eax,16
  mov ax,[esi+2]
  xchg ah,al
end;

說明:默認情況下,delphi使用“register”方式,若參數在3個已內,
將分別使用eax、edx和ecx,超過3個參數部分將使用堆棧。返回參數的
存放視長度而定,例如8位用al返回,16位用ax,32位用eax,64位用用兩個
32位寄存器edx:eax,其中eax是低位。


效率:本例asm大約比delphi或c快50%。

上一篇:在Delphi中實現任意形狀的窗體

下一篇:Delphi中用于讀寫(I/O)的三種文件類型

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 简阳市| 义乌市| 昌邑市| 克什克腾旗| 淮北市| 成安县| 二手房| 大悟县| 新化县| 昌都县| 唐海县| 峨边| 肃宁县| 苏尼特左旗| 玉林市| 安化县| 滨海县| 伊通| 贺兰县| 建始县| 维西| 布拖县| 常熟市| 河北区| 玛多县| 安福县| 巴中市| 武宣县| 喜德县| 文山县| 衡南县| 怀仁县| 通州区| 沈阳市| 铁岭市| 新乡县| 毕节市| 通渭县| 高阳县| 苍山县| 青岛市|