表达式

调试器允许使用基本表达式。除了计算之外,它还支持使用类似 C 语言的语法进行变量赋值。您可以在命令栏中输入表达式进行练习,也可以使用计算器(帮助 -> 计算器 菜单)。

所有值都可以作为常量在表达式中使用,更多信息和示例请参见

警告:表达式中的所有数字默认都会被解释为十六进制! 如需使用十进制,请使用 .123

运算符

您可以在表达式中使用以下运算符。它们按以下顺序处理:

  1. 括号/方括号(1+2)[1+6] 优先于其他运算。

  2. 一元负号/二进制非/逻辑非-1(负1)、~1(1的二进制非)、!0(0的逻辑非)。

  3. 乘法/除法2*3(常规乘法)、2`3(获取乘法结果的高位部分)、6/3(常规除法)、5%3(模/除法余数)。

  4. 加法/减法1+3(加法)、5-2(减法)。

  5. 左/右移位/循环移位1<<2(左移,无符号为shl,有符号为sal)、10>>1(右移,无符号为shr,有符号为sar)、1<<<2(循环左移)、1>>>2(循环右移)。

  6. 小于(等于)/大于(等于)4<103>61<=26>=7(结果为真时解析为1,假时解析为0)。

  7. 等于/不等于1==12!=6(结果为真时解析为1,假时解析为0)。

  8. 二进制与12&2(常规二进制与)。

  9. 二进制异或2^1(常规二进制异或)。

  10. 二进制或2|8(常规二进制或)。

  11. 逻辑与0&&3(结果为真时解析为1,假时解析为0)。

  12. 逻辑或0||3(结果为真时解析为1,假时解析为0)。

  13. 逻辑蕴含0->1(结果为真时解析为1,假时解析为0)。

快速赋值

使用类似 C 语言的语法可以轻松更改内存、变量、寄存器或标志:

  • a?=b,其中 ? 可以是任何非逻辑运算符。a 可以是任何寄存器、标志、变量或内存位置。b 可以是任何可被识别为表达式的值。

  • a++/a--,其中 a 可以是任何寄存器、标志、变量或内存位置。

函数

您可以在表达式中使用函数。这些函数的文档请参见表达式函数