原文:深入理解計算機系統(2.7)---二進制浮點數,IEEE標准(重要)

. 我們進行了二進制整數運算的最后一役,本次LZ將和各位一起進入浮點數的世界,這里沒有無符號,沒有補碼,但是有各種各樣的驚奇。倘若你真正的進入了浮點數的世界,一定會發現它原來是這么有意思,而不是像之前一樣,覺得了解浮點數的內容沒什么用,只要會簡單的使用就行了。當然,這其中也可能有部分猿友是覺得這部分內容太難,而對它失去了學習的興趣。 就像之前的LZ一樣,曾經對IEEE標准望而卻步,不過相信這幾章 ...

2013-10-01 00:22 2 7726 推薦指數:

查看詳情

深入理解計算機系統2.7)------二進制小數和IEEE浮點標准

  整數的表示和運算我們已經講完了,在實際應用中,整數能夠解決我們大部分問題。但是某些需要精確表示的數,比如某件商品的價格,某兩地之間的距離等等,我們如果用整數表示將會有很大的出入,這時候浮點數就產生了。   在 20世紀80年代以前,每個計算機廠商都設計了自己表示浮點數的規則,以及對浮點數執行 ...

Fri Sep 22 18:27:00 CST 2017 2 5133
深入理解計算機系統2.7)------浮點數舍入以及運算

  上一篇博客我們講解了二進制小數如何表示以及IEEE浮點標准。而且我們也提到過因為這種表示方法限制了浮點數的范圍和精度,浮點數只能近似的表示一個數。   比如 數字1/5,我們能用十進制小數 0.2 准確的表示,但是我們卻不能把它准確的表示為一個二進制小數,我們只能通過增加二進制表示的長度 ...

Sat Sep 23 17:06:00 CST 2017 0 6291
深入理解計算機系統(2.8)---浮點數的舍入,Java中的舍入例子以及浮點數運算(重要

前言   上一章我們簡單介紹了IEEE浮點標准,本次我們主要講解一下浮點運算舍入的問題,以及簡單的介紹浮點數的運算。   之前我們已經提到過,有很多小數是二進制浮點數無法准確表示的,因此就難免會遇到舍入的問題。這一點其實在我們平時的計算當中會經常出現,就比如之前我們提到過的0.3,它就 ...

Thu Oct 03 12:51:00 CST 2013 0 3286
深入理解計算機系統(2.6)---二進制整數的乘、除法運算(重要)【困難度高】

  2.5我們着重介紹了二進制整數的加、減運算,本次我們繼續介紹乘、除運算。本章是迄今為止最難的一章,希望各位猿友有所收獲,也別忘了“點個推薦哦”。 引言   運算一直是程序運行當中一個重要的環節,而在二進制的運算過程當中,加法運算又是重中之重,它基本上奠定了二進制運算的基礎 ...

Mon Sep 30 10:39:00 CST 2013 6 14835
計算機系統中的浮點數

人類世界的小數的表示形式 1、我們最習慣的小數表示形式是十進制,形式為:   它的值為: 2、小數的二進制表示法,形式為:   它的值為: IEEE浮點標准計算機系統中,因為有字節的限制(C語言中float類型占4字節,double類型占8字節),小數的表示要復雜 ...

Mon Apr 08 18:16:00 CST 2013 3 2697
深入理解計算機系統(2.4)---C語言的有符號與無符號、二進制整數的擴展與截斷

開篇請各位猿友允許LZ啰嗦幾句,最近一直在寫計算機系統原理這系列文章,也已經下定決心要把這本書的內容寫完。主要目的其實是為了鞏固LZ的理解,另外也想把這些內容分享給猿友們,畢竟LZ覺得這些內容對程序猿的實力還是有着很大的潛在提高的。 只是這種原理 ...

Sat Sep 28 06:34:00 CST 2013 2 2174
IEEE 754二進制浮點數算術標准

可能很多人都遇到過浮點數精度丟失的問題,下面以JavaScript為例。 納尼,不應該是0.1么,怎么變成0.09999999999999998呢?這就要從ECMAScript標准講起了。 ECMAScript 並不像其他編程語言一樣對數值類型進行比較具體的划分 ...

Tue Aug 01 06:39:00 CST 2017 0 4066
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM