A.
always@* begin if (G1==0) Y=8’b1111_1111; else if(G2 | G3) Y=8’b1111_1111; else... ...end
B.
always@(A,G1,G2,G3) begin if (G1==0) Y=8’b1111_1111; else if(G2) Y=8’b1111_1111; else if(G3) Y=8'b1111_1111; else... ...end
C.
reg s;always@(A ) begin s<=G2 | G3; if (G1==0) Y=8’b1111_1111; else if(s) Y=8’b1111_1111; else... ...end
D.
wire s;always@(*) begin s<=G2 | G3; if (G1==0) Y<=8’b1111_1111; else if(s) Y<=8’b1111_1111; else... ...end