if(ci.busy) begin// writing
**dataout** = {dataout,string'(**ci.dout**)};
$sformat( request,"%b",req.dout );
$fwrite(data, request);
end
这里ci.dout是bit,dataout是string。 这是我用于使用静态转换将位转换为字符串的代码。但是在测试结束时dataout的输出是0.我真的很感激帮助。
答案 0 :(得分:2)
使用string'()
进行投射将使用ci.dout
作为字符串的ASCII代码。例如,string'(8'h41)
为“A”,string'(88'h48656C6C6F20576F726C64)
为“Hello World”
以下任何一项都适合您:
dataout = {dataout,$sformatf("%b", ci.dout)};
dataout = $sformatf("%s%b", dataout, ci.dout);
$sformat(dataout, "%s%b", dataout, ci.dout);