将字符“1”转换为十六进制“4'h0001”

Converting Char "1" to hex "4'h0001"

我正在尝试将字符串转换为相同的十六进制值。例如

如果 string="abc123" 它的十六进制值也应该是 24'habc123。 字符串的长度是 64,所以我将每个字符转换为十六进制,我将得到 64*4=256 位的十六进制值

例如,如果 text_o_cplus.getc(i)=a 即 97,我应该给它分配一个十六进制值 a 即 4'ha; 但我没有得到正确的方法来做到这一点。这就是我试过的

      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_result 定义为

       bit [64][4] rev_result;

我试着定义为

       bit [255:0] rev_result 

也有,但没用。

有人可以建议我如何实现吗?

使用内置函数:

   bit [255:0] rev_result = text_o_cplus.atohex();