電子書籍の厳選無料作品が豊富!

VHDLにおいて「vector(5bitとします)の全bitが'0'である場合」という条件のif文を書く場合、if(Data = "00000") then と記述する以外に方法はありませんか?
ここでは Data :in std_logic_vector(4 downto 0); としています。

5bitくらいならまだいいですが、16bitなどでもひたすら'0'を羅列するしかないのでしょうか?よろしくお願いします。

A 回答 (1件)

othersを使えばできますね。


Data : in std_logic_vector( 4 downto 0 );
のとき、
Data <= ( others => '0' );
で全部0にセットできます。

この回答への補足

ありがとうございます☆vectorに'0'をセットする場合は、「others => '0' 」でコンパイルできました。
しかし、if文 の条件文の中で「もしvectorの全てのbitが '0' の場合… 」としたいのですが、この時に「others~」を使うとエラーになってしまいます。vector = "000…00"とする以外の記述方法があったら、教えてください。

補足日時:2008/01/11 11:24
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!