首页 > 代码库 > FPGA中的有符号数和无符号数的运算
FPGA中的有符号数和无符号数的运算
在FPGA设计中,所有的算数运算符都是按照无符号数进行的。如果要完成有符号数计算,对于加、减操作通过补码处理即可用无符号加法完成。对于乘法操作,无符号数直接采用“*”运算符,有符号数运算可通过定义输出为 signed 来处理。
需要注意的是,尽量不要使有符号数与无符号数进行混合计算。因为只要有一个无符号数的运算单元,整个算式将被将成无符号数进行计算。
总之,正数和负数处理时都是按照补码的形式处理,具体究竟把这些补码理解为符号型还是无符号型,这就要看reg signed这样的声明了。如果声明了就把这些数据当做符号型操作,如果没有声明,就当做无符号型操作(即都是正数);所谓的signed只有在参与运算的过程中才会有作用,再连线方面或是其他方面,没有任何作用,因为都是补码。
FPGA中的有符号数和无符号数的运算
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。