(原创)HDL中的unsigned与signed

unsigned与signed:想必大家在C语言是经常用到,可不知HDL语言中的unsigned与signed是否常用罗!

 

其含义与C语言中的意思无异,区别主要是取值范围。

unsigned和signed在一种类型下,unsigned表示在这个范围大小的整数,signed一般都是在这个范围内的从负到正,即其最高位为符号位。

 

unsigned( 无符号整数 ):无符号整数 (unsigned) 和前面的" 标准逻辑" 向量 (std_logic_vector) 信号相似, 并且可以相互转换。注:定义无符号数时必须指明这个无号整数的位数序列编号是从高到低 , 一定要使用 downto 的序列

 

unsigned与std_logic_vector互相转换如下:

signal a : std_logic_vector(3 downto 0);
signal b : unsigned(3 downto 0);

b <= unsigned(a);
a <= std_logic_vector(b);

 

signed(有符号整数):数据类型表示一个有符号的数值,综合器将其解释为补码,该的最高位是符号位,最高位0 表示为正数,最高位为1表示为负数,补码是指除最高位数据的补码。

 

如:signed("1101") = -5

      signed("0111") = 7

 

作者:tdyizhen1314

        (现从事LED行业,专注于户外大型LED显示屏控制系统的研发,希望与大家一起交流,共同进步)

邮箱: 495567585@qq.com  

        td.logic@hotmail.com

posted on   tdyizhen1314  阅读(937)  评论(0编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
< 2012年8月 >
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1
2 3 4 5 6 7 8

导航

统计

点击右上角即可分享
微信分享提示