彙編第二章--基礎知識梳理與總結

來源:互聯網
上載者:User

標籤:知識梳理   ima   原理   程式設計   工作   image   png   物理   使用   

第一章,我們介紹了有關組合語言的基礎知識,在第二章我們主要介紹寄存器。

CPU的主要組件是寄存器,在8086CPU有14個寄存器,它們分別是:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。8086CPU的所有寄存器都是16位的,可以存放兩個位元組。AX、BX、CX、DX這4個寄存器通常用來存放一般性的資料,稱為通用寄存器。由於8086CPU的上一代CPU中的寄存器都是8位的,為了保持相容,8086CPU的AX、BX、CX、DX這4個寄存器都可分為兩個獨立使用的8位寄存器:

?AX可分為AH和AL  ?BX可分為BH和BL  ?CX可分為CH和CL  ?DX可分為DH和DL 

出於相容性的問題,8086CPU可以處理兩種尺寸的資料:

位元組:記為byte,一個位元組由8個bit組成,可以存放在8位寄存器中

字:記為word,由兩個位元組組成,這兩個位元組分別被稱為高位位元組和低位位元組

 

通過彙編指令控制CPU進行工作:

在寫一條彙編指令或一個寄存器的名稱時不區分大小寫。

CPU執行程式段中的每條指令後,對寄存器中的資料的改變:

程式段中的最後一條指令add ax,bx,在執行前ax和bx中的資料為8226H,相加後的資料為:1044CH,但是ax為16位的寄存器,只能存放4位十六進位的資料,所以最高位的1不能在ax中儲存,ax中的資料為:044CH,最高位的1並不是捨去了,而是存在了其他位置,隨著我們對組合語言的慢慢深入,就會體會到程式設計師的聰明與機智。

注意:ax分出的兩個獨立的寄存器ah與al,它們是毫無關聯的,不要誤認為al的資料相加後超出的位元存放在ah中!

每一個記憶體單元都有唯一的地址,稱為物理地址。

16位結構的8086CPU:

1.運算器一次最多可以處理16位的資料。

2.寄存器的最大寬度為16位。

3.寄存器和運算器之間的通路為16位。

8086CPU有20位地址匯流排,可以達到1MB的定址能力,那它怎麼用16位地址來達成20位物理地址的呢?

8086CPU採用在內部用兩個16位地址合成的方法來形容一個20位的物理地址。

邏輯結構:

地址加法器採用:物理地址=段地址*16+位移地址的方法進行合成

“物理地址=段地址*16+位移地址”本質含義:CPU在訪問記憶體時,用一個基礎地址(段地址*16)和一個相對於基礎地址的位移地址相加,給出記憶體單元的物理地址。

段的概念:每一個段有一個段地址,但是記憶體並不是被劃分成一段一段的,而是由於CPU進行劃分。

由於16位地址的定址能力是64KB,所以一個段的最大長度為64KB,並且段的起始地址一定是16的倍數,變化範圍為0~ffffH。

8086CPU有4個段寄存器:CS,DS,SS,ES。

CS和IP是8086CPU中兩個最關鍵的寄存器,CS為程式碼片段寄存器,IP為指令指標寄存器。

8086CPU讀取、執行的工作原理:

CS和IP的值是可以修改的:IP每次是根據指令的空間大小進行更新。

簡單的修改CS、IP的指令:jmp指令。

①同時修改CS、IP的內容:jmp段地址:位移地址

②只修改IP的內容:jmp 某一合法寄存器

 

彙編第二章--基礎知識梳理與總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.