×
嵌入式 > 技术百科 > 详情

Verilog HDL整型数

发布时间:2021-08-02 发布时间:
|

整型数可以按如下两种方式书写:

1) 简单的十进制数格式

2) 基数格式

1. 简单的十进制格式

这种形式的整数定义为带有一个可选的 “+”(一元)或 “-”(一元)操作符的数字序列。下面是这种简易十进制形式整数的例子。

32 十进制数32

-15 十进制数-15

这种形式的整数值代表一个有符号的数。负数可使用两种补码形式表示。因此32在5位的二进制形式中为10000,在6位二进制形式中为110001;-15在5位二进制形式中为10001,在6位二进制形式中为110001。

2. 基数表示法

这种形式的整数格式为:

[size ] 'base value

size 定义以位计的常量的位长;base为o或O(表示八进制),b或B(表示二进制),d或D(表示十进制),h或H(表示十六进制)之一;value是基于base的值的数字序列。值x和z以及十六进制中的a到f不区分大小写。

下面是一些具体实例:

5'O37 5位八进制数

4'D2 4位十进制数

4'B1x_01 4位二进制数

7'Hx 7位x(扩展的x), 即xxxxxxx

4'hZ 4位z(扩展的z) , 即zzzz

4'd-4 非法:数值不能为负

8'h 2 A 在位长和字符之间,以及基数和数值之间允许出现空格

3'b001 非法: ` 和基数b之间不允许出现空格

(2+3)'b10 非法:位长不能够为表达式

注意,x(或z)在十六进制值中代表4位x(或z),在八进制中代表3位x(或z),在二进制中代表1位x(或z)。

基数格式计数形式的数通常为无符号数。这种形式的整型数的长度定义是可选的。如果没有定义一个整数型的长度,数的长度为相应值中定义的位数。下面是两个例子:

'o721 9位八进制数

'hAF 8位十六进制数

如果定义的长度比为常量指定的长度长,通常在左边填0补位。但是如果数最左边一位为x或z,就相应地用x或z在左边补位。例如:

10'b10 左边添0占位, 0000000010

10'bx0x1 左边添x占位,xxxxxxx0x1

如果长度定义得更小,那么最左边的位相应地被截断。例如:

3'b1001_0011与3'b011 相等

5'H0FFF 与5'H1F 相等

?字符在数中可以代替值z在值z被解释为不分大小写的情况下提高可读性(参见第8章)。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
实时控制.安全.如何加速实现未来工厂落地?