n+1 < n , are you sure?
密码终于找回了,原来是我邮箱把改密链接的邮件当垃圾邮件了……
回到正题,这是道面试题,原话大致是这样的:
[blockquote]
n+1<n成立吗?请说明。
[/blockquote]
当时我听到这个题后直觉是成立的,但是想不到怎么回事,后来别人告诉我说是在溢出的情况下会出现,这下就明白了。
这关系到寄存器存储的知识。
一个寄存器有固定的位数,如8位寄存器,16位寄存器等等,指的是这个寄存器能存储多少个1或0,例如八位寄存器,最多就是往这个寄存器中存入8个1,即255。如下图所示:
那么,有人问了,这和n+1<n有什么关系?
有关系。
理论上,起码我不知道,数的界限在哪里,但是在计算机中,存储数据的寄存器确实有限制的,就如上面的那个八位寄存器,最大8个1,255.
那么,问题来了,假如这个寄存器已经是8个1了,那么它再加1呢?
有人说了,256呗!即100000000。
没错,数学上是没错,但是寄存器怎么存呢?
当它加一后,如下图所示:
寄存器只有八位,存了后面8个0,那第一个1怎么办,扔了!
然后,这个寄存器就成这样了
不用我说这是几了吧?
所以,n+1<n就成立了。
相关推荐
GeorgeTH 2019-10-22
farmanlinuxer 2012-01-11
HeronLinuxampARM 2011-09-13
bearhoopIT之道 2019-06-20
量子计算机网络 2017-08-21
aotou 2012-01-17
jj 2013-06-16
小微分享驿站 2013-06-17
宅学部落王利涛 2013-06-16
水龙吟的备忘录 2016-05-28
学习编程 2018-05-27
那些年那些有趣的数学 2018-03-07
Rio说 2018-01-31
清醒疯子 2018-01-22
软件设计 2017-06-26
操作系统 2016-12-06
手机操作系统 2016-11-15