verilog使用$display如何输出一个integer变量的值?

integer j;
j = 1;
$display("j = %i", j);
以上代码显示出来的数值错误



integer j;
initial 
begin
    j = 0;
    forever begin
        $strobe("j = %d", j);
        $strobe("random: %d", $random(j));
        j = #100 j + 1;
    end
end

全代码如下:

integer j;
initial 
begin
    j = 0;
    forever begin
        $display("j = %d", j);
        $display("random: %d", $random(j));
        #100;
        j = j + 1;
    end
end

输出结果:

# j = -1375560571
# random: -1769007059
# j =   378476419
# random:  -330662696
# j =  1816820457
# random:  2060141557
# j =   -87342697
# random:  -391171375
# j =  1756311789
# random:  1790130645