三级PC技术寻址方式的复习 (3)
发布时间:2006-06-27 23:33
点击:
三、直接寻址
在直接寻址方式中,操作数的偏移地址(EA)是指令的一部分,它与操作码一起存放在代码段中,而操作数可以存放在数据段,也可以存放在其他段。操作数的物理地址(PA)由其所在段的段寄存器内容左移4位与指令中给出的偏移地址(EA)相加形成。
汇编格式:含有变量的地址表达式或段寄存器名:[EA]
功能:指令下一字单元的内容是操作数的偏移地址EA。
PA=(段寄存器)×10H+EA
直接寻址的寻址方式如图所示:
这种寻址方式和前两种的最大的区别就是:指令执行时需要再存取存储器,也就是存取操作数时需要访问内存,而前两种寻址方式存取操作数时不需要访问内存。
例:2003.4三级PC考题
若有BUF DW 1、2、3、4,则可将数据02H取到AL寄存器中的指令是
(A)MOV AL, BYTE PTR[BUF+1]
(B)MOV AL, BYTE PTR[BUF+2]
(C)MOV AL, BYTE PTR [BUF+3]
(D)MOV AL,BUF[2]
答案:B
分配示意图:
分析:根据数据定义伪指令BUF DW 1、2、3、4画出内存分配示意图,在存储单元相应位置标出变量名和EA。答案D中目的操作数AL的类型为字节,而源操作数BUF[2]前无BYTEPTR,则BUF[2]类型为字,两个操作数的类型不一致,指令是错误的,因此答案D可排除。变量BUF的EA为0,数据02H在内存中的EA为2。答案ABC中指令的源操作数都是直接寻址,而只有[BUF+2]的EA为2,所以选B。
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
|
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
|