关于 NCPlayer 服务:
文件菜单
编辑菜单
视图菜单
格式化菜单
工具菜单
机器配置菜单
协作

使用宏变量表


NCPlayer 中的宏变量表是一个交互式面板,用于显示 #100–#199(本地/用户定义)和 #500–#531(公共/持久)变量的当前值,以及在表达式、条件和 G 代码循环中使用的系统变量。表格在仿真过程中实时更新,帮助分析宏程序逻辑、调试计算并跟踪副作用。

用途

  • 逻辑调试:轻松查看在执行 #i = ...IFWHILE/DO/ENDG65M98/M99 时变量的变化。
  • 表达式分析:在使用 SIN/COS/ROUND/FIX/FUP/ABS/SQRT/... 时监控输入/输出值。
  • 重复性:快速重置变量值,从“干净”的状态重新运行程序。

显示的信息

  • 变量索引(例如 #100#512)。
  • 当前值(数值 / 未赋值时为 NaN,或表达式结果)。
  • 来源/最后写入 — 变量上次被修改的程序行(如果已关联)。
  • 格式 — 原始值,以及必要时的格式化值(例如 3030.0)。

工作原理

  1. 解析器 在预处理期间计算或延迟计算涉及 # 变量的表达式。
  2. 模拟器 在逐行执行过程中,每次遇到 #i = ... 赋值以及进入/退出子程序或循环时更新表格。
  3. 延迟依赖(例如 X[#100])会在 #100 变化时重新计算,并反映在表格中。

作用域与细节

  • #100–#199 — 程序/仿真会话的本地变量。
  • #500–#531 — 公共(伪持久)变量,在当前仿真运行期间保留。
  • 系统变量(#0 等):在表达式或读取操作中使用时显示。
  • 初始化:未初始化的变量在第一次赋值前显示为空/NaN。

交互

  • 暂停/单步:暂停仿真并逐行执行,观察数值变化。
  • 快速筛选:只显示你使用的变量索引(例如 #100, #101, #500)。
  • 重置值:使用 重置 按钮(如果可用)在重新运行前清除本地/公共变量。

使用示例

#100 = ROUND[#101 + 10]
IF [#100 GT 50] THEN GOTO 120
WHILE [#9 LT #20] DO1
  #9 = #9 + 1
END1
G65 P1000 A1 B#100  (传递给子程序的参数:#1, #2, ...)

在这些示例中,变量表可帮助你查看取整步骤、循环计数器的递增,以及传递给 G65 的值,从而更容易验证逻辑。

最佳实践

  • 初始化 变量后再使用(#9 = 0)—— 这样可以保持表格内容可预测。
  • 避免 隐式依赖(例如在子程序深处重新赋值且无注释)。
  • 注释 关键赋值 — 表格会显示源代码行,帮助你更快定位。

仿真前的变量表:

NCPlayer

仿真过程中的变量表:

NCPlayer

限制与注意事项

  • 某些系统变量可能是 只读 的 —— 它们的值取决于模拟器配置。
  • 深层嵌套的表达式按步骤求值;如果语法错误,值可能变为 NaN —— 请检查预处理日志。
  • 重置仿真会清除本地变量表(公共变量根据当前会话设置处理)。
CNCPassport © MEBLEOS © 2026 · Ver 1.0 · Terms & Conditions | Privacy Policy | Cookie Policy | Refund Policy Legal information | Privacy Policy