变形补码怎么计算 计算机组成原理变形补码
- 数据库
- 2023-09-09
- 81
很多朋友对于变形补码怎么计算和计算机组成原理变形补码不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!0.11011的变形补码是什么答:0.110...
很多朋友对于变形补码怎么计算和计算机组成原理变形补码不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
0.11011的变形补码是什么
答:0.11011的变形补码是0.11011(十进制)=0.0001110000110000(二进制)。
下面科普十进制晶体:有四种主要的晶体键。离子晶体由正离子和负离子构成,靠不同电荷之间的引力(离子键)结合在一起。氯化钠是离子晶体的一例。原子晶体(共价晶体)的原子或分子共享它们的价电子(共价键)。钻石、锗和硅是重要的共价晶体。
在定点补码加法运算中,产生溢出的条件是什么写出两种
补码加法运算溢出判断三种方法:[方法一]Xf、Yf分别两个数符号位,Zf为运算结果符号位。当Xf=Yf=0(两数同为正),而Zf=1(结果为负)时,负溢出;当出现Xf=Yf=1(两数同为负),而Zf=0(结果为正),正溢出.[方法二]Cs表示符号位的进位,Cp表示最高数值位进位,?表示异或。若Cs?Cp=0,无溢出;若Cs?Cp=1,有溢出。[方法三]用变形补码进行双符号位运算(正数符为00,负数符号以11)若运算结果的符号位为"01",则正溢;若结果双符号为10,则负溢出;若结果的双符号位为00或11,无溢出。
-100的变形补码咋算
X=-0.0110b 以5位字长定点小数表示: [X]原=1.0110b [X]反=1.1001b [X]补=1.1010b
二进制变形补码计算
1、正数的补码表示:
正数的补码=原码
负数的补码={原码符号位不变}+{数值位按位取反后+1}or
={原码符号位不变}+{数值位从右边数第一个1及其右边的0保持不变,左边安位取反}
以十进制整数+97和-97为例:
+97原码=0110_0001b
+97补码=0110_0001b
-97原码=1110_0001b
-97补码=1001_1111b
2、纯小数的原码:
纯小数的原码如何得到呢?方法有很多,在这里提供一种较为便于笔算的方法。
以0.64为例,通过查阅可知其原码为0.1010_0011_1101_0111b。
操作方法:
将0.64*2^n得到X,其中n为预保留的小数点后位数(即认为n为小数之后的小数不重要),X为乘法结果的整数部分。
此处将n取16,得
X=41943d=1010_0011_1101_0111b
即0.64的二进制表示在左移了16位后为1010_0011_1101_0111b,因此可以认为0.64d=0.1010_0011_1101_0111b与查询结果一致。
再实验n取12,得
X=2621d=1010_0011_1101b即0.64d=0.1010_0011_1101b,在忽略12位小数之后的位数情况下,计算结果相同。
3、纯小数的补码:
纯小数的补码遵循的规则是:在得到小数的源码后,小数点前1位表示符号,从最低(右)位起,找到第一个“1”照写,之后“见1写0,见0写1”。
以-0.64为例,其原码为1.1010_0011_1101_0111b
则补码为:1.0101_1100_0010_1001b
当然在硬件语言如verilog中二进制表示时不可能带有小数点(事实上不知道哪里可以带小数点)。
4、一般带小数的补码
一般来说这种情况下先转为整数运算比较方便
-97.64为例,经查询其原码为1110_0001.1010_0011_1101_0111b
笔算过程:
-97.64*2^16=-6398935=1110_0001_1010_0011_1101_0111b,其中小数点在右数第16位,与查询结果一致。
则其补码为1001_1110_0101_1100_0010_1001b,在此采用负数的补码={原码符号位不变}+{数值位按位取反后+
关于本次变形补码怎么计算和计算机组成原理变形补码的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。
本文链接:http://www.xinin56.com/su/18082.html