知方号

知方号

真值、机器数、原码、补码、反码详解(你想知道的全都有!)<11101001的真值>

真值、机器数、原码、补码、反码详解(你想知道的全都有!)

真值、机器数、原码、补码、反码详解(你想知道的全都有!)

做而论道_CS: 罗刹国向东两万六千里过七冲越焦海三寸的黄泥地只为那有一条一丘河河水流过苟苟营苟苟营当家的叉杆儿唤作马户十里花场有浑名。。。那马户不知道他是一头驴那又鸟不知道他是一只鸡勾栏从来扮高雅拿来鞋拔作如意。。。--在此向刀郎表示一点敬意。

真值、机器数、原码、补码、反码详解(你想知道的全都有!)

做而论道_CS: 所谓的 “补码”,根本就不是 “码”,它就是普通的数字。无论神马进制,只要舍弃了进位,“补码”,就出来了。那么,所谓的:机器数真值符号位原码反补码正数三码相同负数取反加一符号位不变模同余。。。这一大堆乱七八糟的概念,不都是垃圾嘛!舍弃进位这个事,小学二年级,就可以理解吧?就这点小事,老外竟然能弄出那么大一堆概念!难道,他们都没上过小学?常说的:三个臭皮匠,顶个诸葛亮。这些计算机专家,就连臭皮匠都不如啊!我们的计算机老师,也不懂数学,只知道跟风。一天一天的乱讲,真是毁人不倦坑人不浅!

真值、机器数、原码、补码、反码详解(你想知道的全都有!)

做而论道_CS: 由补码换算到十进制数,也是极其简单的事!你只需记住:【补码首位的权,是负数】。一般的八位二进制数,各个位的权是:128、64、32、16、8、4、2、1。如果是八位的补码,各个位的权则是:-128、64、32、16、8、4、2、1。例如,有一个补码是:1110 0001,它代表的十进制就是:-128 + 64 + 32 + 1 = -31。如果,换另一个补码:0110 0001,它代表的十进制数是:0 + 64 + 32 + 1 = +97。仅仅使用【进制转换】,不就完了吗?哪里还需要 “原码反码取反加一” 啊!

真值、机器数、原码、补码、反码详解(你想知道的全都有!)

做而论道_CS: 八位数,共有 256 个数值。就用其一半 (128 个),来代表 (128 个) 负数吧。首先:255 (即 1111 1111),可当-1 来用。同理:254 (即 1111 1110),可当-2 来用。其它:253 (即 1111 1101),可当-3 来用。。。。最后:128,可当-128 来用。以上这些,就被计算机专家,称作 “补码”。这些 “补码” 与负数的关系,你应该能看出来吧:[负数]补码 = 256 + 该负数。例如:-27 的补码是神马?解:256 + (-27) = 229,229 = 1110 0101 (二进制)。这不就求出来了吗?哪有 “负数符号位为1原码反码取反加一” 的事啊!---------------------求负数补码的公式,已经知道了:[负数]补码 = 256 + 该负数。求正数(以及零)的补码,也可用这个公式:[正数]补码 = 256 + 该正数。由于加上 256,将会出现进位。将进位舍弃之后,那就是:[正数]补码 = 该正数。这就证明了:正数和零的补码,就是该数字本身。也就是说,无论正数、负数或者零,求补码的公式,都是同一个。这就不用再举例说明了吧?

真值、机器数、原码、补码、反码详解(你想知道的全都有!)

做而论道_CS: 二进制数,也符合这个规律。8 位 2 进制数:0000 0000 ~ 1111 1111。换算到十进制:0 ~ 255。这里的最大值 255,就可以当做-1 来使用。如 13 - 1 = 12,计算机就如下计算:0000 1101+ 1111 1111---------( 进 1) 0000 1100看懂了吗?-1 可以用 1111 1111 来代替!这就是计算机专家所说的 “补码” !

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。