一点文学 通过搜索各大小说站为您自动抓取各类小说的最快更新供您阅读!

也难怪琼不知道。

浮点运算这东西是在计算机发展一段时间后才针对有限存储空间提高其灵活性和运算范围发明出来的。

此时的琼还有远在日不落的图灵,他们虽然有足够的智商发明这种运算,但此时他们的注意力主要集中在“克里斯托弗”本身,而且主要针对其解码方面的用途,于是就没有考虑到这一点。

“这么说吧!”王学新带着几个人来到防空洞门边的办公桌前,拿过桌上的纸和笔一边写着一边解释道:“如果我们使用16位运算带小数的数据,按常规的运算方式应该是将一半的存储单元也就是7位配给整数,另8位分配给小数,对吗?”

“没错!”琼点了点头。

之所以整数位只有7位,是因为数据通常有正有负,要空出一位表示正负(0表示正,1表示负),这一位也被称作是符号位。

“这样的存储法很多时候会出现空间和时间的浪费!”王学新接着说道:“它的整数位固定只有7位小数位固定只有8位,如果有个数据是123456678,虽然它只有8位数而我们的存储单元有16个,但却存不下这个数字!”

这是因为整数位只有7位的原因,所以一个八位数已经超出它的储存范围了,尽管小数位的8个储存单元一个数字都没存。

同理,如果整数位一个数字都没有,小数位却在第九位上,也无法有效储存进行运算。

琼点头道:“这就是我想说的,我们应该要扩展到32个存储单元,之前用机械零件要做到这一点很困难,现在改用继电器做零件了,同样的条件完全能实现32位为什么不做?”

“等等,琼!”王学新说:“你先听我说完!”

琼点了下头然后就不说话了。

王学新接着说道:“这是传统的储存方式,我们姑且把它称作定点运算。浮点运算的意思是,我们把其中几位,比如四位用来存储次方……”

“存储次方?”琼吃惊的望向王学新:“但它们通常没有次方!”

陈班两人也疑惑不解,他们不明白这样转换会有什么用。

王学新举了个例子:“比如刚才的数据12345678,我们为什么不能把它变成1.23456678乘以10的7次方?然后我们的整数和小数的存储空间就可以随意利用,简单的说,就是小数没有用到的存储空间就可以用这方法变换到整数利用,整数没有用到的存储空间可以变换到小数去利用!”

琼听着不由恍然大悟。

“说得对,团长同志!”琼说:“这样一来,任何时候我们的存储空间都有11位,可以存下任何一个11位数而不是定点运算的7位整位或8位小数。”

“是的!”王学新点了点头,说:“实际上,如果把它转换为二进制并把所有的数字都转换成1.XXXX的形式并只存小数点后的数字的话,我们还可以多存一位也就是12位!”

这有点难理解。

之所以能多存一位,是因为二进制中的数字不是0就是1,而第一位永远都是1……第一位如果是0的话就不需要写出来了,就像十进制里的一个整数前面不可能有零一样。

如果第一位永远是1,那就不需要浪费一个空间把它存进存储单元里,于是就省下了一个存储单元做到了存储单元最大化利用。

具体到运算时要做的,就是不要把这个没有存进去的“1”漏掉……现代编程运算可以在程序中把“1”加上计算,而这时期的运算,就是在存储单元之间多接几根电线增加些进位规则。

王学新接着又说道:“确切的说,不只12位!”

琼一愣,然后马上就明白了,她瞪大了眼睛连连点头:“是的,不只12位!应该是……”

琼稍加思索,就兴奋的说:“极端情况下,应该是20位,对吗?团长同志!”

王学新点了点头,琼不愧是琼,一个日不落的数学家,她马上就知道小数点可以移动的另一个好处,就是还可以增加运算精度。

比如一个数据是0.00000001111111111111,定点运算是没法存这个数字的,但浮点运算只需要把它变成1.111111111111,再将小数点移了多少位存在次方存储单元,12个存储单元就恰好可以把这个数存下并进行运算。

这说白了其实就是二进制的科学计数法,只不过要想办法把数据准确的存进有限的空间里所以才多出了七七八八空间还有位数之类的玩意。

班、陈两人听着有些迷糊,但看到琼一脸兴奋的样子,他们就知道王学新说的没错,只是他们没听懂而已。

不过在这方面王学新并不担心,因为班、陈两人只是一时没习惯二进制的计算也没习惯将其与计算机的存储单元联系在一起,所以才有些半懂不懂听得不是很明白。

“太棒了团长同志!”琼兴奋的拥抱了王学新一下,说:“这方法使我们可以在不增加存储单元的情况提高运算精度和运算范围,太不可思议了,你是怎么想到这方法的?”

“这……”王学新有些尴尬的看了看班陈两人一眼,回答:“这是……你知道的,我们在研发计算机的时候就碰到这个问题,为了尽可能的降低故障率,我们只能想尽办法减少零件!”

王学新这个解释合情合理。

零件越多故障率越高,反过来零件越少故障率当然就越低。

八路军的工业水平不行零件故障率高,就要想尽办法减少零件以降低故障率,于是就要在算法上动脑筋。

不过当然,这一切都没有发生,它们只是王学新虚构出来的。

王学新会知道这些,只不过是占了点现代人的便宜罢了。

有时候王学新在想,如果这些都能上,那是不是自己在大学时学的那什么C语言也能用上?

不过想想就知道不可能,这时候计算机才刚出来,用的都是低级语言甚至连低级语言都没有,需要手动连线控制……

像C语言这种东西那肯定是用不上的。

喜欢亮剑之军工系统请大家收藏:(www.1dwx.net)亮剑之军工系统一点文学更新速度全网最快。

一点文学推荐阅读: 明末:开局干掉皇帝妻乃上将军抗战从雪豹开始签到崇祯十五年海上升明帝大宋诡探荆轲让我刺秦王三国群英传之天下归龙水浒之柴进为王父皇:儿臣真不能当太子交锋五代:从围殴黄巢开始抗战飞虎营猎击三国贞观有新人无双庶子我的天启生涯之晚明中兴炼狱特工让法兰西再次伟大明末:我是神豪我怕谁练习生从徒手劈砖开始夺嫡请把普通的升官游戏还给我第五部队秦时之铸剑者大明官留里克的崛起不死狂兵开局和西门庆拜把子我的谍战岁月诛明三国之播种大师吕布的游戏鼎宋唐朝小闲人大魏宫廷我在秦朝当神棍万历1592三国之白马关郎帝国的崛起大明最强败家子奋斗在贞观三国之开局一把加特林大明王朝1566之高翰文三国:汉帝求我接皇位签到在红楼三国:开局曹操要借我脑袋回到英国当大亨我,大明太子!开局签到大雪龙骑黑夜将尽
一点文学搜藏榜: 抗日之将胆传奇三国之播种大师亮剑之军工系统庆余年大明第一臣重生之大总统交锋大唐龙牙大唐:开局我成了李世民女婿我在三国当名师最强兵王我在南宋能网购古代也是套路深贞观第一诡才清末变重生大唐皇太子明末1625唐朝小官人大唐酒徒龙腾紫塞让法兰西再次伟大武哲录幽灵帝国拜占庭大唐:开局忽悠李世民下副本屠龙明翊神圣罗马帝国大明开局就登基三国之极品董卓回到三国从抢赵云的马开始大宋的智慧三国:开局带着曹操跑路茫茫网海中我与你相遇明末:我行我上了啊!大明:我皇孙的身份被挖出来了乱战三国之争霸召唤回到旧石器时代宋厨子盛唐重启大唐农圣抗日之无限战争系统1558年的天变女帝的臣真的不好当最强奶爸兵王汉当兴大唐小侯爷兵王之王这个武大郎,你惹不起最强狙击兵王始皇歪传武唐春
一点文学最新小说: 红楼:曹操转生,开局杀贾珍我真的没想当皇帝啊大宋西门笔记我就是要做皇帝奋斗在新明朝曹魏唯我独尊之二止干戈李想的北宋大唐全才回到晚清的特种狙击手江山如此多骄开国功贼三国之天下霸业吕氏皇朝奉天承运盗宋明末资本家抗日之兵王纵横边戎猎日神刀大周权相横扫三国的东方铁骑抗日之横扫天下抗日之精英特战队宋起波斯湾极品皇帝大宋极品国师杀手特种兵纵横三国之我是张辽1558年的天变陷阵三国最强战兵三国之我的老婆是武圣张辽新传一世吉祥回到大明当才子战国之鹰浴血抗战强明乱世小民祸害大清燃烧的海洋重生之王爷的奋斗乌合之众特工之回到清朝少年之烽火岁月混在明朝血战旗斜风百度宅男当崇祯