百科狗-知识改变命运!
--

计算机的原码,反码,补码是怎么回事?可以举例说明吗?

是丫丫呀1年前 (2023-12-16)阅读数 9#综合百科
文章标签补码反码

原码、反码和补码是计算机中对数字二进制的三种表示方法。

1、原码

原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

例如:用8位二进制表示一个数,+11的原码为00001011,-11的原码就是10001011。

2、反码

反码是数值存储的一种,多应用于系统环境设置,如linux平台的目录和文件的默认权限的设置umask,就是使用反码原理。反码的表示方法是:正数的反码与其原码相同;负数的反码是对正数逐位取反,符号位保持为1。

计算机的原码,反码,补码是怎么回事?可以举例说明吗?

例如:

[+7]反= 0 0000111 B;

[-7]反= 1 1111000 B。

3、补码

正数:正数的补码和原码相同。负数:负数的补码则是符号位为“1”。并且,这个“1”既是符号位,也是数值位。数值部分按位取反后再在末位(最低位)加1。也就是“反码+1”。

例如:

[+7]补= 0 0000111 B;

[-7]补= 1 1111001 B。

扩展资料

原码、反码、补码的转换方法如下:

(1) 已知原码,求补码。

例:已知某数X的原码为10110100B,试求X的补码和反码。

首先通过原码的首位确定该数字的正负,若为正数,反码与原码相同,补码比原码在末尾加1;若为负数,求其反码时,符号位不变,数值部分按位求反;求其补码时,再在其反码的末位加1。

(2)已知补码,求原码。

按照求负数补码的逆过程,数值部分应是最低位减1,然后取反。但是对二进制数来说,先减1后取反和先取反后加1得到的结果是一样的,故仍可采用取反加1的方法。

百度百科-反码

百度百科-补码

百度百科-原码

计算机中,使用 1、0 构成各种代码。

对于正负数字,只是使用补码来存储与计算。

原码反码,在计算机中,都是不存在的。

补码的编码规则如下:

十进制数字 0,其补码就是:0000 0000。

-1,就是“零减一”,即:0000 0000-1。

用二进制减法计算,可得:(1) 1111 1111。

机器数,只有 8 位,即:1111 1111 = 255(十进制)。

这就是-1 的补码。

继续减一,可得-2 的补码:1111 1110=254。

同理,-3 的补码是:1111 1101 = 253。

。。。

求负数补码的通用公式:-X 的补码=256-X。

(其中的 256,是 2 的 8 次方。可用十进制计算,有需要再转二进制。)

正数,不需要变换。

这就是补码的编码规则。

由此可见,补码,与原码反码毫无关系。

计算机中,也并不使用原码和反码。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)