新手看不懂书,为什么最小的整数是0,为什么整数没有下溢?

qq_28489125 2016-07-15 09:07:38
...全文
567 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
liups 2016-07-15
  • 打赏
  • 举报
回复
单说整数是可笑的,需要区分有符号和无符号
liups 2016-07-15
  • 打赏
  • 举报
回复
讲一大堆没有用的 其实简单介绍以后,给一个完整的表格就完了
lm_whales 2016-07-15
  • 打赏
  • 举报
回复
引用 5 楼 lm_whales 的回复:
类似的,浮点数溢出的定义为 非0 相乘,相除,结果为0 下溢(太小,精度丢失) 结果为正负 无穷, 上溢。(太大无法表示); 参与运算的数,不是nan,inf 结果变成只能用inf 表示 相加减,结果为正负 无穷 ,上溢(太大无法表示);参与运算的数,不是nan,inf 结果变成只能用inf 表示
浮点数,可以表示 无穷大(正负无穷大+inf,-inf),Nan 不是一个数(应该不止一个编码) 0 以及一定范围内的非0实数(其实是有理数) PS: 用最大最小数值,定义溢出,就没有办法定义浮点数下溢了 ,,,,,,, 当然,用绝对值定义溢出,也没有法子表示无符号数之差为负数的情况。
liups 2016-07-15
  • 打赏
  • 举报
回复
谭书或类似的书!最可恨了 自己胡乱总结或定义概念,关健还很多不对
lm_whales 2016-07-15
  • 打赏
  • 举报
回复
类似的,浮点数溢出的定义为 非0 相乘,相除,结果为0 下溢(太小,精度丢失) 结果为正负 无穷 上溢。(太大无法表示) 相加减,结果为正负 无穷 上溢(太大无法表示)
lm_whales 2016-07-15
  • 打赏
  • 举报
回复
这里说的应该是绝对值的溢出。 因此整数没有下溢。 不是数据类型的溢出。 小于绝对值最大的负数和大于最大值正数都为 上溢
小灸舞 版主 2016-07-15
  • 打赏
  • 举报
回复
对整数,溢出指代数值:小于最小值为下溢,大于最大值为上溢
上溢:超出所能表示的最大正数
下溢:超出所能表示的最小负数
如16位整数范围为:-32768 ~ +32767,则当32767再加1时,发生上溢;当-32768再减1时,发生下溢。

对浮点数,溢出指绝对值:绝对值小于浮点数所能表示的最小值,为下溢,当作 0;绝对值大于浮点数所能表示的最大范围,为上溢,当作 INF。
根据具体符号的不同,又分为:正上溢、正下溢、负上溢、负下溢

不要迷信书、考题、老师、回帖;
要迷信CPU、编译器、调试器、运行结果。
并请结合“盲人摸太阳”和“驾船出海时一定只带一个指南针。”加以理解。
任何理论、权威、传说、真理、标准、解释、想象、知识……都比不上摆在眼前的事实!
灌水号 2016-07-15
  • 打赏
  • 举报
回复
这里说的没有错吧, 0 是最小的,所以没有下溢. 要是float 你要想用来表示0.0000000000000000000000000000000000000000000000001,那是表示了的,那就下溢,因为达不到那个精度.
flying_music 2016-07-15
  • 打赏
  • 举报
回复
楼主这是什么书啊,可以扔了,我还没听过有最小的整数一说呢,计算机中的整数和浮点数表示的范围都是有限的,都会产生上溢和下溢,还有下面一段说的int表示范围较小,然后整数上溢在小型计算机中很常见,这也是扯淡,溢出是会发生,也应该注意,但真的在编程过程中溢出的情况肯定比得癌症的几率还低,哪儿有那么多大的数字要处理啊

70,011

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧