文法

hyousi.jpg(2670 byte) L.jpg(2692 byte) kihonwaku.jpg(2765 byte) singou.jpg(2527 byte) jyousuu.jpg(2586 byte) enzannsitokigou.jpg(3088 byte) jyoukenbun_m.jpg(3099 byte) tetsuduki.jpg(2732 byte) inyou.jpg(2526 byte)

        目次

 条件文
 if文
 switch文

 

条件文

if 文とswitch 文の2種類あります。

modoru.jpg(1480 byte)  

if文

if 文はひとつの条件による真偽で条件付けを行います。

例 1

logicname sample

entity main
input  a;
output b;

   if (a)   {←条件}
      b=0;
   else     {←偽が成立したとき(省略可)}
      b=1;
   endif

ende
endlogic

上の例では条件は a だけ書かれています、このとき の真条件とは a が 1 のときです。 偽条件とは a が 0 のときです。

例 2

logicname sample

entity main
input  a;
output b;

   if (!a)  {←条件}
      b=0;
   else     {←偽が成立したとき(省略可)}
      b=1;
   endif

ende
endlogic

上の例では条件は !a と書かれています、このときの 真条件とは !a (a が 0) が 1 のときです。 偽条件とは !a (a が 1) が 0 のときです。

例 3

logicname sample

entity main
input  a;
output b;

   if (a==1)  {←条件}
      b=0;
   else     {←偽が成立したとき(省略可)}
      b=1;
   endif

ende
endlogic

上の例は 例 1 と同じです。

例 4

logicname sample

entity main
input  a;
output b;

   if (a!=1)  {←条件}
      b=0;
   else     {←偽が成立したとき(省略可)}
      b=1;
   endif

ende
endlogic

上の例は 例 2 と同じです。

modoru.jpg(1480 byte)  

switch文

switch 文はひとつ、または複数の信号のとる値によ って条件付けを行います。

例 5

logicname sample

entity main
input  a,b;
output c[2];

   switch(b,a)
      case 0,0: c=0;
      case 0,1: c=1;
      case 1,0: c=2;
      case 1,1: c=3;
   endswitch

ende
endlogic

上の例のように switchに続く ( ) 内に信号を置きま す。 case の後ろに該当位置の信号がとる定数値を記入し て条件になります。

真理値表
  b     a     c.1     c.0  
0 0 0 0
0 1 0 1
1 0 1 0
1 1 1 1

これは上の真理値表と同じになります。 switch 文を使って真理値表も書くことができます。

modoru.jpg(1480 byte)