以十六进制表示 vhdl 的 2 个二进制数字
Representing 2 binary digits in hex for vhdl
在VHDL中,如果X'1 => "0001", X'3 => "0011"。即,1 个十六进制数字代表 4 个二进制值,鉴于我在内存中只有一个特定的位范围,我如何只用十六进制表示 2 个二进制值。在这种情况下 2. 例如内存中剩余的 space 只能占用 2 位。我知道我仍然可以使用初始表示并屏蔽掉两个 msb 或 lsb,但是还有其他方法吗?
如果您使用的是 VHDL-2008,则可以这样做:
2X"2" = "0010"
来自网络的更多示例:
无符号表示法(默认):
7UX"F" = "0001111" -- extend
7UX"0F" = "0001111" -- reduce
签名:
7SX"F" = "1111111" -- extend
7SX"CF" = "1001111" -- reduce
在VHDL中,如果X'1 => "0001", X'3 => "0011"。即,1 个十六进制数字代表 4 个二进制值,鉴于我在内存中只有一个特定的位范围,我如何只用十六进制表示 2 个二进制值。在这种情况下 2. 例如内存中剩余的 space 只能占用 2 位。我知道我仍然可以使用初始表示并屏蔽掉两个 msb 或 lsb,但是还有其他方法吗?
如果您使用的是 VHDL-2008,则可以这样做:
2X"2" = "0010"
来自网络的更多示例:
无符号表示法(默认):
7UX"F" = "0001111" -- extend
7UX"0F" = "0001111" -- reduce
签名:
7SX"F" = "1111111" -- extend
7SX"CF" = "1001111" -- reduce