微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > 微电子学习交流 > 请教一个溢出检测的问题

请教一个溢出检测的问题

时间:12-12 整理:3721RD 点击:
两个字长不一样的二进制数相加,例如8位(数据范围[-128,127])+4位(数据范围[-8,7]),结果放在4位宽度的数据中,请问如何判断结果有没有溢出(不在[-8,7]范围中)呢?谢谢指教

两个数都符号位扩展成9位
再相加得到一个9位符号数
再判断是否在[-8,7]的范围

谢谢答复。
我现在想的是,如果不做符号扩展(4位的那个是肯定要扩展到8位的),即两个8位直接相加,然后判断相加结果的第四位跟第五位如果不一样(sum[4]^sum[5]),即表示放到4位的结果会有溢出,同时第五位表示的是正溢(sum[5]== 0)还是负溢(sum[5]==1)

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top