原码、反码、补码
来源:互联网 发布:富士人机界面编程软件 编辑:程序博客网 时间:2024/06/08 12:30
各种数据在计算机中的表现形式称为机器数,其特点是以二进制的方式存储,数的符号用0(正)和1(负)来表示,机器数对应的实际数值为数的真值。为了便于运算,机器数可采用原码,反码,补码等不同的编码方法。
假设机器字长为8,采用二进制位的方式表示数据,最高位为符号位,0表示正,1表示负
1、原码
原码就是符号位加上真值的绝对值。
假设数值X的原码记作[X]原,则:
[+1]原 = 0000 0001 [-1]原 = 1000 0001
[+127]原 = 0111 1111 [-127]原 = 1111 1111
[+10]原 = 0000 1010 [-10]原 = 1000 1010
0的原码有2种表示方式,分别为:
[+0]原 = 0000 0000 [-0]原 = 1000 0000
2、反码
正数的反码就是原码,负数的反码就是其原码按位取反(除符号位)。
假设数值X的反码记作[X]反,则:
[+1]反 = 0000 0001 [-1]反 = 1111 1110
[+127]反 = 0111 1111 [-127]反 = 1000 0000
[+10]反 = 0000 1010 [-10]反 = 1111 0101
0的反码有2种表示方式,分别为:
[+0]反 = 0000 0000 [-0]反 = 1111 1111
3、补码
正数的补码就是原码,负数的补码是其反码+1
假设数值X的补码记作[X]补,则:
[+1]补 = 0000 0001 [-1]补 = 1111 1111
[+127]补 = 0111 1111 [-127]补 = 1000 0001
[+10]补 = 0000 1010 [-10]补 = 1111 0110
0的补码有1种表示方式,为:
[+0]补 = [-0]补 = 0000 0000
总结:
1、正数的原码,反码和补码相同
2、负数的反码是其原码按位取反(除符号位),负数的补码是其反码+1
0的补码有1种表示方式,为: [+0]补 = [-0]补 = 0000 0000
假设机器字长为8,采用二进制位的方式表示数据,最高位为符号位,0表示正,1表示负
1、原码
原码就是符号位加上真值的绝对值。
假设数值X的原码记作[X]原,则:
[+1]原 = 0000 0001 [-1]原 = 1000 0001
[+127]原 = 0111 1111 [-127]原 = 1111 1111
[+10]原 = 0000 1010 [-10]原 = 1000 1010
0的原码有2种表示方式,分别为:
[+0]原 = 0000 0000 [-0]原 = 1000 0000
2、反码
正数的反码就是原码,负数的反码就是其原码按位取反(除符号位)。
假设数值X的反码记作[X]反,则:
[+1]反 = 0000 0001 [-1]反 = 1111 1110
[+127]反 = 0111 1111 [-127]反 = 1000 0000
[+10]反 = 0000 1010 [-10]反 = 1111 0101
0的反码有2种表示方式,分别为:
[+0]反 = 0000 0000 [-0]反 = 1111 1111
3、补码
正数的补码就是原码,负数的补码是其反码+1
假设数值X的补码记作[X]补,则:
[+1]补 = 0000 0001 [-1]补 = 1111 1111
[+127]补 = 0111 1111 [-127]补 = 1000 0001
[+10]补 = 0000 1010 [-10]补 = 1111 0110
0的补码有1种表示方式,为:
[+0]补 = [-0]补 = 0000 0000
总结:
1、正数的原码,反码和补码相同
2、负数的反码是其原码按位取反(除符号位),负数的补码是其反码+1
3、0的表示方式比较特殊
0的原码有2种表示方式,分别为:[+0]原 = 0000 0000 [-0]原 = 1000 0000
0的反码有2种表示方式,分别为:[+0]反 = 0000 0000 [-0]反 = 1111 11110的补码有1种表示方式,为: [+0]补 = [-0]补 = 0000 0000
阅读全文
0 0
- 原码、反码、补码
- 原码-反码-补码
- 原码、反码、补码
- 原码、反码、补码
- 原码,反码,补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码补码反码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码 补码 反码
- 原码、反码、补码
- 原码 反码 补码
- jsp中td等元素的显示居中
- 分页指令
- [2017.11.16]作业11(c)
- 支持百亿数据场景,海量高性能列式数据库HiStore技术架构解析
- SpringCloud 使用 (引用链接)
- 原码、反码、补码
- PicoContainer系列之基本介绍
- Java(27):MVC框架基础:Servlet+Jsp+javabean(3)
- 提升 1 倍运行效率!有了这些技巧,你的小程序也能快如闪电
- 正则式 限制输入框不能输入中文
- spring boot(六):如何优雅的使用mybatis
- 类静态成员函数的定义
- 修复GRUB:win10 1709 秋季创意者更新导致Linux双系统无法引导
- 江歌事件:我们愤怒的不是犯罪,而是她的恶意逃避