![]() |
![]() |
TOP > SystemC > ビットベクタ |
![]() |
![]() |
ビットベクタ
SystemCの型にsc_bvというビットベクタ型がある。この型は、算術演算ができないが特殊な使い方ができる。
算術演算をする時は、一時的に対応したSystemCの型に一回代入して、その後に戻してあげればよい。
(書式) sc_bv<サイズ> オブジェクト名
使用方法
ビットベクタの例
sc_bv<64> bv; sc_bv<8> data8; bv = 3; //rangeで取りだせない sc_uint<64> tmp = bv; cout << tmp << endl; //rangeメソッドで取りだす if (bv.range(1, 0) == 3) cout << "bv = 3" << endl; data8 = bv.range(7,0); sc_bit lsb; //bitを取りだす lsb = bv[0]; //sc_bit result; sc_bv<4> data2; data2 = "1111"; //0,1の組み合わせの文字列を代入できる。 sc_uint<4> result; result = data2.or_reduce(); result = data2.and_reduce(); result = data2.xor_reduce(); |
![]() |
![]() |
Copyright 2007 ためになるホームページ All Rights Reserved. |