Java学习笔记9——原码、反码、补码
1、有符号数据表示法
在计算机内,有符号数有三种表示法:原码、反码和补码(针对二进制来说)
所有数据的运算都是采用补码进行的
举例:7和-7
原码:就是二进制定点表示法,即最高位为符号位
“0”表示正,“1”表示负,其余位表示数值的大小
符号位 数值位
7的原码: 0 0000111
-7的原码: 1 0000111
反码:正数的反码与其原码相同
负数的反码是对其原码逐位取反,但符号位除外
符号位 数值位
7的反码: 0 0000111
-7的反码: 1 1111000
补码:正数的补码与其原码相同
负数的补码是在其反码的末位加1
符号位 数值位
7的补码: 0 0000111
-7的补码: 1 1111001
练习:
1、已知某数X的原码为10110100B,试求X的补码与反码
符号位 数值位
原码: 1 0110100
反码: 1 1001011
补码: 1 1001100

浙公网安备 33010602011771号