注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計x86匯編語言程序設(shè)計

x86匯編語言程序設(shè)計

x86匯編語言程序設(shè)計

定 價:¥48.80

作 者: 許向陽 著
出版社: 華中科技大學出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787568063111 出版時間: 2020-08-01 包裝: 平裝
開本: 16開 頁數(shù): 340 字數(shù):  

內(nèi)容簡介

  本書立足于目前使用為廣泛的Intel x8632和x8664系列的CPU、Windows操作系統(tǒng)及Visual Studio 2019開發(fā)平臺,從匯編語言這種直觀和直接的角度,揭示計算機工作的基本原理、C語言語句和函數(shù)的處理過程、程序優(yōu)化的技巧。 全書共分為19章。前5章介紹了匯編語言程序設(shè)計的基本知識,包括CPU、內(nèi)存、尋址方式和常用機器指令;第6章至第11章介紹了x8632位控制臺應(yīng)用程序設(shè)計,包括順序和分支、循環(huán)、子程序設(shè)計、多模塊化程序設(shè)計;第12章為中斷和異常處理;第13章是Win32窗口程序設(shè)計;第14章至第17章介紹了x87 FPU、MMX、SSE、AVX程序設(shè)計;第18章為x8664位匯編程序設(shè)計;第19章為上機操作。 本書內(nèi)容新穎,覆蓋面廣,重點突出,直觀易懂,趣味性強,可供各類高等院校計算機及相關(guān)專業(yè)作為教材,也可供廣大使用匯編語言的工程技術(shù)人員參考。

作者簡介

  華中科技大學計算機科學與技術(shù)學院副教授。1991年畢業(yè)于華中科技大學計算機學院,獲得軟件專業(yè)碩士學位。從事數(shù)據(jù)庫科研工作多年,對數(shù)據(jù)庫管理系統(tǒng)的總體設(shè)計、并發(fā)控制、查詢優(yōu)化、數(shù)據(jù)庫安全、并行數(shù)據(jù)庫有較深的研究,在國內(nèi)權(quán)威和重要期刊上發(fā)表論文20多篇。從事匯編語言程序設(shè)計、人工智能的教學工作多年,為國家精品課程“匯編語言程序設(shè)計”的主要建設(shè)者之一。

圖書目錄

1.1什么是匯編語言(1)
1.1.1機器語言(1)
1.1.2匯編語言(2)
1.2為什么學習匯編語言(4)
1.3如何學習匯編語言(7)
1.4匯編語言源程序舉例(9)
1.5計算機中信息編碼的奧秘(12)
1.6使用符號的說明(14)
習題1(15)
上機實踐1(16)
第2章Intel中央處理器(17)
2.1Intel公司微處理器的發(fā)展史(17)
2.2Intel x86微處理器結(jié)構(gòu)(19)
2.3執(zhí) 行 部 件(20)
2.3.132位CPU中的通用寄存器(21)
2.3.2通用寄存器應(yīng)用示例(22)
2.4標志寄存器(23)
2.4.1條件標志位(24)
2.4.2控制標志位(26)
2.4.3系統(tǒng)標志位(27)
2.5指令預(yù)取部件和指令譯碼部件(27)
2.6分段部件和分頁部件(28)
2.7x86的三種工作方式(30)
2.8Intel公司酷睿微體系結(jié)構(gòu)(31)
習題2(33)
上機實踐2(34)
第3章主存儲器及數(shù)據(jù)在計算機內(nèi)的表示形式(35)
3.1主存儲器(35)
3.1.1數(shù)據(jù)存儲的基本形式(35)
3.1.2數(shù)據(jù)地址的類型及轉(zhuǎn)換(36)
3.2數(shù)值數(shù)據(jù)在計算機內(nèi)的表示形式(37)
3.2.1有符號數(shù)和無符號數(shù)表示法(37)
3.2.2BCD碼(38)
3.3字符數(shù)據(jù)在計算機內(nèi)的表示形式(39)
3.4數(shù)據(jù)段定義(39)
3.4.1數(shù)據(jù)定義偽指令(40)
3.4.2表達式(40)
3.4.3匯編地址計數(shù)器(42)
3.4.4數(shù)據(jù)段定義示例(43)
3.5主存儲器分段管理(44)
3.6主存儲器物理地址的形成(45)
3.6.18086和x8632實方式下物理地址的形成(45)
3.6.2保護方式下物理地址的形成(47)
習題3(50)
上機實踐3(51)
第4章尋址方式(53)
4.1尋址方式概述(53)
4.2立即尋址(54)
4.3寄存器尋址(56)
4.4直接尋址(57)
4.4.1直接尋址的基本概念(57)
4.4.2直接尋址的用法示例(58)
4.5寄存器間接尋址(60)
4.5.1寄存器間接尋址的基本用法(60)
4.5.2寄存器間接尋址與C語言指針的比較(62)
4.6變址尋址(63)
4.7基址加變址尋址(64)
4.8尋址方式綜合舉例(66)
4.9x86機器指令編碼規(guī)則(68)
4.108086/80386的尋址方式(73)
習題4(74)
上機實踐4(77)
第5章常用機器指令(79)
5.1通用機器指令概述(79)
5.2數(shù)據(jù)傳送指令(80)
5.2.1一般數(shù)據(jù)傳送指令(80)
5.2.2帶條件的數(shù)據(jù)傳送指令(82)
5.2.3堆棧操作指令(83)
5.2.4標志寄存器傳送指令(86)
5.2.5地址傳送指令(88)
5.3算術(shù)運算指令(89)
5.3.1加法指令(90)
5.3.2減法指令(91)
5.3.3乘法指令(92)
5.3.4除法指令(94)
5.3.5符號擴展指令(95)
5.4邏輯運算指令(95)
5.5移位指令(97)
5.7位操作和字節(jié)操作指令(99)
5.8標志位控制指令和雜項指令(100)
5.9I/O指令(100)
習題5(102)
上機實踐5(103)
第6章順序和分支程序設(shè)計(105)
6.1概述(105)
6.2程序中的偽指令(107)
6.2.1處理器選擇偽指令(107)
6.2.2存儲模型說明偽指令(108)
6.2.3段定義及程序結(jié)束偽指令(109)
6.3轉(zhuǎn)移指令(110)
6.3.1轉(zhuǎn)移指令概述(110)
6.3.2簡單條件轉(zhuǎn)移指令(110)
6.3.3無符號條件轉(zhuǎn)移指令(111)
6.3.4有符號條件轉(zhuǎn)移指令(113)
6.3.5無條件轉(zhuǎn)移指令(114)
6.4簡單分支程序設(shè)計(115)
6.4.1C語言的if語句與匯編語句的對應(yīng)關(guān)系(115)
6.4.2分支程序設(shè)計示例(117)
6.4.3分支程序設(shè)計注意事項(120)
6.5多分支程序設(shè)計(121)
6.5.1多分支向無分支的轉(zhuǎn)化(121)
6.5.2switch語句的編譯(123)
6.6條件控制流偽指令(125)
習題6(128)
上機實踐6(129)
第7章循環(huán)程序設(shè)計(131)
7.1循環(huán)程序(131)
7.1.1循環(huán)程序的結(jié)構(gòu)(131)
7.1.2循環(huán)控制方法(132)
7.1.3循環(huán)控制指令(134)
7.2單重循環(huán)程序設(shè)計(137)
7.3多重循環(huán)程序設(shè)計(139)
7.4循環(huán)程序中的細節(jié)分析(141)
7.5與C循環(huán)程序反匯編的比較(145)
7.6循環(huán)控制偽指令(148)
習題7(150)
上機實踐7(151)
第8章子程序設(shè)計(152)
8.1子程序的概念(152)
8.2子程序的基本用法(153)
8.2.1子程序的定義(153)
8.2.2子程序的調(diào)用和返回(154)
8.2.3在主程序與子程序之間傳遞參數(shù)(155)
8.2.4子程序調(diào)用現(xiàn)場的保護(157)
8.2.5子程序設(shè)計應(yīng)注意的問題(158)
8.3子程序應(yīng)用示例(159)
8.3.1字符串的比較(159)
8.3.2數(shù)串轉(zhuǎn)換(161)
8.3.3串數(shù)轉(zhuǎn)換(163)
8.3.4自我修改返回地址的子程序(165)
8.3.5自我修改的子程序(168)
8.4C語言程序中函數(shù)的運行機理(169)
8.5匯編語言中子程序的高級用法(172)
8.5.1局部變量的定義和使用(173)
8.5.2子程序的原型說明、定義和調(diào)用(174)
8.5.3子程序的高級用法舉例(176)
8.6遞歸子程序的設(shè)計(177)
習題8(180)
上機實踐8(181)
第9章串處理程序設(shè)計(183)
9.1串操作指令簡介(183)
9.2串傳送指令(185)
9.3串比較指令(187)
9.4串搜索指令(189)
9.5向目的串中存數(shù)指令(190)
9.6從源串中取數(shù)指令(191)
習題9(192)
上機實踐9(192)
第10章復(fù)合數(shù)據(jù)類型的定義和使用(194)
10.1結(jié)構(gòu)體(194)
10.1.1結(jié)構(gòu)體的定義(194)
10.1.2結(jié)構(gòu)變量的定義(195)
10.1.3結(jié)構(gòu)變量的訪問(196)
10.1.4結(jié)構(gòu)信息的自動計算(198)
10.2結(jié)構(gòu)變量的數(shù)據(jù)存儲(200)
10.2.1匯編語言中結(jié)構(gòu)變量的存儲(200)
10.2.2與C語言結(jié)構(gòu)變量存儲的差異(201)
10.3聯(lián)合體(202)
習題10(203)
上機實踐10(203)
第11章程序設(shè)計的其他方法(205)
11.1匯編語言多模塊化程序設(shè)計(205)
11.2C語言程序和匯編語言程序的混合(209)
11.2.1函數(shù)的申明和調(diào)用(209)
11.2.2變量的申明和調(diào)用(210)
11.3內(nèi)嵌匯編(211)
11.4模塊程序設(shè)計中的注意事項(213)
11.5宏功能程序設(shè)計(214)
11.5.1宏定義(214)
11.5.2宏調(diào)用(215)
11.5.3宏指令與子程序的比較(216)
11.6可執(zhí)行文件的格式(217)
習題11(223)
上機實踐11(224)
第12章中斷和異常處理(225)
12.1中斷與異常的基礎(chǔ)知識(225)
12.1.1中斷和異常的概念(225)
12.1.2中斷描述符表(227)
12.1.3中斷和異常的響應(yīng)過程(229)
12.1.4軟中斷指令(230)
12.2Windows中的結(jié)構(gòu)化異常處理(231)
12.2.1編寫異常處理函數(shù)(231)
12.2.2異常處理程序的注冊(232)
12.2.3全局異常處理程序的注冊(234)
12.3C語言異常處理程序反匯編分析(236)
習題12(239)
上機實踐12(239)
第13章Win32窗口程序設(shè)計(242)
13.1Win32窗口程序設(shè)計基礎(chǔ) (242)
13.1.1窗口程序運行的基本過程(242)
13.1.2Windows消息(245)
13.1.3Win32窗口程序的開發(fā)環(huán)境(247)
13.2Win32窗口應(yīng)用程序的結(jié)構(gòu)(248)
13.2.1主程序(248)
13.2.2窗口主程序(248)
13.2.3窗口消息處理程序(249)
13.3窗口應(yīng)用程序開發(fā)實例(250)
13.3.1不含資源的窗口程序(250)
13.3.2包含菜單和對話框的窗口程序(253)
13.4與C語言開發(fā)的窗口程序比較(260)
習題13(264)
上機實踐13(264)
第14章x87 FPU程序設(shè)計(265)
14.1浮點數(shù)據(jù)(265)
14.1.1浮點數(shù)據(jù)在機內(nèi)的表示形式(265)
14.1.2浮點類型變量的定義(267)
14.2x87 FPU的寄存器(268)
14.2.1x87 FPU數(shù)據(jù)寄存器(268)
14.2.2x87 FPU其他寄存器(269)
14.3x87 FPU指令(271)
14.4浮點數(shù)處理程序示例(274)
習題14(277)
上機實踐14(277)
第15章MMX程序設(shè)計(278)
15.1MMX技術(shù)簡介(278)
15.2MMX指令簡介(280)
15.3MMX編程示例(282)
15.4使用C語言編寫MMX應(yīng)用程序(285)
習題15(286)
上機實踐15(287)
第16章SSE程序設(shè)計(288)
16.1SSE技術(shù)簡介(288)
16.2SSE指令簡介(289)
16.2.1組合和標量單精度浮點指令(290)
16.2.2SSE 64位SIMD整數(shù)指令(292)
16.2.3MXCSR狀態(tài)管理指令(293)
16.2.4緩存控制指令(293)
16.3SSE2及后續(xù)版本的指令簡介(293)
16.3.1組合雙精度浮點數(shù)和標量雙精度浮點數(shù)指令(294)
16.3.264位和128位整數(shù)指令(295)
16.4SSE編程示例(296)
16.5使用C語言編寫SSE應(yīng)用程序(297)
習題16(299)
上機實踐16(300)
第17章AVX程序設(shè)計(301)
17.1AVX技術(shù)簡介(301)
17.2AVX指令簡介(302)
17.2.1新指令(302)
17.2.2功能擴展指令(303)
17.3AVX編程示例(304)
習題17(306)
上機實踐17(306)
第18章x8664位匯編程序設(shè)計(307)
18.1x8664的運行環(huán)境(307)
18.1.1寄存器(307)
18.1.2尋址方式(308)
18.1.3指令系統(tǒng)(309)
18.264位的程序設(shè)計(309)
18.2.164位平臺下與32位平臺下的區(qū)別(309)
18.2.2顯示一個消息框(312)
18.2.3浮點數(shù)運算(312)
18.2.4程序自我修改(313)
18.3x8664機器指令編碼規(guī)則(314)
習題18(317)
上機實踐18(317)
第19章上機操作(318)
19.1創(chuàng)建工程和生成可執(zhí)行程序(318)
19.2程序的調(diào)試(319)
19.3編譯鏈接器的配置(322)
19.4其他操作(324)
附錄ASCII字符表(326)
參考文獻(327)

本目錄推薦

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