计算机基础
1.了解原码、反码、补码之间的关系,以及它们的应用
2.掌握二进制中正负数原码、反码、补码的区别。
3.利用原码->反码->补码计算“正数+负数”的值
4.学会如何计算反码的原码(其实就是计算反码的反码)
心得:1,利用反码计算数的加减,可将其它进制的数转换为二进制的数。用符号位1表示负数,0表示正数。综合应用其他进制转二进制的知识,进行数的计算。
主要内容:
-
原码补码反码
主要内容
* 数据的常见分类
* 机器数和机器数的真值
* 原码
* 反码
* 补码
* 拓展知识:为什么需要源码和反码
#### 数据的简单分类
[图片上传失败...(image-c4b0b4-1590412798036)]
- 浮点数就是小数。
真值(计算机二进制的数真正的值)(符号位+有效值)
在计算机中所有的数据是以二进制保存的;
最高位表示符号 正负;0表示正,1表示负;
原码(有正负)符号位有一位
符号位:首先确定一个数的正负,如果是正数,首位用0表示;如果是负数,首位用1表示;
有效位:真值的绝对值化为二进制的形式;
将符号位和有效位拼接到一起;
反码(特殊)(有正负)
正数:正数的反码和原码相同;
负数:符号位不变,其余各位直接取反。负数先求原码,在根据原码求反码。
764335->0111 0110 0100 0010 0101
-
d c a b
d->13 c->12 a->10 b->11
1101 1100 1010 1011
反码也是由:符号位+有效位拼接
补码
正数:正数的原码反码补码全部相同;
负数:求得原码,再求反码,再反码最后一位上+1,
为什么需要反码和补码
反码:在设计计算机的时只设计了加法器,没有减法器。使用加法器计算表示减法,
补码:反码解决了没有减法器的问题,但是出现了正负相加0的表示不唯一,使用补码进行修正。
正数+负数=正数的反码+负数的反码
一个字节长8位。溢位先不用管(不影响计算),当前规则只计算8位内运算
补码转原码
正数:补码=原码=反码
负数:补码的补码
负数:1111 1011
首位不变,其余取反,再加1
反码转原码
正数不变
负数;符号位不变,其余为取反。