String “转换字符”;1“;至十六进制“;4';h0001";
我正在尝试将字符串转换为十六进制的相同值。乙二醇 如果string=“abc123”它的十六进制值也应该是24'habc123。 字符串的长度是64,所以我将每个字符转换为十六进制,得到64*4=256位的十六进制值 例如,如果text_o_cplus.getc(i)=a i.e 97,我应该给它分配一个十六进制值a i'e 4'ha; 但我并没有找到合适的方法来做到这一点。我就是这么想的String “转换字符”;1“;至十六进制“;4';h0001";,string,system-verilog,String,System Verilog,我正在尝试将字符串转换为十六进制的相同值。乙二醇 如果string=“abc123”它的十六进制值也应该是24'habc123。 字符串的长度是64,所以我将每个字符转换为十六进制,得到64*4=256位的十六进制值 例如,如果text_o_cplus.getc(i)=a i.e 97,我应该给它分配一个十六进制值a i'e 4'ha; 但我并没有找到合适的方法来做到这一点。我就是这么想的 int j=255; for(int i=text_o_cplus.len();i
int j=255;
for(int i=text_o_cplus.len();i>0;i--)
begin
while(j>=0)
begin
case(text_o_cplus.getc(i))
48: begin
rev_result[j]=4'b0000;
j=j-4;
break;
end
and so on.
rev_结果定义为
bit [64][4] rev_result;
我试着把它定义为
bit [255:0] rev_result
还有,但它不起作用
有人能建议我如何实现它吗?使用内置功能:
bit [255:0] rev_result = text_o_cplus.atohex();
我不想要字符串“x”的十六进制值。我有一个字符串,上面写着“abc”,我想把“a”转换成4'b1010或4'ha“b”转换成4'hb,“c”转换成4'hc
atohex()
正是您想要的。