计算机组成原理中移码是怎么回事? 5
真值:现实中真实的数值。
机器数:计算机中用编码表达的数值,包括原码、反码、补码、移码等。
1》原码:保持原有的数值部分的形式不变,只将符号用二进制代码表示。0为正,1为负。
2》反码:原码数值部分各位取反,符号位:0为正,1为负。
3》补码:
方法1:原码取反末尾加一,符号位:0为正,1为负。
方法2:从右到左遇见的第一个1的位置开始,第一个1位置右边所有的数值位全部取反,符号位:0为正,1为负
4》移码:补码的数值部分不变,符号取反,即得移码。反之亦然。
例如:已知x=-1100101 ,求[x]补和[x]移。
x=-1100101 ------》 [x]补=10011011 --------只将符号位取反---》[x]移=00011011
同理,已知移码求原码的话 ,一步一步倒着推:先由移码 ---》得补码----》再得原码
用补码表示阶码的时候,当阶码无限小,产生了下溢的时候,阶码变成了0,那么这个浮点数的值变为了1。而实际上这个数是无限接近于零的。那么我们就需要取出其中的 "-0“ 值作为机器零。
扩展资料:
浮点加减法的运算步骤
设两个浮点数 X=Mx※2Ex Y=My※2Ey
实现X±Y要用如下5步完成:
①对阶操作:小阶向大阶看齐
②进行尾数加减运算
③规格化处理:尾数进行运算的结果必须变成规格化的浮点数,对于双符号位的补码尾数来说,就必须是
001×××…×× 或110×××…××的形式
若不符合上述形式要进行左规或右规处理。
④舍入操作:在执行对阶或右规操作时常用“0”舍“1”入法将右移出去的尾数数值进行舍入,以确保精度。
⑤判结果的正确性:即检查阶码是否溢出
若阶码下溢(移码表示是00…0),要置结果为机器0;
若阶码上溢(超过了阶码表示的最大值)置溢出标志。
参考资料来源:百度百科——移码
真值:现实中真实的数值
机器数:计算机中用编码表达的数值,包括原码、反码、补码、移码等。
1》原码:保持原有的数值部分的形式不变,只将符号用二进制代码表示。0为正,1为负。
2》反码:原码数值部分各位取反,符号位:0为正,1为负。
3》补码:方法1:原码取反末尾加一,符号位:0为正,1为负。
方法2:从右到左遇见的第一个1的位置开始,第一个1位置右边所有的数值位全部取反,符号位:0为正,1为负
4》移码:补码的数值部分不变,符号取反,即得移码。反之亦然。
例如:已知x=-1100101 ,求[x]补和[x]移。
x=-1100101 ------》 [x]补=10011011 --------只将符号位取反---》[x]移=00011011
同理,已知移码求原码的话 ,一步一步倒着推:先由移码 ---》得补码----》再得原码
但是,在某些特殊的应用场合,有些数据,是用“移码”表示的。
转换公式:移码=补码+偏移量。
常用的偏移量有:128 和 127。
还有用 3 的,生成的移码,又叫做“余三码”。