C语言的整型和长整型的字节长 |
您所在的位置:网站首页 › 长整型字节数 › C语言的整型和长整型的字节长 |
原码、反码和补码
做而论道_CS: 书上介绍补码时,是从 “符号位” 开始的。 然后就弄出来了:正零、负零。 在这里,计算机专家就弄错了基本概念。 上过小学,就知道: 自然数,只有正数负数零! 零,既不是正数也不是负数。 那么,这些个计算机专家,小学毕业了吗? 你猜猜看。 原码、反码和补码做而论道_CS: 书上介绍补码时,是从 “符号位” 开始的。 然后就弄出来了:正零、负零。 在这里,计算机专家就弄错了基本概念。 小学生都知道: 自然数,只有正数负数零! 零,既不是正数也不是负数。 那么,这些个计算机专家,小学毕业了吗? 你猜猜看。 原码、反码和补码做而论道_CS: 计算机中,只有二进制数。 进行算术运算时,无论二进制、十进制, 它们都是数,并不是什么什么码。 所谓的补码,也是数。 补码的来历,并非是 “符号位原码反码取反加一 ... ”。 补码的来历,只是因为【舍弃了进位】。 你看十进制吧,两位数,范围是:0 ~ 99。 这个最大值 +99,就可以当成-1 来使用。 如:38 + 99 = (一百) 37 38 - 1 = 37 只要你舍弃了进位,这两种算法,就是相同的。 即,只要舍弃了进位,将有: 正数,就能当负数来使用; 加法,也就相当于减法运算。 在计算机中舍弃进位,这就可以省掉减法器了。 -------------------- 八位机,其计算的范围是: 0000 0000 ~ 1111 1111。 相当于十进制 0 ~ 255。 这个最大值 +255,就可以当成-1 来使用。 你用二进制加法,计算一遍,便可证明出来。 记住,你可别忘了【舍弃进位】。 由此可知,无论什么进制,只要舍弃了进位,即有: 正数,就能代替负数; 加法,就相当于减法运算。 这就是 “补码” 的根源。 所谓的补码,是普遍的、通用的规律。 并非是计算机专业才有的现象。 计算机专家编造了 “符号位” 等假话, 贪天功为己有,就不要个 FACE 了! -------------------- 因为,255 (1111 1111),可当做-1; 同理,254 (1111 1110),就可当做-2; 那么,253 (1111 1101),也可当做-3; 。。。 这些个正数,就是计算机专家所说的:补码。 你一定能看出关系式: 负数的补码=正数=256 + 该负数。 例如:-7 的补码是什么? 求解: 256 - 7 = 249, 249 = 1111 1001 (二进制)。 这不就求出来了吗? 哪里还需要 “符号位原码反码取反加一”! -------------------- 零和正数的补码,又是什么呢? 也可以使用同一个关系式: 正数的补码 = 256 + 该正数。 加上 256 就会出现进位,舍弃之后,就是: 正数的补码 = 该正数。 此时,就证明了: 【零和正数的补码,就是其本身】。 例如:+7 的补码是什么? 求解:你自己算吧。 VMware NAT模式下 配置固定IP打包爱: 网卡配置文件应该是: BOOTPROTO=none ONBOOT=yes IPADDR=192.168.58.128 PREFIX=24 GATEWAY=192.168.58.2 DNS1=192.168.58.2 iframe 标签内嵌 jupyter notebookbill_ion: 在Chromium浏览器上登录有问题,登录成功仍停留在登录页面,永远登录不进去。在火狐上就没有这个问题。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |