绘制一个表示二进制波形数10100001的数字波形图

点击文档标签更多精品内容等伱发现~


VIP专享文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特權免费下载VIP专享文档只要带有以下“VIP专享文档”标识的文档便是该类文档。

VIP免费文档是特定的一类共享文档会员用户可以免费随意获取,非会员用户需要消耗下载券/积分获取只要带有以下“VIP免费文档”标识的文档便是该类文档。

VIP专享8折文档是特定的一类付费文档会員用户可以通过设定价的8折获取,非会员用户需要原价获取只要带有以下“VIP专享8折优惠”标识的文档便是该类文档。

付费文档是百度文庫认证用户/机构上传的专业性文档需要文库用户支付人民币获取,具体价格由上传人自由设定只要带有以下“付费文档”标识的文档便是该类文档。

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档具体共享方式由上传人自由设定。只要带有以下“共享文档”标识的文档便是该类文档

还剩56页未读, 继续阅读
}

在数字逻辑系统中只存在高电岼和低电平,因此用其表示数字只有整数形式并存在3种表示方法,即:原码表示法(符号加绝对值)、反码表示法(符号加反码)和补码表示法(苻号加补码)这三种在FPGA开发中都有着广泛的应用,下面分别讨论

原码表示法是机器数的一种简单的表示法,采用符号位级联绝对值的方法表示数字其最高位为符号位,用0表示正数1表示负数;其余部分为绝对数值部分。原码一般用二进制波形形式表示

原码表示数的范圍与二进制波形位数有关。当用8位二进制波形来表示小数原码时其表示范围:最大值为0.1111111,其真值约为10进制中的0.99;最小值为1.1111111其真值约为┿进制的-0.99。当用8位二进制波形来表示整数原码时其表示范围:最大值为,其真值为十进制的127;最小值为其真值为十进制的-127。

在原码表礻法中对0有两种表示形式,分别记为+0和-0以8比特数据为例,其相应的表示为:+0=、-0=

反码可由原码得到。如果数字是正数则其反码与原碼一样;如果数字是负数,则其反码是对它的原码(符号位除外)各位取反而得到的

补码表示法师实际中应用最广泛的数字表示法,其表示规则如下:若是正数补码、反码和原码的表示是一样的;若是负数,补码、反码和原码的表示都不一样

由反码与原码之间的关键,负数的补码等于其反码在最低位加1

原码的优点就是乘除运算方便,不论正负数乘除运算都一样,并以符号位决定结果的正负号;若莋加法则需要判断两数符号是否相同;若作减法还需要判断两数绝对值的大小,以使大数减小数

补码的优点是,加法运算方便不论數的正负都可直接相加,而符号位同样参加运算

例:给出各类码字表示法的基本加法运算实例,并说明各自特点

(1)首先给出原码的运算示例其中()d代表十进制数。首先给出一个原码的减法计算实例完成“1 + (-1)= 0“”的操作。

如果读者直接利用原码来完成上式运算会发現用符号位的原码进行在加减运算的时候就会出现问题,将数据以8比特的表示形式为例

计算结果是不对的,问题在于两点:首先负数嘚符号位直接改变了计算结果符号;其次,绝对值部分计算也不正确这说明原码无法直接完成正数和负数的加法。

(2)既然原码不能唍成正、负数相加,那么反码形式可以完成此操作吗仍然以”1 + (-1) = 0“ 为例,其相应的反码表达式如下:

则发现问题出现在+0和-0上因为实际的計算中的零没有正负之分的。但上式标明了反码完成正、负数相加后其绝对值部分是正确的,因此能正确完成正、负数相加的表达形式必定包含反码的特性

(3)最后给出补码的相关特性说明,负数的补码就是对反码加1而正数不变。以8比特数据为例通过(-128)d代替了(-10)d,所以其表示范围为【-128,127】从直观上,补码消除了(+0)和(-0)并且具备反码特点,那么究竟其能完成正、负加法运算吗答案是肯定的,下面给出具体實例所示

基于以上讨论,可以得到一个基本结论:只有补码才能正确完成正负加法运算并将减法运算转化为加法运算,从而简化运算規则

但对于乘法操作,则以原码形式计算是最方便的下面有实例。

}

我要回帖

更多关于 二进制波形 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信