原码、反码、补码、移码相互转换及其运算 |
您所在的位置:网站首页 › 补码原码反码偏移码 › 原码、反码、补码、移码相互转换及其运算 |
原码、反码、补码和移码的相互转换
一、机器数 连同符号位一起数字化的数。 1.特点 ①符号数字化 ②数值的大小受机器字长的限制。每个机器数所占的二进制位数受限于机器硬件规模,与机器字长有关。超过机器字长的数位要被舍去。 2.真值:机器数中除“+”“-”符号外,其余部分表示的值。 3.分类 ①无符号数:机器字长的所有二进制位均表示数值。 ②带符号数:数值部分和符号均为二进制代码表示,通常符号位位于最高位。符号位“1”表示“-”,“0”表示“+”。
二、原码 原码是保持原有的数值部分的形式不变。 整数部分: 当0≤X<2n,[X]原=X [10011001]原 = 010011001 当-2n<X≤0,[X]原=2n-X=2n+|X| [-10011001]原= 110011001 小数部分: 当0 ≤ X<1,[X]原=X [0.10011001]原 = 0.10011001 当-1<X ≤ 0,[X]原=1+|X| [-0.10011001]原= 1.110011001 ①将[X]原的符号取反即可得到[-X]原 【例题】设机器字长为8位,写出+37和-37的二进制。 解析:37除二取余法得到的二进制数为100101,“+”为1,“-”为0,符号位在最高位 [+37]原=(+37)10=(+100101)2=(+00100101)2=00100101 [-37]原=(-37)10=(-100101)2=(-00100101)2=10100101 ②原码中0的表示不唯一 整数原码:[+0]原=00...0 [-0]原=10...0 小数原码:[+0]原=0.00...0 [-0]原=1.00...0 ③原码的移位规则:符号位不变,数值部分左移或右移,移出的空位归0。左移是乘法,右移是除法。移动n位是乘或除2n。 【例子】 [0.0110000]原=0.0110000 [0.0110000]原÷2=0.0011000 [0.0110000]原×2=0.1100000 三、反码 ①反码与原码的关系 当X≥0,[X]反=[X]原 当X |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |