出版時(shí)間:2003.3 出版社:電子工業(yè)出版社 作者:羅云彬 頁數(shù):742
Tag標(biāo)簽:無
前言
從Windows出現(xiàn)開始,匯編語言似乎在慢慢地銷聲匿跡,但本書可以讓人放棄這個(gè)觀點(diǎn),其實(shí)在Win32環(huán)境下,匯編語言依然強(qiáng)大?! hy——為什么選擇Win32匯編選擇Win32匯編的理由是什么呢?在DOS時(shí)代,學(xué)習(xí)匯編就是學(xué)習(xí)系統(tǒng)底層編程的代名詞,僅要成為一名入門級(jí)的匯編程序員,就需要學(xué)習(xí)從CPU結(jié)構(gòu)、CPU工作方式、各種硬件的編程方法到DOS工作方式等范圍很廣的知識(shí)。隨著Windows時(shí)代的到來,Windows像一堵巨大的墻,把我們和計(jì)算機(jī)的硬件隔離開。
內(nèi)容概要
《Windows環(huán)境下32位匯編語言程序設(shè)計(jì)》(第2版)從編寫應(yīng)用程序的角度,從“Hello World!”這個(gè)簡(jiǎn)單的例子開始到編寫多線程、注冊(cè)表和網(wǎng)絡(luò)通信等復(fù)雜的程序,通過70多個(gè)實(shí)例逐步深入Win32匯編語言編程的方方面面。本書作者有十多年的匯編編程經(jīng)驗(yàn),很清楚初學(xué)者在哪些地方會(huì)遇到問題,所以本書在系統(tǒng)全面地介紹Win32匯編編程的同時(shí),也穿插了很多作者的經(jīng)驗(yàn)之談,使讀者能夠快速入門并最終熟練地寫出各種Windows應(yīng)用程序?! indows環(huán)境下32位匯編語言是一種全新的編程語言。它使用與C++語言相同的API接口,不僅可以用來開發(fā)出大型的軟件,而且是了解操作系統(tǒng)運(yùn)行細(xì)節(jié)的最佳方式?! ∽ⅲ罕緯焦獗P
作者簡(jiǎn)介
羅云彬,軟件工程師,現(xiàn)從事軟件項(xiàng)目管理、軟件工程實(shí)施、數(shù)據(jù)庫應(yīng)用等領(lǐng)域的工作,在Windows操作系統(tǒng)下的應(yīng)用軟件編程方面有豐富的經(jīng)驗(yàn),另外對(duì)Oracle數(shù)據(jù)庫的管理有深入的研究,是國內(nèi)為數(shù)不多的OCM證書獲得者之一。 匯編語言編程是作者的一大愛好,作者自1990年開始即使用匯編語言編寫程序,是Windows操作系統(tǒng)流行后國內(nèi)最早研究Win32匯編編程的程序員之一,在1998年創(chuàng)建了專門探討匯編編程的網(wǎng)站——htlp://asm.yeah.net,曾發(fā)表過大量關(guān)于匯編編程的文章和網(wǎng)上教程。
書籍目錄
第1篇 基礎(chǔ)篇第1章 背景知識(shí)1.1Win32的軟硬件平臺(tái)1.1.180x86系列處理器簡(jiǎn)史1.1.2Windows的歷史1.1.3Win32平臺(tái)的背后——Wintel聯(lián)盟1.2Windows的特色1.3必須了解的東西1.3.180x86處理器的工作模式1.3.2windows的內(nèi)存管理1.3.3windows的特權(quán)保護(hù)第2章 準(zhǔn)備編程環(huán)境2.1Win32可執(zhí)行文件的開發(fā)過程2.2編譯器和鏈接器2.2.1MASM系列2.2.2TASM系列2.2.3其他編譯器2.2.4MASM,TASM還是NASM2.2.5我們的選擇——MASM32軟件包2.3創(chuàng)建資源2.3.1資源編譯器的使用2.3.2所見即所得的資源編輯器2.4make工具的用法2.4.1make工具是什么2.4.2nmake的用法2.4.3描述文件的語法2.5獲取資料2.5.1Windows資料的來源2.5.2Intel處理器資料2.6構(gòu)建編程環(huán)境2.6.1IDE還是命令行2.6.2本書推薦的工作環(huán)境2.6.3嘗試編譯第一個(gè)程序第3章 使用MASM3.1Win32匯編源程序的結(jié)構(gòu)3.1.1模式定義3.1.2段的定義3.1.3程序結(jié)束和程序入口3.1.4注釋和換行3.2調(diào)用API3.2.1API是什么3.2.2調(diào)用API3.2.3API參數(shù)中的等值定義3.3標(biāo)號(hào)、變量和數(shù)據(jù)結(jié)構(gòu)3.3.1標(biāo)號(hào)3.3.2全局變量3.3.3局部變量3.3.4數(shù)據(jù)結(jié)構(gòu)3.3.5變量的使用3.4使用子程序3.4.1子程序的定義3.4.2參數(shù)傳遞和堆棧平衡3.5高級(jí)語法3.5.1條件測(cè)試語句3.5.2分支語句3.5.3循環(huán)語句3.6代碼風(fēng)格3.6.1變量和函數(shù)的命名3.6.2代碼的書寫格式3.6.3代碼的組織第2篇 初級(jí)篇第4章 第一個(gè)窗口程序4.1開始了解窗口4.1.1窗口是什么4.1.2窗口界面4.1.3窗口程序是怎么工作的4.2分析窗口程序4.2.1模塊和句柄4.2.2創(chuàng)建窗口4.2.3消息循環(huán)4.2.4窗口過程4.3窗口間的通信4.3.1窗口間的消息互發(fā)4.3.2在窗口問傳遞數(shù)據(jù)4.3.3SendMessrdge和PostMessage函數(shù)的區(qū)別第5章 使用資源5.1菜單和加速鍵5.1.1菜單和加速鍵的組成5.1.2菜單和加速鍵的資源定義5.1.3使用菜單和加速鍵5.2圖標(biāo)和光標(biāo)5.2.1圖標(biāo)和光標(biāo)的資源定義5.2.2使用圖標(biāo)和光標(biāo)5.3位圖5.3.1位圖簡(jiǎn)介5.3.2在資源中定義位圖5.4對(duì)話框5.4.1對(duì)話框簡(jiǎn)介5.4.2對(duì)話框的資源定義5.4.3使用對(duì)話框5.4.4在對(duì)話框中使用子窗口控件5.5字符串資源5.6版本信息資源5.6.1版本信息資源的定義5.6.2在程序中檢測(cè)版本信息5.7二進(jìn)制資源和自定義資源5.7.1使用二進(jìn)制資源5.7.2使用自定義資源第6章 定時(shí)器和Windows時(shí)間6.1定時(shí)器6.1.1定時(shí)器簡(jiǎn)介6.1.2定時(shí)器的使用方法6.2Windows時(shí)間6.2.1Windows時(shí)間的獲取和設(shè)置6.2.2計(jì)算時(shí)間間隔第7章 圖形操作7.1GDI原理7.1.1GDI程序的結(jié)構(gòu)7.1.2設(shè)備環(huán)境7.1.3色彩和坐標(biāo)7.2繪制圖形7.2.1畫筆和畫刷7.2.2繪制像素點(diǎn)7.2.3繪制圖形7.2.4繪圖模式7.3創(chuàng)建和使用位圖7.3.1一個(gè)使用位圖的時(shí)鐘例子7.3.2創(chuàng)建和使用位圖7.3.3使用設(shè)備無關(guān)位圖7.4塊傳送操作7.4.1塊傳送方式7.4.2塊傳送函數(shù)7.5區(qū)域和路徑7.5.1使用區(qū)域7.5.2使用路徑第3篇 界面篇第8章 通用對(duì)話框8.1通用對(duì)話框簡(jiǎn)介8.2使用通用對(duì)話框8.2.1“打開”文件和“保存”文件對(duì)話框8.2.2字體選擇對(duì)話框8.2.3顏色選擇對(duì)話框8.2.4“查找”和“替換”文本對(duì)話框8.2.5“頁面設(shè)置”對(duì)話框8.2.6“瀏覽目錄”對(duì)話框第9章 通用控件9.1通用控件簡(jiǎn)介9.1.1通用控件的分類9.1.2使用通用控件9.2使用狀態(tài)欄9.2.1創(chuàng)建狀態(tài)欄9.2.2狀態(tài)欄的控制消息9.2.3在狀態(tài)欄上顯示菜單提示信息9.3使用工具欄9.3.1創(chuàng)建工具欄9.3.2工具欄的控制消息9.3.3工具欄的通知消息9.4使用Richedit控件9.4.1創(chuàng)建Richedit控件9.4.2Richedit控件的控制消息9.4.3Richedit控件的通知消息9.5窗口的子類化9.5.1什么是窗口的子類化9.5.2窗口子類化的實(shí)現(xiàn)9.6控件的超類化9.6.1什么是控件的超類化9.6.2控件超類化的實(shí)現(xiàn)第4篇 系統(tǒng)篇第10章 內(nèi)存管理和文件操作10.1內(nèi)存管理10.1.1內(nèi)存管理基礎(chǔ)10.1.2內(nèi)存的當(dāng)前狀態(tài)10.1.3標(biāo)準(zhǔn)內(nèi)存管理函數(shù)10.1.4堆管理函數(shù)10.1.5虛擬內(nèi)存管理函數(shù)10.1.6其他內(nèi)存管理函數(shù)10.2文件操作10.2.1Windows的文件I/O10.2.2創(chuàng)建和讀寫文件10.2.3查找文件10.2.4文件屬性10.2.5其他文件操作10.3驅(qū)動(dòng)器和目錄10.3.1邏輯驅(qū)動(dòng)器操作10.3.2目錄操作10.4內(nèi)存映射文件10.4.1內(nèi)存映射文件簡(jiǎn)介10.4.2使用內(nèi)存映射文件第11章 動(dòng)態(tài)鏈接和鉤子11.1動(dòng)態(tài)鏈接庫11.1.1動(dòng)態(tài)鏈接庫的概念11.1.2編寫動(dòng)態(tài)鏈接庫11.1.3使用動(dòng)態(tài)鏈接庫11.1.4動(dòng)態(tài)鏈接庫中的數(shù)據(jù)共享11.1.5在VC++中使用動(dòng)態(tài)鏈接庫11.2Windows鉤子11.2.1什么是Windows鉤子11.2.2遠(yuǎn)程鉤子的安裝和使用11.2.3日志記錄鉤子第12章 多線程12.1進(jìn)程和線程12.2多線程編程12.2.1一個(gè)單線程的“問題程序”12.2.2多線程的解決方法12.2.3與線程有關(guān)的函數(shù)12.3使用事件對(duì)象控制線程12.3.1事件12.3.2等待事件12.3.3進(jìn)一步改進(jìn)計(jì)數(shù)程序12.4線程間的同步12.4.1產(chǎn)生同步問題的原因12.4.2各種用于線程間同步的對(duì)象第13章 進(jìn)程控制13.1環(huán)境變量和命令行參數(shù)13.1.1環(huán)境變量13.1.2命令行參數(shù)13.2執(zhí)行可執(zhí)行文件13.2.1方法一:Shell調(diào)用13.2.2方法二:創(chuàng)建進(jìn)程13.3進(jìn)程調(diào)試13.3.1獲取運(yùn)行中的進(jìn)程句柄13.3.2讀寫進(jìn)程的地址空間13.3.3調(diào)試API的使用13.4進(jìn)程的隱藏13.4.1在Windows9x中隱藏進(jìn)程13.4.2WindowsNT中的遠(yuǎn)程線程第14章 異常處理14.1異常處理的用途14.2使用篩選器處理異常14.2.1注冊(cè)回調(diào)函數(shù)14.2.2異常處理回調(diào)函數(shù)14.3使用SEH處理異常14.3.1注冊(cè)回調(diào)函數(shù)14.3.2異常處理回調(diào)函數(shù)14.3.3SEH鏈和異常的傳遞14.3.4展開操作(15nwinding)第5篇 應(yīng)用篇第15章 注冊(cè)表和INl文件15.1注冊(cè)表和INI文件簡(jiǎn)介15.2INl文件的操作15.2.1INI文件的結(jié)構(gòu)15.2.2管理鍵值15.2.3管理小節(jié)15.2.4使用不同的INI文件15.3對(duì)注冊(cè)表的操作15.3.1注冊(cè)表的結(jié)構(gòu)15.3.2管理子鍵15.33管理鍵值15.3.4子鍵和鍵值的枚舉15.3.5注冊(cè)表應(yīng)用舉例第16章 WinSock接口和網(wǎng)絡(luò)編程16.1Windows Socket接口簡(jiǎn)介16.2Windows Socket接口的使用16.2.1IP地址的轉(zhuǎn)換16.2.2套接字16.2.3網(wǎng)絡(luò)應(yīng)用程序的一般工作流程16.2.4監(jiān)聽、發(fā)起連接和接收連接16.2.5數(shù)據(jù)的收發(fā)16.2.6一個(gè)最簡(jiǎn)單的TCP服務(wù)端程序16.3TCP應(yīng)用程序的設(shè)計(jì)16.3.1通信協(xié)議和工作線程的設(shè)計(jì)16.3.2TCP聊天室例子——服務(wù)器端16.3.3TCP聊天室例子——客戶端16.3.4以非阻塞方式工作的TCP聊天室客戶端16.3.5其他常用函數(shù)第17章 PE文件17.1PE文件的結(jié)構(gòu)17.1.1概論17.1.2IOS史件頭和DOS塊17.1.3PE文件頭(NT文件頭)17.1.4節(jié)表和節(jié)17.2導(dǎo)入表17.2.1導(dǎo)入表簡(jiǎn)介17.2.2導(dǎo)入表的結(jié)構(gòu).17.2.3查看PE文件導(dǎo)入表舉例17.3導(dǎo)出表17.3.1導(dǎo)出表的結(jié)構(gòu)17.3.2查看PE文件導(dǎo)出表舉例17.4資源17.4.1資源簡(jiǎn)介17.4.2資源的組織方式17.4.3查看PE文件中的資源列表舉例17.5重定位表17.5.1重定位表的結(jié)構(gòu)17.5.2查看PE文件的重定位表舉例17.6應(yīng)用實(shí)例17.6.1動(dòng)態(tài)獲取API入口地址17.6.2在PE文件上添加執(zhí)行代碼第18章 ODBC數(shù)據(jù)庫編程18.1基礎(chǔ)知識(shí)18.1.1數(shù)據(jù)庫接口的發(fā)展歷史18.1.2SQL語言18.1.3ODBC程序的流程18.2連接數(shù)據(jù)庫18.2.1連接和斷開數(shù)據(jù)庫18.2.2連接字符串18.3數(shù)據(jù)的管理18.3.1執(zhí)行SQL語句18.3.2執(zhí)行結(jié)果的處理18.3.3獲取結(jié)果集中的數(shù)據(jù)18.3.4事務(wù)處理18.4數(shù)據(jù)庫操作的例子18.4.1結(jié)果集處理模塊18.4.2例子的源代碼
編輯推薦
本書從編寫應(yīng)用程序的角度,從“Hello World!”這個(gè)簡(jiǎn)單的例子開始到編寫多線程、注冊(cè)表和網(wǎng)絡(luò)通信等復(fù)雜的程序,通過70多個(gè)實(shí)例逐步深入Win32匯編語言編程的方方面面。本書作者有十多年的匯編編程經(jīng)驗(yàn),很清楚初學(xué)者在哪些地方會(huì)遇到問題,所以本書在系統(tǒng)全面地介紹Win32匯編編程的同時(shí),也穿插了很多作者的經(jīng)驗(yàn)之談,使讀者能夠快速入門并最終熟練地寫出各種Windows應(yīng)用程序。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載
Windows環(huán)境下32位匯編語言程序設(shè)計(jì) PDF格式下載