代表vhdl的2个十六进制二进制数字

问题描述 投票:0回答:1

在VHDL中,如果X'1 =>“0001”,则X'3 =>“0011”。即,1 个十六进制数字代表 4 个二进制值,鉴于内存中只有特定的位范围,我如何以十六进制表示仅 2 个二进制值。在本例中为2。例如,内存中剩余的空间只能占用2位。我知道我仍然可以使用初始表示并屏蔽两个 MSB 或 LSB,但是还有其他方法吗?

binary hex bit-manipulation vhdl hardware
1个回答
2
投票

如果您使用的是 VHDL-2008,则可以执行此操作:

2X"2" = "0010"

来自网络的更多示例:

无符号表示法(默认):

7UX"F"  = "0001111" -- extend
7UX"0F" = "0001111" -- reduce

签名:

7SX"F"  = "1111111" -- extend
7SX"CF" = "1001111" -- reduce
© www.soinside.com 2019 - 2024. All rights reserved.