av素人天堂_free性亚洲_久久亚洲国产视频_国产网红在线_午夜av在线播放_欧美成人精品福利网站_热99在线观看_国产在线观看免费麻豆_日本高清在线观看_亚洲免费网站观看视频

【匯編基礎(chǔ)】1.基礎(chǔ)知識(shí)

1.1機(jī)器語(yǔ)言

說(shuō)到匯編語(yǔ)言的產(chǎn)生,首先要講一下機(jī)器語(yǔ)言。機(jī)器語(yǔ)言是機(jī)器指令的集合。機(jī)器指令展開(kāi)來(lái)講就是一臺(tái)機(jī)器可以正確執(zhí)行的命令。電子計(jì)算機(jī)的機(jī)器指令是一列二進(jìn)制數(shù)字。計(jì)算機(jī)將之轉(zhuǎn)變?yōu)橐涣懈叩碗娖?,以使?jì)算機(jī)的電子器件受到驅(qū)動(dòng),進(jìn)行運(yùn)算。

上面所說(shuō)的計(jì)算機(jī)指的是可以執(zhí)行機(jī)器指令,進(jìn)行運(yùn)算的機(jī)器。這是早期計(jì)算機(jī)的概念。現(xiàn)在,在我們常用的PC機(jī)中,有一個(gè)芯片來(lái)完成上面所說(shuō)的計(jì)算機(jī)的功能。這個(gè)芯片就是我們常說(shuō)的CPU(Central Processing Unit,中央處理單元),CPU是一種微處理器。以后我們提到的計(jì)算機(jī)是指由CPU和其他受CPU直接或間接控制的芯片、器件、設(shè)備組成的計(jì)算機(jī)系統(tǒng),比如我們最常見(jiàn)的PC機(jī)。

每一種微處理器,由于硬件設(shè)計(jì)和內(nèi)部結(jié)構(gòu)的不同,就需要用不同的電平脈沖來(lái)控制,使它工作。所以每一種微處理器都有自己的機(jī)器指令集,也就是機(jī)器語(yǔ)言。

早期的程序設(shè)計(jì)均使用機(jī)器語(yǔ)言。程序員們將用0、1數(shù)字編成的程序代碼打在紙帶或卡片上,1打孔,0不打孔,再將程序通過(guò)紙帶機(jī)或卡片機(jī)輸入計(jì)算機(jī),進(jìn)行運(yùn)算。

早期的程序設(shè)計(jì)均使用機(jī)器語(yǔ)言。程序員們將用0、1數(shù)字編成的程序代碼打在紙帶或卡片上,1打孔,0不打孔,再將程序通過(guò)紙帶機(jī)或卡片機(jī)輸入計(jì)算機(jī),進(jìn)行運(yùn)算。

應(yīng)用8086CPU完成運(yùn)算s=768+12288-1280,機(jī)器碼如下。

101110000000000000000011000001010000000000110000001011010000000000000101

假如將程序錯(cuò)寫(xiě)成以下這樣,請(qǐng)你找出錯(cuò)誤。

101100000000000000000011000001010000000000110000000101101000000000000101

書(shū)寫(xiě)和閱讀機(jī)器碼程序不是一件簡(jiǎn)單的工作,要記住所有抽象的二進(jìn)制碼。上面只是一個(gè)非常簡(jiǎn)單的小程序,就暴露了機(jī)器碼的晦澀難懂和不易查錯(cuò)。寫(xiě)如此小的一個(gè)程序尚且如此,實(shí)際上一個(gè)有用的程序至少要有幾十行機(jī)器碼,那么,情況將怎么樣呢?
在顯示器上輸出“welcome to masm”,機(jī)器碼如下。

00011110
101110000000000000000000
01010000
101110001100011000001111
1000111011011000
1011010000000110
1011000000000000
1011011100000111
101110010000000000000000
1011011000011000
1011001001001111
1100110100010000
1011010000000010
1011011100000000
1011011000000000
1011001000000000
1100110100010000
1011010000001001
10001101000101100010101000000000
1100110100100001
1011010000001010
10001101000101100011000100000000
1100110100100001
1011010000000110
1011000000010100
1011011100011001
1011010100001011
1011000100010011
1011011000001101
1011001000111100
1100110100010000
1011010000000010
1011011100000000
1011000000001100
1011001000010100
1100110100010000
1011010000001001
10001101000101100000000000000000
1100110100100001
11001011

看到這樣的程序,你有什么感想?如果程序里有一個(gè)“1”被誤寫(xiě)為“0”,又如何去查找呢?

1.2 匯編語(yǔ)言的產(chǎn)生

早期的程序員們很快就發(fā)現(xiàn)了使用機(jī)器語(yǔ)言帶來(lái)的麻煩,它是如此難于辨別和記憶,給整個(gè)產(chǎn)業(yè)的發(fā)展帶來(lái)了障礙。于是匯編語(yǔ)言產(chǎn)生了。
匯編語(yǔ)言的主體是匯編指令。匯編指令和機(jī)器指令的差別在于指令的表示方法上。匯編指令是機(jī)器指令便于記憶的書(shū)寫(xiě)格式。
例如:機(jī)器指令1000100111011000表示把寄存器BX的內(nèi)容送到AX中。匯編指令則寫(xiě)成mov ax,bx。這樣的寫(xiě)法與人類(lèi)語(yǔ)言接近,便于閱讀和記憶。

操作:寄存器BX的內(nèi)容送到AX中
機(jī)器指令:1000100111011000
匯編指令:mov ax,bx

(寄存器,簡(jiǎn)單地講是CPU中可以存儲(chǔ)數(shù)據(jù)的器件,一個(gè)CPU中有多個(gè)寄存器。AX是其中一個(gè)寄存器的代號(hào),BX是另一個(gè)寄存器的代號(hào)。更詳細(xì)的內(nèi)容我們?cè)谝院蟮恼n程中將會(huì)講到。)

此后,程序員們就用匯編指令編寫(xiě)源程序??墒?,計(jì)算機(jī)能讀懂的只有機(jī)器指令,那么如何讓計(jì)算機(jī)執(zhí)行程序員用匯編指令編寫(xiě)的程序呢?這時(shí),就需要有一個(gè)能夠?qū)R編指令轉(zhuǎn)換成機(jī)器指令的翻譯程序,這樣的程序我們稱(chēng)其為編譯器。程序員用匯編語(yǔ)言寫(xiě)出源程序,再用匯編編譯器將其編譯為機(jī)器碼,由計(jì)算機(jī)最終執(zhí)行。圖1.1描述了這個(gè)工作過(guò)程。

1.3 匯編語(yǔ)言的組成

匯編語(yǔ)言發(fā)展至今,有以下3類(lèi)指令組成。
(1)匯編指令:機(jī)器碼的助記符,有對(duì)應(yīng)的機(jī)器碼。
(2)偽指令:沒(méi)有對(duì)應(yīng)的機(jī)器碼,由編譯器執(zhí)行,計(jì)算機(jī)并不執(zhí)行。
(3)其他符號(hào):如+、一、*、/ 等,由編譯器識(shí)別,沒(méi)有對(duì)應(yīng)的機(jī)器碼。
匯編語(yǔ)言的核心是匯編指令,它決定了匯編語(yǔ)言的特性。

1.4 存儲(chǔ)器

CPU是計(jì)算機(jī)的核心部件,它控制整個(gè)計(jì)算機(jī)的運(yùn)作并進(jìn)行運(yùn)算。要想讓一個(gè)CPU工作,就必須向它提供指令和數(shù)據(jù)。指令和數(shù)據(jù)在存儲(chǔ)器中存放,也就是我們平時(shí)所說(shuō)的內(nèi)存。在一臺(tái)PC機(jī)中內(nèi)存的作用僅次于CPU。離開(kāi)了內(nèi)存,性能再好的CPU也無(wú)法工作。這就像再聰明的大腦,沒(méi)有了記憶也無(wú)法進(jìn)行思考。磁盤(pán)不同于內(nèi)存,磁盤(pán)上的數(shù)據(jù)或程序如果不讀到內(nèi)存中,就無(wú)法被CPU使用。要靈活地利用匯編語(yǔ)言編程,我們首先要了解CPU是如何從內(nèi)存中讀取信息,以及向內(nèi)存中寫(xiě)入信息的。

1.5 指令和數(shù)據(jù)

指令和數(shù)據(jù)是應(yīng)用上的概念。在內(nèi)存或磁盤(pán)上,指令和數(shù)據(jù)沒(méi)有任何區(qū)別,都是二進(jìn)制信息。CPU在工作的時(shí)候把有的信息看作指令,有的信息看作數(shù)據(jù),為同樣的信息賦予了不同的意義。就像圍棋的棋子,在棋盒里的時(shí)候沒(méi)有任何區(qū)別,在對(duì)弈的時(shí)候就有了不同的意義。

1.6 存儲(chǔ)單元

存儲(chǔ)器被劃分成若干個(gè)存儲(chǔ)單元,每個(gè)存儲(chǔ)單元從0開(kāi)始順序編號(hào),例如一個(gè)存儲(chǔ)器有128個(gè)存儲(chǔ)單元,編號(hào)從0~127,如圖1.2所示。
那么一個(gè)存儲(chǔ)單元能存儲(chǔ)多少信息呢?我們知道電子計(jì)算機(jī)的最小信息單位是bit(音譯為比特),也就是一個(gè)二進(jìn)制位。8個(gè)bit組成一個(gè)Byte,也就是通常講的一個(gè)字節(jié)。微型機(jī)存儲(chǔ)器的存儲(chǔ)單元可以存儲(chǔ)一個(gè)Byte,即8個(gè)二進(jìn)制位。一個(gè)存儲(chǔ)器有128個(gè)存儲(chǔ)單元,它可以存儲(chǔ)128個(gè)Byte。
微機(jī)存儲(chǔ)器的容量是以字節(jié)為最小單位來(lái)計(jì)算的。對(duì)于擁有128個(gè)存儲(chǔ)單元的存儲(chǔ)器,我們可以說(shuō),它的容量是128個(gè)字節(jié)。

對(duì)于大容量的存儲(chǔ)器一般還用以下單位來(lái)計(jì)量容量(以下用B來(lái)代表Byte):

1KB=1024B

1MB=1024KB

1GB=1024MB

1TB=1024GB

磁盤(pán)的容量單位同內(nèi)存的一樣,實(shí)際上以上單位是微機(jī)中常用的計(jì)量單位。

1.7 CPU對(duì)存儲(chǔ)器的讀寫(xiě)

以上講到,存儲(chǔ)器被劃分成多個(gè)存儲(chǔ)單元,存儲(chǔ)單元從零開(kāi)始順序編號(hào)。這些編號(hào)可以看作存儲(chǔ)單元在存儲(chǔ)器中的地址。就像一條街,每個(gè)房子都有門(mén)牌號(hào)碼。
CPU要從內(nèi)存中讀數(shù)據(jù),首先要指定存儲(chǔ)單元的地址。也就是說(shuō)它要先確定它要讀取哪一個(gè)存儲(chǔ)單元中的數(shù)據(jù)。就像在一條街上找人,先要確定他住在哪個(gè)房子里。

另外,在一臺(tái)微機(jī)中,不只有存儲(chǔ)器這一種器件。CPU在讀寫(xiě)數(shù)據(jù)時(shí)還要指明,它要對(duì)哪一個(gè)器件進(jìn)行操作,進(jìn)行哪種操作,是從中讀出數(shù)據(jù),還是向里面寫(xiě)入數(shù)據(jù)。

可見(jiàn),CPU要想進(jìn)行數(shù)據(jù)的讀寫(xiě),必須和外部器件(標(biāo)準(zhǔn)的說(shuō)法是芯片)進(jìn)行下面3類(lèi)信息的交互。

  • 存儲(chǔ)單元的地址(地址信息)
  • 器件的選擇,讀或?qū)懙拿睿刂菩畔ⅲ?/li>
  • 讀或?qū)懙臄?shù)據(jù)(數(shù)據(jù)信息)

那么CPU是通過(guò)什么將地址、數(shù)據(jù)和控制信息傳到存儲(chǔ)器芯片中的呢?電子計(jì)算機(jī)能處理、傳輸?shù)男畔⒍际请娦盘?hào),電信號(hào)當(dāng)然要用導(dǎo)線傳送。在計(jì)算機(jī)中專(zhuān)門(mén)有連接CPU和其他芯片的導(dǎo)線,通常稱(chēng)為總線??偩€從物理上來(lái)講,就是一根根導(dǎo)線的集合。
根據(jù)傳送信息的不同,總線從邏輯上又分為3類(lèi),地址總線控制總線數(shù)據(jù)總線。

CPU從3號(hào)單元中讀取數(shù)據(jù)的過(guò)程(見(jiàn)圖1.3)如下。

(1)CPU通過(guò)地址線將地址信息3發(fā)出。
(2)CPU通過(guò)控制線發(fā)出內(nèi)存讀命令,選中存儲(chǔ)器芯片,并通知它,將要從中讀取數(shù)據(jù)。

(3)存儲(chǔ)器將3號(hào)單元中的數(shù)據(jù)8通過(guò)數(shù)據(jù)線送入CPU。

寫(xiě)操作與讀操作的步驟相似。如向3號(hào)單元寫(xiě)入數(shù)據(jù)26。
(1)CPU通過(guò)地址線將地址信息3發(fā)出。
(2)CPU通過(guò)控制線發(fā)出內(nèi)存寫(xiě)命令,選中存儲(chǔ)器芯片,并通知它,要向其中寫(xiě)入數(shù)據(jù)。
(3)CPU通過(guò)數(shù)據(jù)線將數(shù)據(jù)26送入內(nèi)存的3號(hào)單元中。

從上面我們知道了CPU是如何進(jìn)行數(shù)據(jù)讀寫(xiě)的??墒?,如何命令計(jì)算機(jī)進(jìn)行數(shù)據(jù)的讀寫(xiě)呢?
要讓一個(gè)計(jì)算機(jī)或微處理器工作,應(yīng)向它輸入能夠驅(qū)動(dòng)它進(jìn)行工作的電平信息(機(jī)器碼)。
對(duì)于8086CPU,下面的機(jī)器碼,能夠完成從3號(hào)單元讀數(shù)據(jù)。

機(jī)器碼:101000010000001100000000
含義:從3號(hào)單元讀取數(shù)據(jù)送入寄存器AX

CPU接收這條機(jī)器碼后將完成我們上面所述的讀寫(xiě)工作。
機(jī)器碼難于記憶,用匯編指令來(lái)表示,情況如下。

機(jī)器碼:101000010000001100000000
對(duì)應(yīng)的匯編指令:MOV AX,[3]
含義:傳送3號(hào)單元的內(nèi)容入AX

1.8 地址總線

現(xiàn)在我們知道,CPU是通過(guò)地址總線來(lái)指定存儲(chǔ)器單元的。可見(jiàn)地址總線上能傳送多少個(gè)不同的信息,CPU就可以對(duì)多少個(gè)存儲(chǔ)單元進(jìn)行尋址。
現(xiàn)假設(shè),一個(gè)CPU有10根地址總線,讓我們來(lái)看一下它的尋址情況。我們知道,在電子計(jì)算機(jī)中,一根導(dǎo)線可以傳送的穩(wěn)定狀態(tài)只有兩種,高電平或是低電平。用二進(jìn)制表示就是1或0,10根導(dǎo)線可以傳送10位二進(jìn)制數(shù)據(jù)。而10位二進(jìn)制數(shù)可以表示多少個(gè)不同的數(shù)據(jù)呢?2的10次方個(gè)。最小數(shù)為0,最大數(shù)為1023。

圖1.4展示了一個(gè)具有10根地址線的CPU向內(nèi)存發(fā)出地址信息11時(shí)10根地址線上傳送的二進(jìn)制信息。考慮一下,訪問(wèn)地址為12、13、14等的內(nèi)存單元時(shí),地址總線上傳送的內(nèi)容是什么?

一個(gè)CPU有N根地址線,則可以說(shuō)這個(gè)CPU的地址總線的寬度為N。這樣的CPU最多可以尋找2的N次方個(gè)內(nèi)存單元。

1.9 數(shù)據(jù)總線

CPU與內(nèi)存或其他器件之間的數(shù)據(jù)傳送是通過(guò)數(shù)據(jù)總線來(lái)進(jìn)行的。數(shù)據(jù)總線的寬度決定了CPU和外界的數(shù)據(jù)傳送速度。8根數(shù)據(jù)總線一次可傳送一個(gè)8位二進(jìn)制數(shù)據(jù)(即一個(gè)字節(jié))。16根數(shù)據(jù)總線一次可傳送兩個(gè)字節(jié)。
8088CPU的數(shù)據(jù)總線寬度為8,8086CPU的數(shù)據(jù)總線寬度為16。我們來(lái)分別看一下它們向內(nèi)存中寫(xiě)入數(shù)據(jù)89D8H時(shí),是如何通過(guò)數(shù)據(jù)總線傳送數(shù)據(jù)的。圖1.5展示了8088CPU數(shù)據(jù)總線上的數(shù)據(jù)傳送情況;圖1.6展示了8086CPU數(shù)據(jù)總線上的數(shù)據(jù)傳送情況。

8088CPU分兩次傳送89D8,第一次傳送D8,第二次傳送89。

8086有16根數(shù)據(jù)線,可一次傳送16位數(shù)據(jù),所以可一次傳送數(shù)據(jù)89D8H;而8088只有8根數(shù)據(jù)線,一次只能傳8位數(shù)據(jù),所以向內(nèi)存寫(xiě)入數(shù)據(jù)89D8H時(shí)需要進(jìn)行兩次數(shù)據(jù)傳送。

1.10 控制總線

CPU對(duì)外部器件的控制是通過(guò)控制總線來(lái)進(jìn)行的。在這里控制總線是個(gè)總稱(chēng),控制總線是一些不同控制線的集合。有多少根控制總線,就意味著CPU提供了對(duì)外部器件的多少種控制。所以,控制總線的寬度決定了CPU對(duì)外部器件的控制能力。

前面所講的內(nèi)存讀或?qū)懨钍怯蓭赘刂凭€綜合發(fā)出的,其中有一根稱(chēng)為“讀信號(hào)輸出”的控制線負(fù)責(zé)由CPU向外傳送讀信號(hào),CPU向該控制線上輸出低電平表示將要讀取數(shù)據(jù);有一根稱(chēng)為“寫(xiě)信號(hào)輸出”的控制線則負(fù)責(zé)傳送寫(xiě)信號(hào)。

1.11 內(nèi)存地址空間(概述)

什么是內(nèi)存地址空間呢?舉例來(lái)講,一個(gè)CPU的地址總線寬度為10,那么可以尋址1024個(gè)內(nèi)存單元,這1024個(gè)可尋到的內(nèi)存單元就構(gòu)成這個(gè)CPU的內(nèi)存地址空間。下面進(jìn)行深入討論。首先需要介紹兩部分基本知識(shí),主板和接口卡。

1.12 主板

在每一臺(tái)PC機(jī)中,都有一個(gè)主板,主板上有核心器件和一些主要器件,這些器件通過(guò)總線(地址總線、數(shù)據(jù)總線、控制總線)相連。這些器件有CPU、存儲(chǔ)器、外圍芯片組、擴(kuò)展插槽等。擴(kuò)展插槽上一般插有RAM內(nèi)存條和各類(lèi)接口卡。

1.13 接口卡

計(jì)算機(jī)系統(tǒng)中,所有可用程序控制其工作的設(shè)備,必須受到CPU的控制。CPU對(duì)外部設(shè)備都不能直接控制,如顯示器、音箱、打印機(jī)等。直接控制這些設(shè)備進(jìn)行工作的是插在擴(kuò)展插槽上的接口卡。擴(kuò)展插槽通過(guò)總線和CPU相連,所以接口卡也通過(guò)總線同CPU相連。CPU可以直接控制這些接口卡,從而實(shí)現(xiàn)CPU對(duì)外設(shè)的間接控制。簡(jiǎn)單地講,就是CPU通過(guò)總線向接口卡發(fā)送命令,接口卡根據(jù)CPU的命令控制外設(shè)進(jìn)行工作。

1.14 各類(lèi)存儲(chǔ)器芯片

一臺(tái)PC機(jī)中,裝有多個(gè)存儲(chǔ)器芯片,這些存儲(chǔ)器芯片從物理連接上看是獨(dú)立的、不同的器件。從讀寫(xiě)屬性上看分為兩類(lèi):隨機(jī)存儲(chǔ)器(RAM)和只讀存儲(chǔ)器(ROM)。隨機(jī)存儲(chǔ)器可讀可寫(xiě),但必須帶電存儲(chǔ),關(guān)機(jī)后存儲(chǔ)的內(nèi)容丟失;只讀存儲(chǔ)器只能讀取不能寫(xiě)入,關(guān)機(jī)后其中的內(nèi)容不丟失。這些存儲(chǔ)器從功能和連接上又可分為以下幾類(lèi)。

  • 隨機(jī)存儲(chǔ)器。用于存放供CPU使用的絕大部分程序和數(shù)據(jù),主隨機(jī)存儲(chǔ)器一般由兩個(gè)位置上的RAM組成,裝在主板上RAM和插在擴(kuò)展插槽上的RAM。
  • 裝有BIOS(Basic Input/Output System,基本輸入/輸出系統(tǒng))的ROM BIOS是由主板和各類(lèi)接口卡(如顯卡、網(wǎng)卡等)廠商提供的軟件系統(tǒng),可以通過(guò)它利用該硬件設(shè)備進(jìn)行最基本的輸入輸出。在主板和某些接口卡上插有存儲(chǔ)相應(yīng)BIOS的ROM。例如,主板上的ROM中存儲(chǔ)著主板的BIOS(通常稱(chēng)為系統(tǒng)BIOS):顯卡上的ROM中存儲(chǔ)著顯卡的BIOS;如果網(wǎng)卡上裝有ROM,那其中就可以存儲(chǔ)網(wǎng)卡的 BIOS。
  • 接口卡上的RAM某些接口卡需要對(duì)大批量輸入、輸出數(shù)據(jù)進(jìn)行暫時(shí)存儲(chǔ),在其上裝有RAM。最典型的是顯示卡上的RAM,一般稱(chēng)為顯存。顯示卡隨時(shí)將顯存中的數(shù)據(jù)向顯示器上輸出。換句話說(shuō),我們將需要顯示的內(nèi)容寫(xiě)入顯存,就會(huì)出現(xiàn)在顯示器上。

1.15 內(nèi)存地址空間

上述的那些存儲(chǔ)器,在物理上是獨(dú)立的器件,但是在以下兩點(diǎn)上相同。

  • 都和CPU的總線相連。
  • CPU對(duì)它們進(jìn)行讀或?qū)懙臅r(shí)候都通過(guò)控制線發(fā)出內(nèi)存讀寫(xiě)命令。

這也就是說(shuō),CPU在操控它們的時(shí)候,把它們都當(dāng)作內(nèi)存來(lái)對(duì)待,把它們總的看作一個(gè)由若干存儲(chǔ)單元組成的邏輯存儲(chǔ)器,這個(gè)邏輯存儲(chǔ)器就是我們所說(shuō)的內(nèi)存地址空間。
在匯編這門(mén)課中,我們所面對(duì)的是內(nèi)存地址空間。

在圖中,所有的物理存儲(chǔ)器被看作一個(gè)由若干存儲(chǔ)單元組成的邏輯存儲(chǔ)器,每個(gè)物理存儲(chǔ)器在這個(gè)邏輯存儲(chǔ)器中占有一個(gè)地址段,即一段地址空間。CPU在這段地址空間中讀寫(xiě)數(shù)據(jù),實(shí)際上就是在相對(duì)應(yīng)的物理存儲(chǔ)器中讀寫(xiě)數(shù)據(jù)。

假設(shè),圖中的內(nèi)存地址空間的地址段分配如下。
地址0~7FFFH的32KB空間為主隨機(jī)存儲(chǔ)器的地址空間:
地址8000H-9FFFH的8KB空間為顯存地址空間:
地址A000H-FFFFH的24KB空間為各個(gè)ROM的地址空間。

這樣,CPU向內(nèi)存地址為1000H的內(nèi)存單元中寫(xiě)入數(shù)據(jù),這個(gè)數(shù)據(jù)就被寫(xiě)入主隨機(jī)存儲(chǔ)器中;CPU向內(nèi)存地址為8000H的內(nèi)存單元中寫(xiě)入數(shù)據(jù),這個(gè)數(shù)據(jù)就被寫(xiě)入顯存中,然后會(huì)被顯卡輸出到顯示器上;CPU向內(nèi)存地址為C000H的內(nèi)存單元中寫(xiě)入數(shù)據(jù)的操作是沒(méi)有結(jié)果的,C000H單元中的內(nèi)容不會(huì)被改變,C000H單元實(shí)際上就是ROM存儲(chǔ)器中的一個(gè)單元。

內(nèi)存地址空間的大小受CPU地址總線寬度的限制。8086CPU的地址總線寬度為20,可以傳送220個(gè)不同的地址信息(大小從0至220-1)。即可以定位220個(gè)內(nèi)存單元,則8086PC的內(nèi)存地址空間大小為lMB。同理,80386CPU的地址總線寬度為32,則內(nèi)存地址空間最大為4GB。

我們?cè)诨谝粋€(gè)計(jì)算機(jī)硬件系統(tǒng)編程的時(shí)候,必須知道這個(gè)系統(tǒng)中的內(nèi)存地址空間分配情況。因?yàn)楫?dāng)我們想在某類(lèi)存儲(chǔ)器中讀寫(xiě)數(shù)據(jù)的時(shí)候,必須知道它的第一個(gè)單元的地址和最后一個(gè)單元的地址,才能保證讀寫(xiě)操作是在預(yù)期的存儲(chǔ)器中進(jìn)行。比如,我們希望向顯示器輸出一段信息,那么必須將這段信息寫(xiě)到顯存中,顯卡才能將它輸出到顯示器上。要向顯存中寫(xiě)入數(shù)據(jù),必須知道顯存在內(nèi)存地址空間中的地址。

不同的計(jì)算機(jī)系統(tǒng)的內(nèi)存地址空間的分配情況是不同的,下圖展示了8086PC機(jī)內(nèi)存地址空間分配的基本情況。

上圖告訴我們,從地址0-9FFFF的內(nèi)存單元中讀取數(shù)據(jù),實(shí)際上就是在讀取主隨機(jī)存儲(chǔ)器中的數(shù)據(jù);向地址A0000-BFFFF的內(nèi)存單元中寫(xiě)數(shù)據(jù),就是向顯存中寫(xiě)入數(shù)據(jù),這些數(shù)據(jù)會(huì)被顯示卡輸出到顯示器上;我們向地址C0000-FFFFF的內(nèi)存單元中寫(xiě)入數(shù)據(jù)的操作是無(wú)效的,因?yàn)檫@等于改寫(xiě)只讀存儲(chǔ)器中的內(nèi)容。

內(nèi)存地址空間

最終運(yùn)行程序的是CPU,我們用匯編語(yǔ)言編程的時(shí)候,必須要從CPU的角度考慮問(wèn)題。對(duì)CPU來(lái)講,系統(tǒng)中的所有存儲(chǔ)器中的存儲(chǔ)單元都處于一個(gè)統(tǒng)一的邏輯存儲(chǔ)器中,它的容量受CPU尋址能力的限制。這個(gè)邏輯存儲(chǔ)器即是我們所說(shuō)的內(nèi)存地址空間。

上一篇 OllyDbg官方版和增強(qiáng)版
下一篇 【匯編基礎(chǔ)】2.寄存器
目錄
applek

applek管理員

個(gè)人說(shuō)明在個(gè)人中心里面設(shè)置

本月創(chuàng)作熱力圖

最新評(píng)論
chinacnd
chinacnd
6月26日
這個(gè)主題是怎么做到加載速度那么快的?
風(fēng)起云涌
風(fēng)起云涌
6月17日
前臺(tái)投稿現(xiàn)在有點(diǎn)太抽象了 希望可以弄成那種分區(qū)填寫(xiě)的 標(biāo)題,內(nèi)容,圖片,目錄,標(biāo)簽,這樣的
評(píng)論于留言建議
風(fēng)起云涌
風(fēng)起云涌
6月17日
希望加個(gè)開(kāi)關(guān)去掉頁(yè)腳的站點(diǎn)身份,還有自定義頁(yè)腳居中文字
評(píng)論于留言建議
卡卡
卡卡
5月31日
倒是放個(gè)演示地址啊
評(píng)論于AeroCore 主題發(fā)布
av素人天堂_free性亚洲_久久亚洲国产视频_国产网红在线_午夜av在线播放_欧美成人精品福利网站_热99在线观看_国产在线观看免费麻豆_日本高清在线观看_亚洲免费网站观看视频
久久精品视频免费看| 日本а中文在线天堂| 日韩精品欧美| 一区三区视频| 欧美日韩亚洲91| 欧美日韩国产黄色| 99这里有精品视频| 精品久久久久久无| 中文字幕精品www乱入免费视频| 亚洲乱码视频| 久久69成人| 国产不卡视频在线| 91精品在线观看入口| 日韩欧美国产网站| 日韩欧美视频一区二区三区四区| 欧美专区中文字幕| 国产拍揄自揄精品视频麻豆| 天天摸日日摸狠狠添| 免费网站看黄yyy222| 国产乱国产乱老熟300部视频| 阿v免费在线观看| 1区2区3区在线视频| 国产视频中文字幕在线观看| 一区二区中文字幕在线| 亚洲v中文字幕| 久久99久久99精品中文字幕| 久久久精品午夜少妇| 欧美激情视频一区二区三区在线播放| 亚洲高清免费一级二级三级| 欧美日韩第一区日日骚| 精品对白一区国产伦| 在线观看91精品国产入口| 国产激情在线视频| 日韩欧美亚洲视频| 99久久精品国产成人一区二区| 中文欧美日韩| 中文字幕日韩国产| 日韩精品一区二区三区视频播放| 激情综合色综合久久| 日韩av二区| 久久夜色精品国产噜噜亚洲av| av丝袜在线| 91精品久久久久久久久久入口| 国产高潮久久久| 中文字幕在线观看播放| 美国av一区二区| 91麻豆精品国产91久久久使用方法| 久久婷婷中文字幕| 久久久91精品国产| 日韩 欧美 综合| 日韩在线视频观看正片免费网站| 日本精品在线播放| 国产欧美综合视频| 最近中文字幕在线中文视频| 香蕉视频亚洲一级| 亚洲最大黄色| 日韩视频在线观看一区| 日韩欧美中文字幕公布| 久久综合九色欧美综合狠狠| 日韩精品视频在线观看免费| 日韩欧美国产高清91| 日本视频久久久| 国产欧美日韩第一页| 欧美性生交大片免费| 中文精品在线| 国产成人综合av| 在线观看一区| a天堂中文在线官网在线| 欧美日韩在线国产| 国产亚洲人成a一在线v站| 亚洲一区在线观看视频| 蜜桃视频一日韩欧美专区| 亚洲日产av中文字幕| 日韩欧美在线综合| 99在线精品视频免费观看20| 被陌生人带去卫生间啪到腿软| 国产午夜精品视频| 午夜私人影院在线观看| 中文 欧美 日韩| 91精品视频播放| 日韩在线视频免费观看| 黄色一区二区在线观看| 国产一级片网站| 国产不卡在线观看视频| 麻豆一区二区99久久久久| 日韩亚洲欧美中文字幕| av免费网站在线| 欧美不卡视频| 国产精品一区二三区| 亚洲欧美韩国综合色| 亚洲免费福利视频| 一区二区不卡久久精品| wwwav91com| 国产三级视频网站| 欧美日韩一级黄| 免费国产h视频在线观看86| 伊人国产视频| 久久电影国产免费久久电影| 久久夜色精品国产欧美乱极品| 欧美亚洲另类制服自拍| 国产v日产∨综合v精品视频| 精品久久久久久综合日本欧美| 亚洲国产福利视频| 午夜高潮免费视频| 国产高清大尺度一区二区不卡| 欧美日韩高清在线一区| 欧美日韩国产中文精品字幕自在自线| 91精品国产综合久久福利| 国产调教精品| 精品日韩视频在线观看| 中文天堂资源在线| 玖玖在线免费视频| 一区二区日韩av| 91精品国产综合久久精品| 91精品国产综合久久久久久漫画| 欧美日韩在线播放三区四区| 精品国产91| 久久99久久久久久久噜噜| 精人妻一区二区三区| 91精品国产综合久久久久久| 久久中文免费视频| 综合激情国产一区| 免费高清特黄a大片| 日韩精品―中文字幕| 日韩欧美久久久| 视频一区中文字幕国产| 日韩欧美中文视频| 亚洲尤物av| 99久久精品国产亚洲| 精品av中文字幕在线毛片| 国产日韩精品久久久| 国产激情久久| 国产黄色在线| 国产香蕉精品视频| 国产欧美日韩久久| 国产在线视频不卡| h片精品在线观看| 欧美日韩久久久| 日韩精品一页| 亚洲乱码视频| xxxcom在线观看| 日韩欧美成人一区二区三区| 91精品在线免费观看| 精品免费久久久| 久久手机免费观看| 国产成人综合av| 99在线国产| 国产在线观看a| 欧美日韩亚洲综合| 一区在线播放视频| 色综合影院在线| av免费网站在线| 视频一区中文字幕国产| 日韩欧美一级在线| 国产高潮久久久| 精品视频资源站| 国产在线不卡一区| 欧美日韩夫妻久久| 日本黄色一区二区| 红桃视频亚洲| 黄污视频在线看| 久久99久久久欧美国产| 欧美日韩性视频| 日韩一级二级三级精品视频| 久久精品99久久久久久久久| 中文字幕日韩国产| 日本不卡高清视频一区| 国产永久在线观看| 狠狠色噜噜狠狠狠狠97| 日韩欧美中文字幕公布| 亚洲专区一二三| 国产欧美日韩三级| 日韩欧美在线综合| 欧美xxxx中国| 在线精品视频免费播放| 亚洲一区在线观看免费| wwwav在线播放| 91精品久久久久久久久久| 国产在线www| a在线观看免费视频| 在线国产99| www.尤物.com| 美女尤物久久精品| 日韩在线不卡| 亚洲福利精品视频| 国产一级免费看| 中文字幕欧美日韩| 欧美久久综合性欧美| 日韩在线欧美| 久久蜜桃精品| 天堂在线中文资源| 欧美日韩激情在线一区二区三区| 拍真实国产伦偷精品| 中文字幕 欧美日韩| 久久久精品免费免费| 91精品国产免费久久综合| 国产亚洲二区| 欧美日韩精品综合在线| 国产乱国产乱老熟300部视频| 国产亚洲视频中文字幕视频| 精品国产99久久久久久| 国产不卡一区二区在线观看| 日韩在线视频免费观看| 91精品免费观看| 精品色蜜蜜精品视频在线观看| 精品久久久精品| 国产手机视频一区二区| 日韩在线视频二区| 视频一区二区精品的福利| 亚洲第一网中文字幕| 亚洲乱码中文字幕| 久久久精品欧美| 中文字幕在线看视频国产欧美| 欧美日韩一区二区在线视频| 中文字幕亚洲一区在线观看| 精品日韩在线播放| 亚洲娇小xxxx欧美娇小| 精品三级久久| 在线欧美日韩国产| 久久中文免费视频| 亚洲大片免费看| 国产69精品久久久久孕妇国产69久久| 久久99精品久久久久久青青日本| 欧美日韩一区二区在线视频| 91精品国产综合久久久久| 中文字幕久精品免费视频| 国产嫩草影院久久久久| 亚洲国产欧美久久| 视频一区中文字幕国产| 国产在线播放一区二区| 日本а中文在线天堂| wwwav在线播放| 日韩视频国产视频| 亚洲va中文字幕| 中文字幕最新精品| 色一区在线观看| 中文字幕人成乱码在线观看| 国产在线高潮| 欧美中文字幕视频| 91精品国产自产在线| 91精品国产综合久久久久| 精品欧美不卡一区二区在线观看| 中文字幕亚洲免费| 欧美日韩国产中文| 亚亚洲欧洲精品| www日韩在线观看| 日韩你懂的电影在线观看| 日韩欧美在线中字| 91精品国产91久久久| 久久久久久欧美| www.久久草| 欧美日韩三级在线| 亚洲欧洲在线观看av| 亚洲欧洲三级| 欧美三级精品| 日韩亚洲欧美中文三级| 国产在线一在线二| 一区二区视频在线| 日韩中文字幕在线视频播放| 日韩精品乱码av一区二区| 欧美日韩国产高清一区| 国产一卡2卡3卡4卡网站免费| 亚洲一区不卡在线| 91欧美日韩麻豆精品| 亚洲一区在线观看免费| 欧美 日韩 国产 高清| 欧美日韩综合高清一区二区| 国产亚洲人成a一在线v站| 国产不卡的av| 国产欧美久久久久久久久| 久草视频观看| 国产日韩av一区二区| 欧美日韩精品在线视频| 欧美日韩国产免费| 欧美日韩国产综合视频在线观看| 欧美三级一区二区三区| 亚洲欧美中文字幕在线观看| 二区三区中文字幕| 天天综合色天天| www.精品av.com| 中文字幕亚洲国产| 91精品国产91久久久久久久久| 欧美日韩国产一二三| 国产免费久久久| 中文字幕精品亚洲| 天天综合天天做| 99日韩精品| 日韩av一区二区在线观看| 日韩免费精品视频| 中文字幕视频一区二区三区久| 999精品视频在线观看播放| 中文字幕亚洲二区| 免费视频二区| 中文字幕在线看精品乱码| 51精品免费网站| 午夜视频在线观看一区| 欧美日韩在线中文字幕| 91精品婷婷国产综合久久| 午夜国产在线视频| 中文字幕亚洲一区二区av在线| 中文字幕精品www乱入免费视频| 在线观看免费国产小视频| 日韩不卡在线播放| 欧美一级久久| 日韩在线观看视频一区二区| 日韩精品国产欧美| 日韩中文在线中文网三级| 欧美日韩中文字幕精品| 日韩美女中文字幕| 中文字幕第一页在线播放| 欧美在线日韩在线| 中文字幕 欧美 日韩| 视频一区二区不卡| 久精品在线观看| 欧美二区在线观看| 国产伦精品免费视频| 日本免费看黄| 日韩欧美国产免费播放| 99中文字幕一区| 91精品久久久久久久久| 在线观看一区| 日韩欧美国产1| 国产在线拍偷自揄拍精品| 中文在线日韩| 精品亚洲成a人片在线观看| 樱花草www在线| 日韩 国产 一区| 亚洲制服一区| 国产主播中文字幕| 国产三级在线播放| 日韩精品久久久| 日韩免费视频一区二区视频在线观看| 亚洲国产福利视频| 精品视频123区在线观看| 国产专区中文字幕| 国产欧美日韩综合| 欧美日韩中文字幕综合视频| 日韩久久精品视频| 久久久久蜜桃| 日韩精品视频免费在线观看| 中文字幕一区二区三区精品| 亚洲高清中文字幕| 精品国产乱码久久久久久蜜臀| 午夜国产欧美理论在线播放| 91精品国产自产| 天堂√8在线中文| 欧美日韩在线视频免费观看| 国产在线一区二区视频| 久久精品国产2020观看福利| 成人a在线视频免费观看| 婷婷久久综合九色国产成人| 日韩在线视频免费观看| 日韩精品三级| 日韩亚洲欧美中文高清在线| 久久韩国免费视频| 中文字幕精品www乱入免费视频| 一级免费a一片| 精品福利在线观看| 欧美日韩中文字幕一区| 日韩高清不卡一区二区| 日韩不卡av| 亚洲大片精品永久免费| 日韩不卡一区二区| 香蕉精品久久| 精品三级av| 一区二区高清在线| 国产日韩精品在线观看| 欧美日韩免费不卡视频一区二区三区| 欧美性极品xxxx做受| 欧美日韩在线播放视频| 一区二区不卡视频在线观看| 国产主播中文字幕| 国产香蕉免费精品视频| 日韩精品在线观看视频| 91精品国产综合久久久久久| 亚洲欧美中文字幕| 日韩视频1区| 国产高清在线一区| 中文字幕在线视频日韩| 国产小视频免费在线观看| 一级特黄大欧美久久久| 中文在线中文字幕| 婷婷中文字幕综合| 日韩欧美三级| 日韩免费视频一区二区| 国产69精品久久久久孕妇国产69久久| 中文字幕 日韩 欧美| 黄色片免费在线| 午夜影院在线观看欧美| 在线观看国产福利视频| 日韩精品视频免费| 拍真实国产伦偷精品| 日韩精品视频在线观看视频| 久久精品免费看| 国产拍揄自揄精品视频麻豆| 91久久精品在线| 日韩精品免费视频一区二区三区| 亚洲免费在线视频一区 二区| 亚洲综合在线小说| 天天综合天天综合|