SystemVerilog基础:数据类型

未完待续……

按状态、有无符号分类

括号里为数据所占空间,单位是bit。

二值四值
有符号byte (8), shortint (16), int (32), longint (64)integer (32)
无符号bit (1)logic (2), reg (2), net-type(2)

按状态分:

类型定义常见数据类型
二值逻辑可以有二种取值:0, 1bit, byte, shortint, int, longint
四值逻辑可以有四种取值:0, 1,Z, Xlogic, reg, integer, net-type (如 wire 和 tri)
  • Verilog中只有四值逻辑。SystemVerilog引入二值逻辑可以提高仿真器的性能,减少内存使用量

按有无符号分:

如何记忆有无符号呢?
按位数去定义的变量,或者说不特别声明就是一位的变量,比如bit,reg,logic,wire等,都是无符号变量。
而其他的,本身就已经确定是8、16、32、64位的,就是有符号变量。
(是不是很好记!)

类型数据类型
有符号数byte, shortint, int, longint, integer
无符号数bit, logic, reg, net-type (如 wire 和 tri)

有无符号数最大的影响是取值范围,特别要注意最大值。

声明解释
byte a;由于byte是8比特有符号整数,那么其取值范围就是(-128~127),也就是最大值是127,而不是255.
bit [7:0] a;由于bit是无符号数,其取值范围为0~255,最大值就是255.

有无符号可以相互转化

??
有符号数与无符号数之间的转换,都要看要转换的数的最高位是否为1,如果不为1,则转换结果就是要转换的数的本身;如果为1,则转换结果就是转换的数(看作是负数)的补码。

有无符号数混合计算会出问题

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hardworking_IC_boy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值