我是SystemC的新手。我知道systemC是一个添加到C ++的库,虽然有些人可能会说它是一种语言。我的问题是我有下面的代码,而且我不知道dataout.read()[i-1];
的价值。请帮忙。我试图在网上搜索答案,但我找不到任何答案。
sc_inout<sc_int<8> > dataout;
sc_int<8> data;
for(i = 7; i > 0; i--)
data[i] = dataout.read()[i-1];
答案 0 :(得分:0)
SystemC是一个C ++库。因此,在学习SystemC之前,您必须学习C ++语言。
您可以通过将对象打印到控制台或使用调试器来获取对象的值。
例如:
for(i = 7; i > 0; i--)
std::cout << dataout.read()[i-1] << std::endl;
答案 1 :(得分:0)
[]是sc_int&lt;&gt;上的位访问器类型。
sc_inout&lt;&gt;上的.read() port获取您在示例中写入端口的值,它返回sc_int&lt; 8&gt; [i-1]得到一个分配给data [i] =的数据中不同位的位。看起来有人试图改变这些位。实际值是什么将取决于已写入dataout的内容。没有任何与读取命令行相关的内容。