C程序性能優化

C程序性能優化 pdf epub mobi txt 電子書 下載2025

出版者:人民郵電齣版社
作者:片山善夫
出品人:
頁數:139
译者:何本華 居福國
出版時間:2013-1-1
價格:29.00元
裝幀:平裝
isbn號碼:9787115300003
叢書系列:圖靈程序設計叢書·C/C++係列
圖書標籤:
  • C
  • 性能優化
  • 編程
  • 編程優化
  • C/C++
  • 程序設計
  • 日本
  • 計算機科學
  • C語言
  • 性能優化
  • 編程
  • 效率
  • 算法
  • 內存管理
  • 編譯器
  • 多綫程
  • 代碼優化
  • 係統編程
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

本書作者精通C程序性能優化,具有近二十年的C語言編譯器和解釋器開發經驗,還為實時圖像處理專用芯片開發過C編譯器。

作者從CPU與編譯器的運行機製講起,帶領讀者一步步瞭解程序的執行成本、編譯器的優化選項等,總結齣許多C程序性能優化的技巧,並將這些技巧通過實驗的方式進行講解,簡明易懂,使人印象深刻。書中帶有大量的代碼實例,使讀者不僅能夠瞭解代碼優化的原理,還能夠輕鬆地在實踐中加以應用。

著者簡介

片山善夫

具有近二十年的C語言編譯器和解釋器開發經驗。現從事對SPARC、VisionChip等體係結構的研究。

圖書目錄

第1 章  CPU 與編譯器概論
1.1  高速路與人行道  002
1.2  編譯器是如何運作的  003
編譯後的匯編語言程序  004
添加優化選項後的結果  007
1.3  CPU 是如何運作的  008
指令集架構與微架構  008
如何執行指令  009
指令流水綫  011
高速緩存  012
深入探討高速緩存  013
緩存塊的替換算法  015
超標量指令執行  015
第1 章  是不是偏離瞭主題  017
第2 章  執行成本
2.1  兩程序的執行成本 020
2.2  計·測·謀  020
書中的探討  020
2.3  防止基準測試程序被優化  023
防止操作“歸並”  023
防止變量在初始化時被優化  024
防止重復單一指令被優化  025
本書中的基準測試程序  026
2.4  驗證——哪一步操作導緻執行速度緩慢  029
2.5 基礎加法與賦值運算  031
單一的賦值操作(寄存器間的傳送)  032
單一的賦值操作(數據相互關聯的情況)  032
常量賦值  033
變量間的加法運算  033
變量與常量相加  034
2.6  耗時的乘法運算  036
變量間的乘法運算  037
變量與常量相乘  037
2.7  更為耗時的除法運算  040
變量的除法(寄存器間的計算)  040
除數為2、4 的除法運算  042
除數不是2 的乘方的除法運算  042
無符號整數除法運算  042
除數為2 的乘方時除法運算使用低成本移位指令  043
2.8  內存讀取  045
小數組的讀取(小範圍內的內存操作)  045
大數組的讀取( 大範圍內的內存操作)  047
與颱式機的CPU進行比較  049
2.9  造成執行時間差彆的判斷語句  051
無else節點的if 語句  051
帶else節點的if 語句  053
2.10  32/64 位環境中不同的函數調用  053
2.11  實驗總結  055
若想被愛則先愛  055
第3 章  尋找性能瓶頸
3.1 使用gprof 命令進行分析  058
gprof的使用方法  058
3.2  哪個環節在消耗時間  058
獲取庫函數的評測信息  060
耗時的函數  062
顯示庫函數的調用次數  063
3.3  函數的調用關係  063
3.4  進行數據分析的原理  066
3.5  其他性能分析器  067
培養高水平人纔的教育係統  068
第4 章  達人方法論
4.1  達人的關注點  072
硬件篇  072
編譯器/ 中間件篇  074
算法篇  075
4.2  【硬件篇】數組和緩存的有效利用  076
矩陣的乘法運算  076
調整數組操作的順序  077
展開循環的方式  078
矩陣的分塊  079
4.3  【庫函數篇】緩慢函數的迂迴戰術  080
strcmp 函數為何緩慢  080
優化的陷阱  081
4.4  【硬件篇】 使用SIMD 進行字符串對比  083
4.5  【庫函數篇】對比各種輸入輸齣方法  085
行輸入函數的對比  085
輸齣方法  089
管道輸入輸齣的特殊案例  091
管道輸入輸齣與文件輸入輸齣  092
4.6  【 算法篇】二分法查找與平衡二叉樹  092
海量數據的分類  093
真要做到如此地步?  097
第5 章  進一步研究編譯器
5.1  不同級彆的優化選項  100
GCC 的優化選項  100
“零優化”對調試有效  100
以不齣現未定義行為為前提的2 級以上優化選項  101
5.2  優化·寄存器·外部變量  102
5.3  刪除公共子錶達式為程序瘦身  104
5.4  指針與復雜運算簡化  105
5.5  將用戶函數進行內聯展開  106
和彆人拉開差距!  108
第6 章  給辦公係統的一些啓示
6.1  排序與字符串操作  112
6.2  小數點數的計算與字符串/ 數字的換算  112
塊數據輸入輸齣和字段分割  113
統計帶小數部分的數  113
整數轉換成字符串  115
性能優化的效果  116
6.3  半角字符轉換為全角字符  117
判定字符的字節數  118
ASCII字符與半角片假名字符的判定  119
ASCII字符轉換為全角字符  123
半角字符轉換為全角字符  124
性能優化的效果  127
判定字符字節數的其他方法  127
有關UTF-8  130
6.4  探索具有某種數據特性的數組  132
數據的特性  133
二分法查找與綫性查找相結閤  135
性能優化的效果  138
後記  139
· · · · · · (收起)

讀後感

評分

应领导要求看了该书,领悟了一些东西,虽然有些方法不是很同意。我一直觉得应该写好代码框架,可读可维护,再抠性能。我们的目标应该是,用面向过程的高效语言(C),实现面向对象的思想,达到程序架构合理并高效的最终目标。 有些代码欠保护型处理,需要斟酌。部分关于cache的内...

評分

应领导要求看了该书,领悟了一些东西,虽然有些方法不是很同意。我一直觉得应该写好代码框架,可读可维护,再抠性能。我们的目标应该是,用面向过程的高效语言(C),实现面向对象的思想,达到程序架构合理并高效的最终目标。 有些代码欠保护型处理,需要斟酌。部分关于cache的内...

評分

应领导要求看了该书,领悟了一些东西,虽然有些方法不是很同意。我一直觉得应该写好代码框架,可读可维护,再抠性能。我们的目标应该是,用面向过程的高效语言(C),实现面向对象的思想,达到程序架构合理并高效的最终目标。 有些代码欠保护型处理,需要斟酌。部分关于cache的内...

評分

应领导要求看了该书,领悟了一些东西,虽然有些方法不是很同意。我一直觉得应该写好代码框架,可读可维护,再抠性能。我们的目标应该是,用面向过程的高效语言(C),实现面向对象的思想,达到程序架构合理并高效的最终目标。 有些代码欠保护型处理,需要斟酌。部分关于cache的内...

評分

应领导要求看了该书,领悟了一些东西,虽然有些方法不是很同意。我一直觉得应该写好代码框架,可读可维护,再抠性能。我们的目标应该是,用面向过程的高效语言(C),实现面向对象的思想,达到程序架构合理并高效的最终目标。 有些代码欠保护型处理,需要斟酌。部分关于cache的内...

用戶評價

评分

實用性強,提供瞭高性能代碼編寫思路

评分

日本技術人員在一些領域上總是會鑽研的很深,他們寫的書總有一些參考價值。這本書對我對性能優化的理解很有幫助,雖然大部分內容都無用,然後有那麼幾句話切實的幫到瞭我就夠瞭,一本好書!

评分

應領導要求看瞭該書,領悟瞭一些東西,雖然有些方法不是很同意。我們的目標應該是,用麵嚮過程的高效語言(C),實現麵嚮對象的思想,達到程序架構閤理並高效的最終目標。

评分

非技術翻譯,內容過關

评分

飯後甜點,有點膩

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有