16位彙編第第四講常用的7種定址方式

2022-03-20 21:02:20 字數 2908 閱讀 1347

常用的7中定址方式

昨天稍微講了一下,立即數定址,今天繼續講解定址方式.

(注意,這個屬於簡陋版的,寫了4個小時的部落格,也就是第一版,儲存了一下,但是部落格出問題了,重新開啟後發現儲存的內容沒了,讓我很無語

所以我星期六星期天重新編輯這一張,現在發出這些先簡單的預習一下謝謝)

1.操作碼,運算元,位移量,立即數的概念

8086的定址方式,這個定址方式是什麼意思,是讓我們書序8086彙編指令的格式,

尤其是其中的運算元的表達方法

操作碼: mov add ....等指令,暫時就先把這些認定為mov即可.後面會一一講解指令

運算元, 例如 mov ax,1234 那麼運算元就是 ax,和 1234 其中 1234成為源運算元,ax成為目標運算元

為什麼這樣說,因為我們要把源運算元 通過 mov 傳送指令, 傳送給 目標運算元ax

對於運算元而言

1.運算元可以是乙個具體的值(也就是 立即數,其中立即數是後面翻譯過來的,叫做(imm縮寫))

2.運算元可以是存放資料的暫存器(上面也說了, ax目的地運算元)

3.運算元可以是儲存器的位址(怎麼理解,可以理解為 mov ax,[2000])可以是乙個位址

常用的7中定址方式

昨天稍微講了一下,立即數定址,今天繼續講解定址方式.

1.操作碼,運算元,位移量,立即數的概念

8086的定址方式,這個定址方式是什麼意思,是讓我們書序8086彙編指令的格式,

尤其是其中的運算元的表達方法

操作碼: mov add ....等指令,暫時就先把這些認定為mov即可.後面會一一講解指令

運算元, 例如 mov ax,1234 那麼運算元就是 ax,和 1234 其中 1234成為源運算元,ax成為目標運算元

為什麼這樣說,因為我們要把源運算元 通過 mov 傳送指令, 傳送給 目標運算元ax

對於運算元而言

1.運算元可以是乙個具體的值(也就是 立即數,其中立即數是後面翻譯過來的,叫做(imm縮寫))

2.運算元可以是存放資料的暫存器(上面也說了, ax目的地運算元)

3.運算元可以是儲存器的位址(怎麼理解,可以理解為 mov ax,[2000])可以是乙個位址

立即定址

mov ax,2000h

格式是:

操作碼  立即數

操作碼則是mov  立即數就是後面的數

暫存器定址方式

mov ax,1234h

mov bx,ax

機器**格式

操作碼89 操作碼和運算元

儲存器定址方式

1、直接定址方式

2、暫存器間接定址方式

3、暫存器相對定址方式

4、基址變址定址方式

5、相對基址變址定址方式

五種定址方式,加上上面兩種總共其中

直接定址方式

mov ax,[2000h]

反彙編:

機器**格式

操作碼 立即數

a1         0020

暫存器間接定址方式

有效位址存放在基址暫存器bx或變址暫存器si、di中

預設的段位址在ds段暫存器,可使用段超越字首改變

mov ax,[si] ;ax←ds:[si]

機器碼格式

操作碼 定址方式,目的暫存器

8b 04

04拆分為二進位制為  0000 0100 00(定址方式) 000(目的暫存器) 100 (源運算元)

可以對應下方的**

查詢 (mod 定址方式 )

由此得出源運算元是si

暫存器相對定址

有效位址是暫存器內容與有符號8位或16位位移量之和,暫存器可以是bx、bp或si、di

有效位址=bx/bp/si/di+8/16位位移量

段位址對應bx/si/di暫存器預設是ds,對應bp暫存器預設是ss;可用段超越字首改變

mov ax,[di +  06h]兩種不同的形式,如過06是8位的話那麼定址方式是不同的.

操作碼  定址方式/目標暫存器/源運算元    位移量

8b         45                                          06

45 得出定址方式目的暫存器,和源運算元

01 000  101

代表了di 要加乙個8位的偏移量即可.

基址變址定址方式

有效位址=bx/bp+si/di

段位址對應bx基址暫存器預設是ds,對應bp基址暫存器預設是ss;可用段超越字首改變

mov ax,[bx+si] 基址暫存器(bx bp) 變址暫存器(si di)

操作碼 定址指令/目標暫存器,源運算元

8b        00

基址變址,相對定址

mov ax,[bx + si +06h]

操作碼 定址公式/目標暫存器/源運算元  位偏移

8b           40                                    06

拆分40得出 0100 0000 

表示bx + si 還需要家後面的8位偏移量6

第四講 Linux常用命令

二 檔案處理命令 三 許可權處理命令 1 許可權管理命令 chown 四 檔案搜尋命令 五 幫助命令 六 使用者管理命令 七 壓縮和解壓命令 八 網路命令 九 關機重啟命令 命令 選項 引數 方括號裡為可選項 例如 ls la etc 幾點說明 個別命令使用不遵循此格式 當有多個選項時,可以寫在一起...

2019 0405視覺SLAM的學習第四講

指數與對數對映 李代數求導與擾動模型 實踐 sophus 總結及資源獲取 特殊正交群so 3 三維旋轉矩陣構成的集合 特殊歐式群se 3 三維變換矩陣構成的集合 由於他們之間的運算只支援乘法,準確點說,就是只有他們自身之間的乘積才仍然屬於這個so,或者se,即 我們把這種只有一種閉合運算的集合稱為群...

第四講 Python的基礎資料型別

作業數值型別 序列型別 結合型別 set 對映型別 dict 整數記憶體 python 的整數長度為32位,並且通常是連續分配記憶體空間的。小整數物件池 python 初始化的時候會自動建立乙個小整數物件池,方便我們呼叫,避免後期重複生成!這是乙個包含262個指向整數物件的指標陣列,範圍是 5到25...