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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

汇编的8种寻址方式,以及2个默认段寄存器

發布時間:2025/6/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汇编的8种寻址方式,以及2个默认段寄存器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

16位CPU所含有的寄存器有(見圖2.1中16位寄存器部分):
4個數據寄存器(AX、BX、CX和DX)
2個變址和指針寄存器(SI和DI) 2個指針寄存器(SP和BP) ,32位CPU增加2個16位的段寄存器:FS和GS。
4個段寄存器(ES、CS、SS和DS)
1個指令指針寄存器(IP) 1個標志寄存器(Flags)
一共14個寄存器,或者16個

?

?

16位CPU內部有20根地址線,其編碼區間為:0000H~FFFFFH,所以,它可直接訪問的物理空間為1M(220)字節。
如果用16位寄存器來訪問內存的話,則只能訪問內存的最低端的64K,其它的內存將無法訪問。為了能用16位寄存器來有效地訪問1M的存儲空間,16位CPU采用了內存分段的管理模式,并引用段寄存器的概念。
個人猜測:堆棧有1M的限制,是不是因為這個歷史原因?

?

物理地址PA=段地址×16 + 偏移量(Offset)
有效地址EA=Effective Address(段內偏移)

?

CS:IP 段寄存器CS指向存放程序的內存段,IP是用來存放下條待執行的指令在該段的偏移量,把它們合在一起可在該內存段內取到下次要執行的指令。
SS:SP 段寄存器SS指向用于堆棧的內存段,SP是用來指向該堆棧的棧頂,把它們合在一起可訪問棧頂單元。另外,當偏移量用到了指針寄存器BP,則其缺省的段寄存器也是SS,并且用BP可訪問整個堆棧,不僅僅是只訪問棧頂。
DS:ALL 段寄存器DS指向數據段,ES指向附加段,在存取操作數時,二者之一和一個偏移量合并就可得到存儲單元的物理地址。該偏移量可以是具體數值、符號地址和指針寄存器的值等之一,具體情況將由指令的尋址方式來決定。
ES:DI 在進行串操作時,其目的地址的段寄存器規定為ES
總結:程序頻繁訪問的數據段用DS來指向,不太經常訪問的數據段可用ES、FS和GS等來指向。

?

1.立即尋址方式 MOV AH, 80H(直接給寄存器賦值)
2. 寄存器尋址方式(源或者目的有一個是寄存器)
2.1) 源操作數是寄存器尋址方式
如:ADD VARD, EAX  ADD VARW, AX   MOV VARB, BH等。
其中:VARD、VARW和VARB是雙字,字和字節類型的內存變量。
2.2) 目的操作數是寄存器尋址方式
如:ADD BH, 78h    ADD AX, 1234h   MOV EBX, 12345678H等。
2.3) 源和目的操作數都是寄存器尋址方式
如:MOV EAX, EBX   MOV AX, BX     MOV DH, BL等。
3. 直接尋址方式(地址值在括號里)
MOV BX, [1234H] (默認使用DS)
MOV ES:[1000H], AX
4. 寄存器間接尋址方式(寄存器在括號里)
MOV BX,[DI]
操作數的有效地址用SI、DI、BX和BP等四個寄存器之一來指定,稱這種尋址方式為寄存器間接尋址方式。
若有效地址用SI、DI和BX來指定,則其缺省的段寄存器為DS;
若有效地址用BP來指定,則其缺省的段寄存器為SS(即:堆棧段)。
5. 寄存器相對尋址方式(一個寄存器和一個立即數在括號里,并且還要計算)
MOV BX, [SI+100H]
6. 基址加變址尋址方式(兩個寄存器在括號里,并且還要計算)
MOV BX, [BX+SI]
7. 相對基址加變址尋址方式(兩個寄存器在括號里和一個立即數在括號里,并且還要計算)
MOV AX, [BX+SI+200H]

幾個例子:
例子1. MOV BX, [SI+100H]
尋址路線為:
PA=(DS)*16+(SI)+100H

例子2. MOV BX, [BX+SI]
尋址路線為:
PA=(DS)*16+=(BX)+(SI)

例子3. MOV AX, [BX+SI+200H]
尋址路線為:
PA=(DS)*16+(BX)+(SI)+200H

取數據的規則:高高低低
比如內存單元12445H的Byte值為15H,12446的Byte內容為27H,那么12445的Word值為2715H,而BX的值也是2715.
注:為了簡化理解,低地址在上面,高地址在下面(所謂向下生長)。與堆棧模型一致,參考:
http://www.cnblogs.com/findumars/archive/2012/10/28/2743121.html

8. 32位地址的尋址方式
在用16位寄存器來訪問存儲單元時,只能使用基地址寄存器(BX和BP)和變址寄存器(SI和DI)來作為地址偏移量的一部分。
但在用32位寄存器尋址時,不存在上述限制:
32位基址寄存器是:EAX、EBX、ECX、EDX、ESI、EDI、EBP和ESP;
32位變址寄存器是:EAX、EBX、ECX、EDX、ESI、EDI和EBP(除ESP之外)。
計算公式:基址寄存器+變址寄存器+比例因子+偏移常量。
段寄存器的判斷與使用:
1)地址中寄存器的書寫順序決定該寄存器是基址寄存器,還是變址寄存器,例如:
[EBX+EBP]中的EBX是基址寄存器,EBP是變址寄存器。
[EBP+EBX]中的EBP是基址寄存器,EBX是變址寄存器。
2)基址寄存器是EBP或ESP時,默認的段寄存器是SS,否則,默認的段寄存器是DS,例如:
MOV AX, [123456H] ;默認段寄存器DS
MOV EAX, [EBX+EBP] ;默認段寄存器DS
MOV EBX, [EAX+100H] ;默認段寄存器DS
MOV EBX, [EBP+EBX] ;默認段寄存器SS
MOV [ESP+EDX*2], AX ;默認段寄存器SS
MOV AX, [ESP] ;默認段寄存器SS
3)在指令中,如果使用段前綴的方式,那么,顯式段寄存器優先。
MOV EDX, ES:[EAX*4+200H] ;顯式段寄存器ES
MOV EBX, GS:[EAX+EDX*2+300H] ;顯式段寄存器GS

為了明確指令中存儲單元的屬性,可把指令“MOV [BX], 1H”可改寫成:
MOV byte ptr [BX], 1H   或  MOV word ptr [BX], 1H

一個字節的內容是該字節單元內存放的二進制信息;
一個字的內容是該字地址所指向的單元及其后繼一個單元的內容拼接而成;
一個雙字的內容是該字地址所指向的單元及其后繼三個單元的內容拼接而成。

總結

以上是生活随笔為你收集整理的汇编的8种寻址方式,以及2个默认段寄存器的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 黄色字幕网 | 亚洲精品乱码久久久久久蜜桃不卡 | 久久性感视频 | 欧美一卡二卡在线观看 | 一区二区xxx | 一区二区三区视频在线免费观看 | 蜜桃免费在线视频 | 十大污网站 | 高柳家在线观看 | 在线a毛片 | 大尺度床戏揉捏胸视频 | 久一视频在线 | 色臀av| 国产女人叫床高潮大片免费 | 久久艹在线观看 | 免费操片 | 国产精品九色 | 牛牛av在线 | 欧美jizz18性欧美 | 67194少妇| 偷拍亚洲精品 | 91精品91久久久中77777 | 99青青草 | 男人亚洲天堂 | 国产精品久久av无码一区二区 | 91视频论坛 | www.国产麻豆 | 欧美怡红院视频一区二区三区 | 在线观看国产一区 | 美女洗澡无遮挡 | 国产亚洲精品码 | 亚洲精品电影 | 国产a自拍| 亚洲av女人18毛片水真多 | 欧洲做受高潮免费看 | 五月婷婷在线视频 | av看片网站 | 国产视频久久久 | 免费看污的网站 | 亚洲精品视频一区 | 成人免费超碰 | 精品国产乱码久久久久久蜜柚 | 五月网站 | 久久四虎 | 中日韩精品一区二区三区 | 男女毛片视频 | 中文人妻熟妇乱又伦精品 | h在线免费| 巨骚综合 | 假日游船 | 欧美日韩综合一区二区 | 一区二区高清在线 | julia一区二区三区中文字幕 | 免费无码一区二区三区 | 污站在线观看 | 极品美女扒开粉嫩小泬 | 国精品一区| 日韩人妻无码一区二区三区99 | 国产无码日韩精品 | 中国美女洗澡免费看网站 | 操丝袜美女视频 | 一区二区日韩精品 | 欧美日韩3p | 日韩精品免费一区二区夜夜嗨 | 狠狠干在线 | 亚洲AV无码成人精品区先锋 | 精品美女久久久 | www久久久久久久 | 天天射天天干天天操 | jzzijzzij亚洲成熟少妇18 欧美www在线观看 | av网站在线观看免费 | 欧美经典一区二区三区 | 国产精品一区二三区 | 婷婷色网| 美国美女群体交乱 | 国产人妻人伦精品1国产盗摄 | 国产精品三级电影 | 中国久久 | 天天操天天爱天天干 | 狠狠操网 | 国产精品高清无码在线观看 | 免费看片网站91 | 日韩大片免费在线观看 | 青青草久久伊人 | ww欧美| 一区二区三区欧美日韩 | 成人国产精品入口免费视频 | 欧美久久久久久又粗又大 | 午夜肉伦伦影院 | 日韩精品一区二区三区四区 | 久久久久久婷婷 | 黄色在线播放网站 | www.三级| 青青草视频免费看 | 国产一区二区三区免费播放 | 日本韩国欧美一区二区三区 | 亚洲二区中文字幕 | 人人澡人人看 | 国产av成人一区二区三区 |