verilog中表示二进制值问题的verilog
我的任务是创建一个文本文件,将我的名字作为二进制数据放在文本文件中,然后读取此文件并将此二进制文件转换为字符,然后将其作为字符放在另一个文件中 所以我的问题是如何用二进制表示我的名字 我试过:verilog中表示二进制值问题的verilog,verilog,quartus,Verilog,Quartus,我的任务是创建一个文本文件,将我的名字作为二进制数据放在文本文件中,然后读取此文件并将此二进制文件转换为字符,然后将其作为字符放在另一个文件中 所以我的问题是如何用二进制表示我的名字 我试过: reg [255:0] myname = 01001110011010010110101101101111011011000110111101111010; 但它没有起作用。错误是数字太大 然后我试着: reg [1:0] myname1 = 2'b0100_1110_0110_1001_0110_10
reg [255:0] myname = 01001110011010010110101101101111011011000110111101111010;
但它没有起作用。错误是数字太大
然后我试着:
reg [1:0] myname1 = 2'b0100_1110_0110_1001_0110_1011_0110_1111_0110_1100_0110_1111_0111_1010;
这也不起作用。它总是以“3;”作为输出
reg [255:0] myname = 01001110011010010110101101101111011011000110111101111010;
在这种情况下,您有一个巨大的十进制数1001110011010010110111011110110110110101100111111010
,您试图将其分配给一个相对较小的寄存器(256位宽)。它确实适合256位,但解码时会遇到很大的问题
reg [1:0] myname1 = 2'b0100_1110_0110_1001_0110_1011_0110_1111_0110_1100_0110_1111_0111_1010;
在这里,您试图将56位二进制数字压缩为2位变量。这在物理上是不可能的,数字被截断为2位。下划线仅用于可读性目的,不具有任何其他效果
我想,您需要以下内容:
reg [255:0] myname = 256'b01001110011010010110101101101111011011000110111101111010;
如果愿意,可以添加下划线以提高可读性