Delphi 嵌入汇编学习
2005-07-07 15:00
316 查看
Function H32ToLow(Sdigit:LongWord):LongWord;
Asm
MOV EAX,Sdigit
BSWAP EAX
Mov Sdigit,AX
End;
Function H16ToLow(Sdigit:Word):Word;
Asm
MOV AX,Sdigit
ROR AX,8
Mov Sdigit,AX
End;
Function H16ToLow(Sdigit:Word):Word;
Asm
MOV AX,Sdigit
XCHG AL,AH
Mov Sdigit,AX
End;
说明:
BSWAP 用于交换32位寄存器里字节的顺序
XCHG 交换字或字节.( 至少有一个操作数为寄存器,段寄存器不可作为操作数)
ROL,ROR 循环位移
所以,第二个函数中,应采用XCHG的速度就比用ROL或是的ROR的速度要快,ROR,ROL需要多个周期才可以完成,而XCHG只需要一个周期即可完成!
Asm
MOV EAX,Sdigit
BSWAP EAX
Mov Sdigit,AX
End;
Function H16ToLow(Sdigit:Word):Word;
Asm
MOV AX,Sdigit
ROR AX,8
Mov Sdigit,AX
End;
Function H16ToLow(Sdigit:Word):Word;
Asm
MOV AX,Sdigit
XCHG AL,AH
Mov Sdigit,AX
End;
说明:
BSWAP 用于交换32位寄存器里字节的顺序
XCHG 交换字或字节.( 至少有一个操作数为寄存器,段寄存器不可作为操作数)
ROL,ROR 循环位移
所以,第二个函数中,应采用XCHG的速度就比用ROL或是的ROR的速度要快,ROR,ROL需要多个周期才可以完成,而XCHG只需要一个周期即可完成!
相关文章推荐
- 初学 Delphi 嵌入汇编[3] - 第一个 Delphi 与汇编的例子
- 初学 Delphi 嵌入汇编[2] - 汇编语言关键字
- 初学 Delphi 嵌入汇编[6] - & 操作符
- 初学 Delphi 嵌入汇编[20] - Delphi 的 Integer 类型
- 初学 Delphi 嵌入汇编[27] - XCHG 指令: 交换寄存器的内容
- 初学 Delphi 嵌入汇编[30] - 寄存器表
- 初学 Delphi 嵌入汇编[26] - 大小写字母转换
- 初学 Delphi 嵌入汇编[13] - 地址参数用 [] 取值
- 初学 Delphi 嵌入汇编[23] - LOOP 循环
- 初学 Delphi 嵌入汇编[5] - 寄存器在过程与函数中的使用 - 续
- 【Delphi内联汇编学习1】Delphi与汇编 <转帖>
- Delphi汇编学习心得(不得闲) good
- 初学 Delphi 嵌入汇编[7] - 使用常量
- 初学 Delphi 嵌入汇编[10] - 函数返回值与寄存器
- 初学 Delphi 嵌入汇编[11] - 用汇编重写一个 Delphi 函数
- 初学 Delphi 嵌入汇编[16] - 进制的表示方法
- 初学 Delphi 嵌入汇编[21] - Delphi 的其他整数类型
- 初学 Delphi 嵌入汇编[24] - 汇编语言的简单数据类型
- 初学 Delphi 嵌入汇编[28] - 把 EAX 的值置为 0 的三种方法与效率
- 初学 Delphi 嵌入汇编[29] - 寄存器所能接受的数值范围