作者 | 主题 |
---|---|
CJowo 新手 经验值:27 发帖数:1 精华帖:0 |
楼主 2022-06-24 16:08:19
主题:子程序传递多个BOOL变量如何优化 子程序变量输入输出上限为16个,一个子程序需要传入超过16个BOOL类型变量,使用DWORD类型可以占用一个IN变量传入16位BOOL类型变量,如何通过符号而不是L0.0这样的地址来访问呢?不管是调试还是后期修改,使用绝对地址都很不直观而且容易造成潜在的错误。 IN变量还好说,但是OUT变量地址在IN变量的后面,如果使用DWORD输出大量BOOL类型变量,后期修改子程序时又添加了IN变量,就会造成这个DWORD变量地址改变,如果使用L4.0这样的绝对地址,就需要把子程序中所有使用到绝对地址的地方都改变。有没有什么好的解决办法? |
yanxiao 版主 经验值:25980 发帖数:11805 精华帖:43 |
1楼 2022-06-24 16:13:52
主题:回复:子程序传递多个BOOL变量如何优化 全符号操作不行,半符号将就吧。 假如参数不会侵犯到 LB40后面的空间,定义L40.0、L40.1。。。。为符号访问,把IN传入DWOD传到LD40,如果是IN/OUT或者OUT,完了再把LD40传给参数DWORD。 这个LD40,不能定义成符号,无伤,即使有变化,程序修改量已降至最小。 |