日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

第七周读书笔记

發布時間:2023/11/27 生活经验 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第七周读书笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

《深入理解計算機系統》從程序設計與性能優化的角度介紹了計算機系統,讓我從程序員的角度了解了計算機系統,更深入地理解了硬件、操作系統和編譯系統等對應用程序性能和正確性的影響,并掌握了基本的程序優化設計技術,為編寫更高效可靠的程序打下了基礎。下面是我在閱讀過程中的一些技術領悟與心得體會。

1、信息表示

在信息表示板塊我了解了數據在計算機中的表示,不同的機器有不同的字長和順序約定,包括大端法和小端法,就連程序也是字節序列。當然,計算機中的數據都有一定的類型,決定了它的范圍、大小和操作方式。如果不注意這些性質就容易在程序中產生致命的錯誤。例如,有符號數在和無符號數比較時,有符號數會被隱式轉換為無符號數。隱式轉換過程中位表示形式沒有變化,但是理解方式發生了變化,于是就會出現負數變為大正數的現象。在符號拓展時,會出現符號位復制的現象,在進行加法和乘法運算時,還要注意溢出問題。在大多數機器中,移位和加運算比乘法快得多,但負數除以2的冪需要注意按情況進行修正。以上這些雖然看起來是小問題,但在編寫程序過程中卻極容易出錯,對計算機算術的深刻理解是編寫可靠程序的關鍵。

2、匯編語言

這部分首先介紹了Intel處理器的發展史,概覽了處理器核心數及頻率變化,及x86指令集和64位架構發展史,然后介紹了c語言、匯編碼和機器碼,匯編語言中的數據傳送指令及算術指令。接下來介紹了用于控制的條件碼以及條件分支結構,各種循環的異同和switch語句。

? ? ?? 我體會到,由于匯編代碼非常接近于計算機執行的實際機器代碼,閱讀這些代碼使我們更能夠理解編譯器的優化能力,并分析出代碼中的潛在低效率。我們還了解了棧幀結構,知道了過程調用離不開棧指針和幀指針,以及轉移控制指令。在數組介紹中,我知道了高維數組的內存分配的行優先順序,進一步學習了指針訪問方式;在結構數據類型中,我驚訝的發現結構成員的順序會影響結構變量的大小,因為對齊條件——某種數據類型的地址必須是某個值的倍數——以及邊界條件,即結構末尾可能會有填充。最后我還了解了緩沖區溢出。這是因為c對數組引用不進行任何邊界檢查,所以對越界的數組元素的寫操作會破壞儲存在棧中的狀態信息,從而可能出現很嚴重的錯誤。對于程序員而言,使用gets等能導致儲存溢出的函數,都是不好的習慣。

以前寫程序,都只關注最表面的東西,從未了解過計算機的實現過程和代價。初讀這本書,了解一些計算機的實現過程,不但能幫助我理解計算機的優化原理,對學習其他課程也有幫助。

轉載于:https://www.cnblogs.com/ustcccj/p/8883743.html

總結

以上是生活随笔為你收集整理的第七周读书笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。