zoukankan      html  css  js  c++  java
  • (原创)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

  • 相关阅读:
    zbpwdkcqodl
    POJ 3670 Eating Together(LIS)
    Linux_Oracle10 下载安装
    Android4.42-Settings源代码分析之蓝牙模块Bluetooth(上)
    从零開始怎么写android native service?
    Vim命令合集
    X的追求道路
    Ubuntu常见报错及解决方式汇总
    微信图片不可显示java解决方法
    jar 包中文乱码注释显示问题解决方案
  • 原文地址:https://www.cnblogs.com/tdyizhen1314/p/2633057.html
Copyright © 2011-2022 走看看