补码,真值,原码,反码都由符号位和数值位组成 符号位:0为正,1为负 数值位:将想要表示的数转化为二进制数即可 1.机器数:机器无法区分正负,用0和1来区分,这样的数就是机器数 2.真值:带有 “+” 或者 “-” 的数称为 真值 真值:+ 00000000 00000000 00000000 00100101 注意:真值就是+、-号和二进制数组成 3.原码:就是将数转化为二进制数 原码: 00000000 00000000 00000000 00100101 注意:负数的原码,符号位始终为1,也就是第一位始终为1,剩下的位数依次取反 4.反码:正数的反码就是它的原码;负数的反码为原码的每一位的0变1、1变0 注意:为防止混乱,建议先转化为原码,再进一步转化 5.补码:正数的补码就是它的原码;负数的补码为它的反码加一 总结: 转化次序为: 真值 原码 反码 补码 个人经验: 1)最高位均为符号位; 2)当真值为正数时,原码、反码、补码的表示形式相同,符号位用 “0” 表示,数值部分真值相同; 3)当真值为负数时,原码、反码、补码的表示形式不同,但是符号位都用 “1” 表示,数值部分:反码是原码的 “按位取反”,补码是反码加一; 转化规律白话文: 正数死都不变 负数符号位就是1,永远不会变(除真值用-号);数值位:原码就是去掉正负号的二进制数,反码、补码就是去掉正负号的二进制数每位取反 符号位和数值位分开考虑,符号位正为0,负为1;数值位只考虑是否取反,不要想符号啥的,因为符号位一开始就选好了,不是吗?不要多想。
|