七种寻址方式(直接寻址方式)
来源:互联网 发布时间:2018-07-17
分享至微信

指令所要的操作数存放在内存中,在指令中直接给出该操作数的有效地址,这种寻址方式为直接寻址方式。
在通常情况下,操作数存放在数据段中,所以,其物理地址将由数据段寄存器DS和指令中给出的有效地址直接形成,但如果使用段超越前缀,那么,操作数可存放在其它段。
例:假设有指令:MOV BX, [1234H],在执行时,(DS)=2000H,内存单元21234H的值为5213H。问该指令执行后,BX的值是什么?
解:根据直接寻址方式的寻址规则,把该指令的具体执行过程用下图来表示。
从图中,可看出执行该指令要分三部分:
访问数据段的段寄存器是DS,所以,用DS的值和偏移量1234H相加,得存储单元的物理地址:21234H;
取单元21234H的值5213H,并按“高高低低”的原则存入寄存器BX中。
所以,在执行该指令后,BX的值就为5213H。
由于数据段的段寄存器默认为DS,如果要指定访问其它段内的数据,可在指令中用段前缀的方式显式地书写出来。
下面指令的目标操作数就是带有段前缀的直接寻址方式。
MOV ES:[1000H], AX
直接寻址方式常用于处理内存单元的数据,其操作数是内存变量的值,该寻址方式可在64K字节的段内进行寻址。
注意:立即寻址方式和直接寻址方式的书写格式的不同,直接寻址的地址要写在括号“[”,“]”内。在程序中,直接地址通常用内存变量名来表示,如:MOV BX, VARW,其中,VARW是内存字变量。
试比较下列指令中源操作数的寻址方式(VARW是内存字变量):
MOV AX, 1234H MOV AX, [1234H] ;前者是立即寻址,后者是直接寻址
MOV AX, VARW MOV AX, [VARW] ;两者是等效的,均为直接寻址
[ 新闻来源:互联网,更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj]
存入云盘 收藏
举报
全部评论
暂无评论哦,快来评论一下吧!


互联网
开创IC领域,共创美好未来!
查看更多
相关文章
特斯拉无意在印度设厂,将通过进口方式进入市场
2025-06-05
光莆股份调整海外项目实施方式并延长工期
2025-05-29
三星研发新型Peltier冷却技术,或改变传统制冷方式
2025-05-28
苹果系统命名大改:iOS 19直接升级为iOS 26
2025-05-29
索菱股份:暂未与比亚迪等车企直接合作
2025-05-29
热门搜索