依爱消防主机
实际编程输入逻辑表达式时,可能存在两种格式的变量:
a.“机号/回路/地址,”:指的是部件的火警、监管、盗警、可燃气报警、反馈状态。
b.“机号/分区,”;指该分区内有火警、监管或盗警、可燃气报警、反馈状态。
其中:“/”为变量字段分隔符;“,”为变量结束符,表达式中每一字段均不可省略。
●运算符定义
“*”:逻辑“与”关系;
“+”:逻辑“或”关系。
●逻辑关系表达式范例
-范例用变量定义
该处定义下述逻辑表达式中用到的变量。
“A”:“0/1/1,”(本机1回路/1地址);
“B”:“1/1/2,”(1号机/1回路/2地址);
“C”:“2/1/3,”(2号机/1回路/3地址);
“D”:“0/1,”(本机1分区);
“E”:“1/2,”(1号机/2分区);
“F”:“2/3,”(2号机/3分区);
-表达式占用字节计算
“1/1/2,”(1号机/1回路/2地址):“机号”、“回路”、“地址”、“,”,分别占用一个字节,即共占用四个字节;
“1/2,”(1号机/2分区):“机号”、“分区”、“,”,分别占用一个字节,即共占用三个字节;
“*”、“+”:每个运算符号占用一个字节。
例:0/1/1,0/1/2,+0/3,+
占用字节计算:4+4+1+3+1=13
-范例
本处列举一些逻辑关系表达式的例子。同时提供“理论布尔逻辑表达式”、“理论后缀式”、“实际编程表达式”三种形式,以便于用户理解。一般用户在编程比较复杂的逻辑关系表达式时,首先写出“理论布尔逻辑表达式”;再写出“理论后缀式”;最后写出“实际编程表达式”,输入逻辑关系表达式编程屏。
例1:理论布尔逻辑表达式:“A”;
理论后缀式:“A”;
实际编程表达式:“0/1/1,”。
例2:理论布尔逻辑表达式:“A*B”;
理论后缀式:“AB*”;
实际编程表达式:“0/1/1,1/1/2,*”。(两者相与)
例3:理论布尔逻辑表达式:“A*B*C”;
理论后缀式:“AB*C*”;
实际编程表达式:“0/1/1,1/1/2,*2/1/3,*”。(三者相与)
例4:理论布尔逻辑表达式:“A+B+C”;
理论后缀式:“AB+C+”;
实际编程表达式:“0/1/1,1/1/2,+2/1/3,+”。(三者相或)
例5:理论布尔逻辑表达式:“A*(B+C+D+E)”;
理论后缀式:“ABC+D+E+*”或“BC+D+E+A*”;
实际编程表达式:“0/1/1,1/1/2,2/1/3,+0/1,+1/2,+*”。(四者相或后,再与A相与。)
或“1/1/2,2/1/3,+0/1,+1/2,+0/1/1,*”
例6:理论布尔逻辑表达式:“(A+B)*(B+C)”;
理论后缀式:“AB+BC+*”;
实际编程表达式:“0/1/1,1/1/2,+1/1/2,2/1/3,+*”。(两两分别相或后,再相与。)
例7:理论布尔逻辑表达式:“A*B+C*D+E*F”;
理论后缀式:“AB*CD*+EF*+”;
实际编程表达式:“0/1/1,1/1/2,*2/1/3,0/1,*+1/2,2/3,*+”。
例8:理论布尔逻辑表达式:“(A+B)*(C+D)*(E+F)”;
理论后缀式:“AB+CD+*EF+*”;
实际编程表达式:“0/1/1,1/1/2,+2/1/3,0/1,+*1/2,2/3,+*”。