23、Object Pascal 编程深入解析:表达式、语法与应用

Object Pascal 编程深入解析:表达式、语法与应用

1. 内置汇编器表达式基础

1.1 表达式分类

内置汇编器将表达式分为三类:寄存器、内存引用和立即值。
- 寄存器表达式 :仅由寄存器名组成的表达式,如 AX、CL、DI 和 ES。作为操作数时,会让汇编器生成对 CPU 寄存器进行操作的指令。
- 内存引用 :表示内存位置的表达式,像 Object Pascal 的标签、变量、类型常量、过程和函数都属于此类。
- 立即值 :既不是寄存器也不与内存位置关联的表达式,包含 Object Pascal 的无类型常量和类型标识符。

1.2 示例分析

const
  Start = 10;
var
  Count: Integer;
asm
  MOV EAX,Start { MOV EAX,xxxx }
  MOV EBX,Count { MOV EBX,[xxxx] }
  MOV ECX,[Start] { MOV ECX,[xxxx] }
  MOV EDX,OFFSET Count { MOV EDX,xxxx }
end;
  • 由于 Start 是立即值,第一条 MOV 被汇编为立即数移动指令。
  • Count 是内存引用,第二条 MOV 被转换为内存移动指令。
  • 第三条 MOV 中,方括号将 Start 转换为内存引用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值