亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 哈哈哈,超酷匯編教程-- 簡明x86匯編語言教程(2).txt

?? 學(xué)習(xí)(編程技巧_編程知識_程序代碼),是學(xué)習(xí)編程不可多得的學(xué)習(xí)精驗
?? TXT
字號:
哈哈哈,超酷匯編教程-- 簡明x86匯編語言教程(2)
 

--------------------------------------------------------------------------------
 
司徒彥南 時間:2003-11-29 9:20:31 
   
第二章 認(rèn)識處理器
中央處理器(CPU)在微機(jī)系統(tǒng)處于“領(lǐng)導(dǎo)核心”的地位。匯編語言被編譯成機(jī)器語言之后,將由處理器來執(zhí)行。那么,首先讓我們來了解一下處理器的主要作用,這將幫助你更好地駕馭它。

典型的處理器的主要任務(wù)包括 
從內(nèi)存中獲取機(jī)器語言指令,譯碼,執(zhí)行 
根據(jù)指令代碼管理它自己的寄存器 
根據(jù)指令或自己的的需要修改內(nèi)存的內(nèi)容 
響應(yīng)其他硬件的中斷請求 
 

一般說來,處理器擁有對整個系統(tǒng)的所有總線的控制權(quán)。對于Intel平臺而言,處理器擁有對數(shù)據(jù)、內(nèi)存和控制總線的控制權(quán),根據(jù)指令控制整個計算機(jī)的運(yùn)行。在以后的章節(jié)中,我們還將討論系統(tǒng)中同時存在多個處理器的情況。

處理器中有一些寄存器,這些寄存器可以保存特定長度的數(shù)據(jù)。某些寄存器中保存的數(shù)據(jù)對于系統(tǒng)的運(yùn)行有特殊的意義。

新的處理器往往擁有更多、具有更大字長的寄存器,提供更靈活的取指、尋址方式。

寄存器

如前所述,處理器中有一些可以保存數(shù)據(jù)的地方被稱作寄存器。

寄存器可以被裝入數(shù)據(jù),你也可以在不同的寄存器之間移動這些數(shù)據(jù),或者做類似的事情。基本上,像四則運(yùn)算、位運(yùn)算等這些計算操作,都主要是針對寄存器進(jìn)行的。

首先讓我來介紹一下80386上最常用的4個通用寄存器。先瞧瞧下面的圖形,試著理解一下:



上圖中,數(shù)字表示的是位。我們可以看出,EAX是一個32-bit寄存器。同時,它的低16-bit又可以通過AX這個名字來訪問;AX又被分為高、低8bit兩部分,分別由AH和AL來表示。

對于EAX、AX、AH、AL的改變同時也會影響與被修改的那些寄存器的值。從而事實上只存在一個32-bit的寄存器EAX,而它可以通過4種不同的途徑訪問。

也許通過名字能夠更容易地理解這些寄存器之間的關(guān)系。EAX中的E的意思是“擴(kuò)展的”,整個EAX的意思是擴(kuò)展的AX。X的意思Intel沒有明示,我個人認(rèn)為表示它是一個可變的量 。而AH、AL中的H和L分別代表高和低 。

為什么要這么做呢?主要由于歷史原因。早期的計算機(jī)是8位的,8086是第一個16位處理器,其通用寄存器的名字是AX,BX等等;80386是Intel推出的第一款I(lǐng)A-32系列處理器,所有的寄存器都被擴(kuò)充為32位。為了能夠兼容以前的16位應(yīng)用程序,80386不能將這些寄存器依舊命名為AX、BX,并且簡單地將他們擴(kuò)充為32位——這將增加處理器在處理指令方面的成本。

Intel微處理器的寄存器列表(在本章先只介紹80386的寄存器,MMX寄存器以及其他新一代處理器的新寄存器將在以后的章節(jié)介紹)

通用寄存器
下面介紹通用寄存器及其習(xí)慣用法。顧名思義,通用寄存器是那些你可以根據(jù)自己的意愿使用的寄存器,修改他們的值通常不會對計算機(jī)的運(yùn)行造成很大的影響。通用寄存器最多的用途是計算。

EAX
32-bit寬
 通用寄存器。相對其他寄存器,在進(jìn)行運(yùn)算方面比較常用。在保護(hù)模式中,也可以作為內(nèi)存偏移指針(此時,DS作為段 寄存器或選擇器) 
EBX
32-bit寬
 通用寄存器。通常作為內(nèi)存偏移指針使用(相對于EAX、ECX、EDX),DS是默認(rèn)的段寄存器或選擇器。在保護(hù)模式中,同樣可以起這個作用。 
ECX
32-bit寬
 通用寄存器。通常用于特定指令的計數(shù)。在保護(hù)模式中,也可以作為內(nèi)存偏移指針(此時,DS作為 寄存器或段選擇器)。 
EDX
32-bit寬
 通用寄存器。在某些運(yùn)算中作為EAX的溢出寄存器(例如乘、除)。在保護(hù)模式中,也可以作為內(nèi)存偏移指針(此時,DS作為段 寄存器或選擇器)。 

上述寄存器同EAX一樣包括對應(yīng)的16-bit和8-bit分組。

用作內(nèi)存指針的特殊寄存器

ESI
32-bit寬 
 通常在內(nèi)存操作指令中作為“源地址指針”使用。當(dāng)然,ESI可以被裝入任意的數(shù)值,但通常沒有人把它當(dāng)作通用寄存器來用。DS是默認(rèn)段寄存器或選擇器。 
EDI
32-bit寬
 通常在內(nèi)存操作指令中作為“目的地址指針”使用。當(dāng)然,EDI也可以被裝入任意的數(shù)值,但通常沒有人把它當(dāng)作通用寄存器來用。DS是默認(rèn)段寄存器或選擇器。 
EBP
32-bit寬
 這也是一個作為指針的寄存器。通常,它被高級語言編譯器用以建造‘堆棧幀’來保存函數(shù)或過程的局部變量,不過,還是那句話,你可以在其中保存你希望的任何數(shù)據(jù)。SS是它的默認(rèn)段寄存器或選擇器。 

注意,這三個寄存器沒有對應(yīng)的8-bit分組。換言之,你可以通過SI、DI、BP作為別名訪問他們的低16位,卻沒有辦法直接訪問他們的低8位。

段寄存器和選擇器

實模式下的段寄存器到保護(hù)模式下?lián)u身一變就成了選擇器。不同的是,實模式下的“段寄存器”是16-bit的,而保護(hù)模式下的選擇器是32-bit的。

CS 代碼段,或代碼選擇器。同IP寄存器(稍后介紹)一同指向當(dāng)前正在執(zhí)行的那個地址。處理器執(zhí)行時從這個寄存器指向的段(實模式)或內(nèi)存(保護(hù)模式)中獲取指令。除了跳轉(zhuǎn)或其他分支指令之外,你無法修改這個寄存器的內(nèi)容。 
DS 數(shù)據(jù)段,或數(shù)據(jù)選擇器。這個寄存器的低16 bit連同ESI一同指向的指令將要處理的內(nèi)存。同時,所有的內(nèi)存操作指令 默認(rèn)情況下都用它指定操作段(實模式)或內(nèi)存(作為選擇器,在保護(hù)模式。這個寄存器可以被裝入任意數(shù)值,然而在這么做的時候需要小心一些。方法是,首先把數(shù)據(jù)送給AX,然后再把它從AX傳送給DS(當(dāng)然,也可以通過堆棧來做). 
ES 附加段,或附加選擇器。這個寄存器的低16 bit連同EDI一同指向的指令將要處理的內(nèi)存。同樣的,這個寄存器可以被裝入任意數(shù)值,方法和DS類似。 
FS F段或F選擇器(推測F可能是Free?)。可以用這個寄存器作為默認(rèn)段寄存器或選擇器的一個替代品。它可以被裝入任何數(shù)值,方法和DS類似。 
GS G段或G選擇器(G的意義和F一樣,沒有在Intel的文檔中解釋)。它和FS幾乎完全一樣。 
SS 堆棧段或堆棧選擇器。這個寄存器的低16 bit連同ESP一同指向下一次堆棧操作(push和pop)所要使用的堆棧地址。這個寄存器也可以被裝入任意數(shù)值,你可以通過入棧和出棧操作來給他賦值,不過由于堆棧對于很多操作有很重要的意義,因此,不正確的修改有可能造成對堆棧的破壞。 

* 注意 一定不要在初學(xué)匯編的階段把這些寄存器弄混。他們非常重要,而一旦你掌握了他們,你就可以對他們做任意的操作了。段寄存器,或選擇器,在沒有指定的情況下都是使用默認(rèn)的那個。這句話在現(xiàn)在看來可能有點稀里糊涂,不過你很快就會在后面知道如何去做。

特殊寄存器(指向到特定段或內(nèi)存的偏移量):

EIP 這個寄存器非常的重要。這是一個32位寬的寄存器 ,同CS一同指向即將執(zhí)行的那條指令的地址。不能夠直接修改這個寄存器的值,修改它的唯一方法是跳轉(zhuǎn)或分支指令。(CS是默認(rèn)的段或選擇器) 
ESP 這個32位寄存器指向堆棧中即將被操作的那個地址。盡管可以修改它的值,然而并不提倡這樣做,因為如果你不是非常明白自己在做什么,那么你可能造成堆棧的破壞。對于絕大多數(shù)情況而言,這對程序是致命的。(SS是默認(rèn)的段或選擇器) 

IP: Instruction Pointer, 指令指針
SP: Stack Pointer, 堆棧指針

好了,上面是最基本的寄存器。下面是一些其他的寄存器,你甚至可能沒有聽說過它們。(都是32位寬):

CR0, CR2, CR3(控制寄存器)。舉一個例子,CR0的作用是切換實模式和保護(hù)模式。

還有其他一些寄存器,D0, D1, D2, D3, D6和D7(調(diào)試寄存器)。他們可以作為調(diào)試器的硬件支持來設(shè)置條件斷點。

TR3, TR4, TR5, TR6 和 TR? 寄存器(測試寄存器)用于某些條件測試。

最后我們要說的是一個在程序設(shè)計中起著非常關(guān)鍵的作用的寄存器:標(biāo)志寄存器。



本節(jié)中部份表格來自David Jurgens的HelpPC 2.10快速參考手冊。在此謹(jǐn)表謝意。
 
 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷综合久久久久中文一区二区| 欧美日韩中字一区| 欧美一级片在线观看| 久久综合成人精品亚洲另类欧美 | 成人精品视频一区二区三区| 一本色道久久综合亚洲精品按摩| 精品伦理精品一区| 亚洲va欧美va天堂v国产综合| 国产电影一区在线| 日韩一区二区三区在线| 亚洲激情网站免费观看| 成人午夜大片免费观看| 精品日韩成人av| 日韩精品久久理论片| 在线亚洲人成电影网站色www| 欧美激情一区二区在线| 精品制服美女久久| 91精品啪在线观看国产60岁| 亚洲自拍偷拍麻豆| eeuss国产一区二区三区| 欧美tickling挠脚心丨vk| 日韩高清欧美激情| 欧美电影影音先锋| 亚洲伊人色欲综合网| 色综合一区二区三区| 国产精品久久久久久久裸模| 国产又粗又猛又爽又黄91精品| 91麻豆精品久久久久蜜臀 | 国产日韩亚洲欧美综合| 精彩视频一区二区三区| 欧美mv日韩mv| 狂野欧美性猛交blacked| 91精品国产麻豆| 丝袜亚洲另类欧美综合| 欧美一区二区黄| 美女视频网站久久| 亚洲精品一区在线观看| 国产一区二区精品在线观看| 久久日韩粉嫩一区二区三区 | 日韩精品一区在线| 精品在线观看免费| 国产午夜精品美女毛片视频| 国产精品一区二区久久不卡| 久久精品无码一区二区三区| 福利电影一区二区三区| 亚洲欧美在线高清| 欧美艳星brazzers| 日本欧美久久久久免费播放网| 欧美一区欧美二区| 国产一区二区在线看| 欧美高清一级片在线观看| 97国产精品videossex| 亚洲精品国产一区二区三区四区在线| 91麻豆蜜桃一区二区三区| 一区二区三区波多野结衣在线观看| 欧洲中文字幕精品| 蜜臀久久99精品久久久久久9| 精品国内片67194| 成人精品国产一区二区4080| 亚洲一区二区三区四区五区黄 | 欧美日韩电影在线播放| 蜜臀a∨国产成人精品| 亚洲国产精品黑人久久久| 色综合久久天天| 日本三级韩国三级欧美三级| 久久精品视频免费观看| 色猫猫国产区一区二在线视频| 水蜜桃久久夜色精品一区的特点| 精品不卡在线视频| 91欧美激情一区二区三区成人| 日韩av电影一区| 国产精品久久久久久户外露出| 欧美麻豆精品久久久久久| 国产成人综合视频| 亚洲成人黄色小说| 国产精品国模大尺度视频| 91精品婷婷国产综合久久竹菊| 国产成人精品三级| 日韩av成人高清| 成人欧美一区二区三区小说 | eeuss影院一区二区三区| 日韩电影在线一区二区| 国产精品动漫网站| 久久综合视频网| 欧美日韩成人综合在线一区二区| 国产精品中文字幕欧美| 亚洲成人1区2区| 中文字幕亚洲成人| 久久精品人人做人人爽97| 欧美日免费三级在线| zzijzzij亚洲日本少妇熟睡| 久久99久久久欧美国产| 亚洲成av人片一区二区梦乃| 成人免费一区二区三区在线观看| 日韩精品一区二区在线| 欧美日本一区二区三区| 色婷婷一区二区| zzijzzij亚洲日本少妇熟睡| 激情综合五月婷婷| 奇米色一区二区| 日韩高清在线电影| 亚洲成a人片在线观看中文| 亚洲男人天堂av| 国产精品久久久久久久久免费相片 | 国产麻豆成人传媒免费观看| 奇米亚洲午夜久久精品| 日韩二区三区在线观看| 天天av天天翘天天综合网色鬼国产| 亚洲视频一区在线| 日韩伦理av电影| 亚洲欧洲日韩在线| 《视频一区视频二区| 欧美国产欧美综合| 中文字幕一区二区三区在线播放| 久久精品一区八戒影视| 欧美国产一区二区在线观看 | 韩国理伦片一区二区三区在线播放| 三级影片在线观看欧美日韩一区二区| 一区二区三区毛片| 亚洲一二三区在线观看| 亚洲午夜免费电影| 亚洲va欧美va国产va天堂影院| 午夜久久久久久久久| 青青草国产精品97视觉盛宴| 美国毛片一区二区| 国产高清不卡一区二区| 高清成人免费视频| 97精品国产97久久久久久久久久久久| 99国产精品一区| 欧美午夜影院一区| 日韩一卡二卡三卡| 久久久久久免费| 国产精品亲子伦对白| 一区二区不卡在线播放 | 椎名由奈av一区二区三区| 国产精品久久久久精k8| 亚洲男人天堂一区| 五月激情综合婷婷| 国产一二精品视频| 91蜜桃在线免费视频| 欧美视频一区在线观看| 日韩视频免费观看高清完整版 | 日本高清不卡视频| 欧美网站大全在线观看| 日韩一级黄色大片| 国产精品久久久久久久久免费樱桃| 亚洲欧美视频在线观看| 日韩国产精品久久| 成人一区二区三区中文字幕| 91蝌蚪porny成人天涯| 在线成人免费视频| 欧美国产激情二区三区| 亚洲成人综合在线| 丁香婷婷综合色啪| 欧美美女喷水视频| 国产精品三级av在线播放| 亚洲va韩国va欧美va精品| 国产福利一区二区三区在线视频| 欧洲一区二区av| 亚洲精品在线电影| 亚洲不卡一区二区三区| 成人国产电影网| 欧美一区二区高清| 一级做a爱片久久| 国产精品69毛片高清亚洲| 欧美人狂配大交3d怪物一区 | 国产美女久久久久| 欧美日韩夫妻久久| 亚洲人成伊人成综合网小说| 视频在线在亚洲| 91首页免费视频| 国产清纯美女被跳蛋高潮一区二区久久w | 亚洲欧洲精品一区二区精品久久久 | 欧美亚一区二区| 欧美激情综合五月色丁香小说| 视频一区二区国产| 欧美自拍偷拍一区| 成人欧美一区二区三区黑人麻豆| 激情小说欧美图片| 在线不卡中文字幕播放| 一区二区在线观看免费视频播放| 国产精品18久久久久久久网站| 欧美一区二区三区系列电影| 亚洲一区二区不卡免费| 99久久精品国产毛片| 国产日韩欧美在线一区| 久久精品国产免费| 日韩三级免费观看| 奇米精品一区二区三区在线观看| 欧美性猛交一区二区三区精品| 亚洲丝袜另类动漫二区| 不卡欧美aaaaa| 久久久不卡影院| 国产精品自拍三区| 久久久99免费| 国产成人在线观看免费网站| 精品剧情v国产在线观看在线| 免费在线一区观看| 欧美一区二区免费视频| 免费成人av在线播放|