对case语句的理解

其实这个问题很简单

就是在列举case语句选项的时候,中间是不能用begin end 语句的

同时case语句结束后声明要用endcase

 

例如

case (cout_in)
    4'b0000 : cout_out=7'b0000001;       //0
    4'b0001 : cout_out=7'b1001111;       //1
    4'b0010 : cout_out=7'b0010010;     //2
    4'b0011 : cout_out=7'b0000110;      //3
    4'b0100 : cout_out=7'b1001100;       //4
    4'b0101 : cout_out=7'b0100100;       //5
    4'b0110 : cout_out=7'b0100000;       //6
    4'b0000 : cout_out=7'b0001111;       //7
    4'b0000 : cout_out=7'b0000000;       //8
    4'b0000 : cout_out=7'b0000100;       //9
    default : cout_out=7'b1111111;
   
    endcase

这样写是正确的,但是若是

case (cout_in)   begin                    //不能加begin     end 语句
    4'b0000 : cout_out=7'b0000001;       //0
    4'b0001 : cout_out=7'b1001111;       //1
    4'b0010 : cout_out=7'b0010010;   //2
    4'b0011 : cout_out=7'b0000110;   //3
    4'b0100 : cout_out=7'b1001100;       //4
    4'b0101 : cout_out=7'b0100100;       //5
    4'b0110 : cout_out=7'b0100000;       //6
    4'b0000 : cout_out=7'b0001111;       //7
    4'b0000 : cout_out=7'b0000000;       //8
    4'b0000 : cout_out=7'b0000100;       //9
    default : cout_out=7'b1111111;

end
   
    endcase

 

同时在case语句声明的分支中,如果有两个或两个以上的结果,一定要加begin   end 如果不然的话会一直提示你";"或者","这样的标点符号的错误。

则是不对的,这点我是新手,还是让自己记住吧

posted on 2010-10-18 17:30  吾将上下而求索  阅读(447)  评论(0编辑  收藏  举报

导航