日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

16位汇编第第四讲常用的7种寻址方式

發布時間:2024/4/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 16位汇编第第四讲常用的7种寻址方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

常用的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 操作碼和操作數

存儲器尋址方式

  • 8086設計了多種存儲器尋址方式

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/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

?

轉載于:https://www.cnblogs.com/iBinary/p/7456301.html

總結

以上是生活随笔為你收集整理的16位汇编第第四讲常用的7种寻址方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。