SystemVerilog——数值与字符串

1.数值表示

         整数文本和逻辑文本可以是带位宽的,也可以是不带位宽的。对于值的符号,截短和向左扩展,SystemVerilog与Verilog-2001遵循相同的规则。

        指定位宽:

        4'b1001                          //固 定 长 度 的 4 比 特 的 二 进 制 表 示

        16'habcd                      //固 定 长 度 的 16 比 特 的 十 六 进 制 表 示

       不指定位宽:

        1234                           //整型

       'b0101                        //二进制

SystemVerilog 可以使用撇号( ')作为前缀 ,来说明一个文本的所有位可使用相同的数值来填充 , 如 '0,'1,'z,'x。此时,在撇号( ')与值之间没有基数限定符。这使得任何长度的向量不用显式地指定位宽就可以整体赋值,例如:

                                            bit[63:0] data;

                                    data = '1                  //设置数据所有位为1

 

2.字符串表示

字符串文本由引号(“”)包围并且拥有自己的数据类型。对字符串文本的长度没有预定义的限制,一个字符串文本必须存在一个单行中,除非新的行紧跟着一个反斜杠(\)。在这种情况下,反斜杠和新行字符会被忽略。非打印字符或其他特殊字符都使用一个反斜杠(\),也就是转义符作为开始。一个字符串文本可以赋值给一个字符数组,就如C语言的用法一样在末尾会插入null结束符,若字符串长度与数组的大小不一致,则向左调整。例如:

                     char foo [0:12] = "hello world\n";

        SystemVerilog 加入了下表中的特殊字符串字符:

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值