注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計其他編程語言/工具編程卓越之道(深入理解計算機)

編程卓越之道(深入理解計算機)

編程卓越之道(深入理解計算機)

定 價:¥49.80

作 者: (美)海德(Hyde, R.)著;韓東海譯
出版社: 電子工業(yè)出版社
叢編項:
標(biāo) 簽: 程序設(shè)計

ISBN: 9787121024047 出版時間: 2006-04-01 包裝: 平裝
開本: 16開 頁數(shù): 468 字?jǐn)?shù):  

內(nèi)容簡介

  各位程序員一定希望自己編寫的代碼是能讓老板贊賞、滿意的代碼;是能讓客戶樂意掏錢購買的代碼;是能讓使用者順利使用的代碼;是能讓同行欣賞贊譽的代碼;是能讓自己引以為豪的卓越代碼。本書作者為希望能編寫出卓越代碼的人提供了自己積累的關(guān)于卓越編程的真知灼見。它彌補了計算機科學(xué)和工程課程中被忽略的一個部分??底層細(xì)節(jié),而這正是構(gòu)建卓越代碼的基石。具體內(nèi)容包括:計算機數(shù)據(jù)表示法,二進(jìn)制數(shù)學(xué)運算與位運算,內(nèi)存組織與內(nèi)存訪問,數(shù)據(jù)類型及其表示,布爾邏輯與數(shù)字設(shè)計,CPU體系結(jié)構(gòu),CPU指令集的體系結(jié)構(gòu),內(nèi)存體系與內(nèi)存組織,計算機系統(tǒng)如何與外界通信等。作者簡介:Randall Hyde是匯編語言的相關(guān)書籍中最受推崇的《The Arf of Assembly Language》(No Starch出版社出版)的作者。他同時還是《The Waite Group's MASM 6.0 Bible》的聯(lián)合作者,《Dr.Dobb's Journal》和《Byte》專業(yè)周刊的撰稿人。

作者簡介

  Randall Hyde是匯編語言的相關(guān)書籍中最受推崇的《The Arf of Assembly Language》(No Starch出版社出版)的作者。他同時還是《The Waite Groups MASM 6.0 Bible》的聯(lián)合作者,《Dr.Dobbs Journal》和《Byte》專業(yè)周刊的撰稿人。

圖書目錄

1  編寫卓越代碼須知
1.1  編程卓越之道系列    1
1.2  本卷內(nèi)容    3
1.3  本卷所做的假設(shè)    5
1.4  卓越代碼的各項特征    6
1.5  本卷涉及的環(huán)境    7
1.6  獲取更多信息    8
2  數(shù)值表示
2.1  什么是數(shù)    10
2.2  計數(shù)系統(tǒng)(Numbering System)    11
2.2.1  十進(jìn)制位值計數(shù)系統(tǒng)    11
2.2.2  進(jìn)制(基數(shù))    12
2.2.3  二進(jìn)制計數(shù)系統(tǒng)    13
2.2.4  十六進(jìn)制計數(shù)系統(tǒng)    15
2.2.5  八進(jìn)制(基數(shù)為8)計數(shù)系統(tǒng)    18
2.3  數(shù)/字符串轉(zhuǎn)換    19
2.4  數(shù)的內(nèi)部表示    21
2.4.1  位(bits)    21
2.4.2  位串    22
2.5  有符號數(shù)與無符號數(shù)    24
2.6  二進(jìn)制數(shù)一些有用的特性    25
2.7  符號擴展,零擴展,以及縮減    27
2.8  飽和操作(saturation)    30
2.9  二進(jìn)制編碼的十進(jìn)制(BCD)表示法    31
2.10  定點表示法    33
2.11  比例數(shù)格式(scaled numeric formats)    35
2.12  有理數(shù)表示法    38
2.13  獲取更多信息    38
3  二進(jìn)制算術(shù)與位運算
3.1  二進(jìn)制數(shù)與十六進(jìn)制數(shù)的算術(shù)運算    39
3.1.1  二進(jìn)制加法    40
3.1.2  二進(jìn)制減法    41
3.1.3  二進(jìn)制乘法    42
3.1.4  二進(jìn)制除法    43

3.2  位邏輯運算    46
3.3  二進(jìn)制數(shù)和位串(bit string)的邏輯運算    47
3.4  有用的位運算    48
3.4.1  使用與運算檢測位串的各個位    48
3.4.2  使用與運算來檢測一組位是零/非零    49
3.4.3  比較一個位串中的一組位    49
3.4.4  使用邏輯與創(chuàng)建模-n計數(shù)器(Modulo-n Counters)    51
3.5  移位(Shift)與循環(huán)移位(Rotate)    52
3.6  位域與打包(packed)數(shù)據(jù)    55
3.7  打包與解包數(shù)據(jù)    60
3.8  獲取更多信息    64
4  浮點表示法
4.1  浮點運算簡介    66
4.2  IEEE浮點數(shù)格式    71
4.2.1  單精度浮點格式    72
4.2.2  雙精度浮點格式    74
4.2.3  擴展精度浮點格式    74
4.3  規(guī)格化(normalization)與反向規(guī)格化(denormalized)數(shù)    75
4.4  舍入(rounding)    77
4.5  特殊的浮點數(shù)    78
4.6  浮點異常    79
4.7  浮點運算    80
4.7.1  浮點表示    80
4.7.2  浮點加法與減法    81
4.7.3  浮點乘法與除法    92
4.8  獲取更多信息    100
5  字符表示法
5.1  字符數(shù)據(jù)    104
5.1.1  ASCII字符集    104
5.1.2  EBCDIC字符集    107
5.1.3  雙字節(jié)字符集    108
5.1.4  Unicode字符集    109
5.2  字符串    110
5.2.1  字符串格式    111
5.2.2  字符串類型:靜態(tài),偽動態(tài),以及動態(tài)字符串    116
5.2.3  字符串引用計數(shù)    117
5.2.4  Delphi/Kylix字符串    118
5.2.5  創(chuàng)建你自己的字符串格式    119
5.3  字符集合    119
5.3.1  字符集合的冪集表示法    120
5.3.2  字符集合的列表表示法    120

5.4  設(shè)計你自己的字符集    121
5.4.1  設(shè)計一種高效的字符集    122
5.4.2  為數(shù)字分組字符碼    124
5.4.3  分組字母字符    124
5.4.4  比較字母字符    126
5.4.5  其他字符分組    128
5.5  獲取更多信息    131
6  內(nèi)存組織與訪問
6.1  基本的系統(tǒng)組成部分    134
6.1.1  系統(tǒng)總線    134
6.1.2  地址總線    135
6.1.3  控制總線    136
6.2  內(nèi)存物理組織    137
6.2.1 8  位地址總線    139
6.2.2  16位數(shù)據(jù)總線    140
6.2.3  32位數(shù)據(jù)總線    142
6.2.4  64位總線    143
6.2.5  在非80x86處理器上訪問小數(shù)據(jù)單位    143
6.3  大端組織與小端組織    144
6.4  系統(tǒng)時鐘    149
6.4.1  內(nèi)存訪問與系統(tǒng)時鐘    151
6.4.2  等待狀態(tài)    152
6.4.3  高速緩存內(nèi)存    153
6.5  CPU內(nèi)存訪問    157
6.5.1  直接內(nèi)存尋址模式    158
6.5.2  間接尋址模式    158
6.5.3  變址尋址模式    159
6.5.4  比例變址尋址模式    160
6.6  獲取更多信息    160
7  復(fù)合數(shù)據(jù)類型與內(nèi)存對象
7.1  指針類型    162
7.1.1  指針的實現(xiàn)    163
7.1.2  指針與動態(tài)內(nèi)存分配    164
7.1.3  指針操作與指針運算    164
7.2  數(shù)組    169
7.2.1  數(shù)組聲明    169
7.2.2  數(shù)組在內(nèi)存中的表示    172
7.2.3  訪問數(shù)組元素    173
7.2.4  多維數(shù)組    174
7.3  記錄/結(jié)構(gòu)    181
7.3.1  Pascal/Delphi中的記錄    181
7.3.2  C/C++中的記錄    182
7.3.3  HLA中的記錄    182
7.3.4  記錄的內(nèi)存存儲    183
7.4  判別式聯(lián)合    185
7.4.1  C/C++中的聯(lián)合    186
7.4.2  Pascal/Delphi/Kylix中的聯(lián)合    186
7.4.3  HLA中的聯(lián)合    187
7.4.4  聯(lián)合的內(nèi)存存儲    187
7.4.5  聯(lián)合的其他用途    188
7.5  獲取更多信息    189
8  布爾邏輯與數(shù)字設(shè)計
8.1  布爾代數(shù)    192
8.1.1  布爾運算符    192
8.1.2  布爾代數(shù)的公理    192
8.1.3  布爾運算符優(yōu)先級    194
8.2  布爾函數(shù)與真值表    194
8.3  函數(shù)號    197
8.4  布爾表達(dá)式的代數(shù)運算    198
8.5  標(biāo)準(zhǔn)型    199
8.5.1  最小項之和標(biāo)準(zhǔn)型與真值表    200
8.5.2  使用代數(shù)方法得到最小項之和標(biāo)準(zhǔn)型    202
8.5.3  最大項之積標(biāo)準(zhǔn)型    203
8.6  布爾函數(shù)化簡    204
8.7  但是,這些和計算機又有什么關(guān)系呢?    212
8.7.1  電子線路與布爾函數(shù)的對應(yīng)    213
8.7.2  組合電路    214
8.7.3  時序與鐘控邏輯(Sequential and Clocked Logic)    220
8.8  獲取更多信息    224
9  CPU體系結(jié)構(gòu)
9.1  CPU設(shè)計基礎(chǔ)    225
9.2  指令解碼與執(zhí)行:隨機邏輯與微碼    228
9.3  指令執(zhí)行詳解    229
9.3.1  mov指令    230
9.3.2  add指令    232
9.3.3  jnz指令    234
9.3.4  loop指令    234
9.4  并行——提高處理速度的關(guān)鍵    235
9.4.1  預(yù)取隊列    238
9.4.2  妨礙預(yù)取隊列性能的情況    242
9.4.3  流水線操作——重疊執(zhí)行多條指令    243
9.4.4  指令高速緩存——提供訪問內(nèi)存的多條通路    247
9.4.5  流水線相關(guān)(pipeline hazards)    249
9.4.6  超標(biāo)量運算——并行執(zhí)行指令    251
9.4.7  亂序執(zhí)行(Out-of-Order Execution)    253
9.4.8  寄存器重命名    253
9.4.9  甚長指令字(VLIW)體系結(jié)構(gòu)    255
9.4.10  并行處理    255
9.4.11  多處理    257
9.5  獲取更多信息    258
10  指令集體系結(jié)構(gòu)
10.1  指令集設(shè)計的重要性    260
10.2指令設(shè)計基本目標(biāo)    261
10.2.1  選擇指令長度    263
10.2.2  規(guī)劃未來    265
10.2.3  選擇指令    266
10.2.4  給指令指派操作碼    266
10.3  Y86假想處理器    267
10.3.1  Y86的限制    268
10.3.2  Y86指令    268
10.3.3  Y86的尋址模式    270
10.3.4  Y86指令編碼    271
10.3.5  Y86指令編碼舉例    274
10.3.6  擴展Y86指令集    278
10.4  80x86指令編碼    279
10.4.1  編碼指令操作碼    281
10.4.2  add指令編碼的例子    287
10.4.3 編碼立即操作數(shù)    291
10.4.4  8,16,與32位操作數(shù)編碼    292
10.4.5  指令的替代編碼(alternate encoding)    292
10.5  指令集設(shè)計對程序員的意義    293
10.6  獲取更多信息    293
11  內(nèi)存體系結(jié)構(gòu)與組織
11.1  內(nèi)存層次結(jié)構(gòu)    295
11.2  內(nèi)存層次結(jié)構(gòu)是如何工作的    298
11.3  內(nèi)存子系統(tǒng)的相對性能    300
11.4  高速緩存體系結(jié)構(gòu)    302
11.4.1  直接映射高速緩存    303
11.4.2  全相聯(lián)高速緩存    304
11.4.3  n路組相聯(lián)高速緩存    304
11.4.4高速緩存方案與數(shù)據(jù)訪問類型的匹配    305
11.4.5  緩存線替換策略    306
11.4.6  寫數(shù)據(jù)到內(nèi)存中    307
11.4.7  高速緩存使用與軟件    308
11.5  虛存,保護(hù),以及頁面調(diào)度    309
11.6  顛簸    312
11.7  NUMA與外圍設(shè)備    313
11.8  編寫理解內(nèi)存層次結(jié)構(gòu)的軟件    314
11.9  運行時內(nèi)存組織    316
11.9.1  靜態(tài)與動態(tài)對象,綁定,以及生命期    317
11.9.2  代碼,只讀,以及常量段    319
11.9.3  靜態(tài)變量段    319
11.9.4  未初始化存儲(BSS)段    319
11.9.5  棧段    320
11.9.6  堆段與動態(tài)內(nèi)存分配    321
11.10  獲取更多信息    328
12  輸入與輸出(I/O)
12.1  將CPU與外界相連    330
12.2  將端口連接到系統(tǒng)的其他方式    333
12.3  I/O機制    334
12.3.1  內(nèi)存映射輸入輸出    334
12.3.2  輸入輸出與高速緩存    335
12.3.3  I/O映射輸入/輸出    335
12.3.4  直接內(nèi)存訪問(DMA)    336
12.4  輸入輸出速度等級    337
12.5  系統(tǒng)總線與數(shù)據(jù)傳輸率    338
12.5.1  PCI總線的性能    339
12.5.2  ISA總線的性能    340
12.5.3  AGP總線    341
12.6  緩沖    341
12.7  握手    342
12.8  I/O端口的超時    343
12.9  中斷與輪詢方式I/O    344
12.10  保護(hù)模式操作與設(shè)備驅(qū)動程序    345
12.10.1  設(shè)備驅(qū)動程序(Device Drivers)    346
12.10.2  與設(shè)備驅(qū)動程序以及“文件”通信    347
12.11  深入研究各種PC外設(shè)    347
12.12  鍵盤    348
12.13  標(biāo)準(zhǔn)PC并口    349
12.14  串口    351
12.15  磁盤驅(qū)動器    352
12.15.1  軟盤驅(qū)動器    352
12.15.2  硬盤驅(qū)動器    352
12.15.3  RAID系統(tǒng)    358
12.15.4  Zip與其他光讀軟盤驅(qū)動器    359
12.15.5  光驅(qū)(optical drive)    359
12.15.6  CD-ROM,CD-R,CD-R/W,DVD,DVD-R,
       DVD-RAM與DVD-R/W驅(qū)動器    360
12.16  磁帶驅(qū)動器    362
12.17  閃存    363
12.18  RAM盤與半導(dǎo)體盤    365
12.19  SCSI設(shè)備與控制器    367
12.20  IDE/ATA接口    372
12.21  大容量存儲設(shè)備上的文件系統(tǒng)    374
12.21.1  使用空閑空間位圖(bitmap)管理文件    377
12.21.2  文件分配表    378
12.21.3  塊表文件組織    381
12.22  編寫處理大容量存儲設(shè)備上的數(shù)據(jù)的軟件    385
12.22.1  文件訪問性能    386
12.22.2  同步與異步I/O    387
12.22.3  I/O類型的影響    388
12.22.4  內(nèi)存映射文件    389
12.23  通用串行總線(USB)    390
12.23.1  USB的設(shè)計    390
12.23.2  USB的性能    392
12.23.3 USB傳輸?shù)念愋?nbsp;   393
12.23.4  USB設(shè)備驅(qū)動程序    395
12.24  鼠標(biāo),觸控板與其他指點設(shè)備    396
12.25  操縱桿與游戲控制器    397
12.26  聲卡    399
12.26.1  音頻接口外設(shè)如何產(chǎn)生聲音    400
12.26.2  音頻與MIDI文件格式    401
12.26.3  編程處理音頻設(shè)備    403
12.27  獲取更多信息    403
運用底層語言思想
編寫高級語言代碼
A  ASCII字符集

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號