负数补码表示范围以及规格化数 您所在的位置:网站首页 负数的小数部分的定义合理吗 负数补码表示范围以及规格化数

负数补码表示范围以及规格化数

2024-07-12 07:00| 来源: 网络整理| 查看: 265

负数补码表示范围以及规格化数

zzzzzzz95: 复杂了,1.01xxx1,变回真值就是-0.10xxx1=-(1/2+2^(-n)),自然就是最大值。

负数补码表示范围以及规格化数

做而论道_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: 计算机的字长,是固定的。 八位机,它只会做:  八位 + 八位 = 一个进位、八位的和。 八位二进制数是:0000 0000 ~ 1111 1111。 等效的十进制是:0 ~ 255。 如果有进位,就是:256。 如 27-1 = 26,八位机将如下计算:    0001 1011    +1111 1111  (这就是-1) ---------- (进 1 ) 0001 1010 舍弃进位,只取八位的和,就是 26。 看到了吗:  当你舍弃了进位,   你就用加法,实现了减法运算。 ------------------- 99、255,都能当-1! 这是为什么呢?  绝对不是 “符号位原码反码补码取反加一 ... ”  而是你舍弃了进位。 也就是在计算时【减去了进位】! 两位十进制的进位,是:10^2 = 100。 那么:  加 99,再减 100,当然就是 -1。  加 98,再减 100,必定就是 -2。  。。。 八位二进制的进位,是:2^8 = 256。  加 255 (1111 1111),再减 256,就是 -1 ! 同理:  +254 (1111 1110),就是 -2。  +253 (1111 1101),就是 -3。  。。。  +128 (1000 0000),就是 -128。 以上这些正数,就是计算机专家 “发明” 的补码! 你如果看懂了这些,你自己就可以推出补码与负数的关系式了:  负数的补码 = 256 + 负数。 一般化:  负数的补码 = 2^n + 负数。  n,是补码的位数。 例:求-31 的补码是什么? 解:256-31 = 225 = 1110 0001 (二进制)。 这不就求出来了吗? 哪里还用什么 “原码取反加一”! ------------- 求正数的补码,公式也是雷同的:  正数的补码 = 256 + 该正数。 要知道,加上 256,就是出现一个进位。 进位必须舍弃,所以,256 就不用加了。 于是,公式可以简化为:  正数的补码 = 该正数。 在此处,这就证明了:  零和正数的补码,就该数字本身。 举例,就不用了吧。 计算机专家也是说:  正数的补码,就是该正数。 但是,他们并没有给出证明。 为什么不加以证明呢? 因为这些专家:  弄不懂什么是进位,  更不懂什么是舍弃进位!

负数补码表示范围以及规格化数

做而论道_CS: 计算机,使用的是二进制数。 作为数字,二进制、十进制,都是一样的。 数,它们就是数,并不是什么“原码反码补码”。 如果用数字,代表 “非数字”,才能叫做 “码”。 如:学号、门牌车牌电话性别英文汉字声音颜色 ... 在码长八位时,各码的范围如下:  原码:-127 ~ +127;  反码:-127 ~ +127;  补码:-128 ~ +127。 看到了吧? -128 只有补码,没有原码和反码。 没有原码,拿什么取反? 没有反码,拿什么加一? 取反加一,不可用! -128 的补码,又是怎么来的? 是特殊规定的吗?  不是的! 所有的补码,都是算出来的。 但是,并不是用 “原码取反加一” 算的。 ------------------- 所谓的 “补码”,并非二进制才有。  在任何进制中,都是存在的。  补码,也并非是计算机专家的发明。 你看十进制数,两位的:0 ~ 99。 可以有:  27 + 99 = (一百) 26  27 - 1 = 26 只要你忽略进位,这两种算法,就是相同的! 即,舍弃了进位:  正数,就能当负数使用!  加法,也就可以实现减法运算! 因此,在计算机中舍弃进位:  就可以省掉减法器,简化硬件!  只需配置一个加法器,就可走遍天下! ================== 你如果知道什么是【忽略进位】:  你就能懂得 “补码” 的来源与意义。 ==================



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有