Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
verilog中表示二进制值问题的verilog_Verilog_Quartus - Fatal编程技术网

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;
如果愿意,可以添加下划线以提高可读性