在微机原理中,什么不能当源操作数,什么不能当目的操作数?
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/15 07:53:19
在微机原理中,什么不能当源操作数,什么不能当目的操作数?
求高手解答,尽量详细一点,谢谢
求高手解答,尽量详细一点,谢谢
问的比较笼统,要针对具体的指令.
对于MOV指令而言:
CS、IP、标志寄存器FLAG都不能直接作为目标操作数,立即数由于不是存储单元(也就是“容器”),所以任何时候都不能作为目的操作数,两个内存单元不可以直接传递数据(可以通过CPU寄存器间接中转).针对源操作数的限制则比较少,除了不可寻址的寄存器IP、FLAG(这两个寄存器任何时候不可以单独出现在指令中),其他的都可以作为源操作数(如MOV AX,CS就是合法指令),只是要注意源和目的操作数类型的匹配(同为字节或同为字,不允许字节对字的传送,如MOV AL,BX指令就是非法指令)
上述针对MOV指令的限制则可以通过其他指令解决,比如CS和IP可以通过控制转移指令间接修改,如JMP、CALL指令就是通过修改CS和IP实现程序转移的,FLAG寄存器可以使用PUSHF和POPF指令借助堆栈间接读取或修改.多个内存单元对多个内存单元的传输可以通过串操作指令(MOVSB、MOVSW)来进行.
简单说这么多吧,供参考,仍有问题可以再交流.
对于MOV指令而言:
CS、IP、标志寄存器FLAG都不能直接作为目标操作数,立即数由于不是存储单元(也就是“容器”),所以任何时候都不能作为目的操作数,两个内存单元不可以直接传递数据(可以通过CPU寄存器间接中转).针对源操作数的限制则比较少,除了不可寻址的寄存器IP、FLAG(这两个寄存器任何时候不可以单独出现在指令中),其他的都可以作为源操作数(如MOV AX,CS就是合法指令),只是要注意源和目的操作数类型的匹配(同为字节或同为字,不允许字节对字的传送,如MOV AL,BX指令就是非法指令)
上述针对MOV指令的限制则可以通过其他指令解决,比如CS和IP可以通过控制转移指令间接修改,如JMP、CALL指令就是通过修改CS和IP实现程序转移的,FLAG寄存器可以使用PUSHF和POPF指令借助堆栈间接读取或修改.多个内存单元对多个内存单元的传输可以通过串操作指令(MOVSB、MOVSW)来进行.
简单说这么多吧,供参考,仍有问题可以再交流.
分别指出下列指令中源操作数和目的操作数的寻址方式
指出下列指令中源操作数和目的操作数的寻址方法
在太空中不能进行什么物理操作?在初中范围.想归纳一下.
微机原理,操作数寻址问题:MOV [BX+10H],2050 和MOV [SI],BX
下列家庭实验的方法或操作中,不能达到实验目的的是
百分数不能代表什么数
要想让目的基因与运载体连接起来,在基因操作中应选用什么
微机原理中状态AF什么意思
传送指令中原操作数和目的操作数可以同时使用@符号吗
汇编语言mov 【ax+2】,bx的目的操作数地址
电子表格中两个数相乘如何操作
指数函数有意义的范围当n为偶数时中a的范围为什么是a>0 为什么不能等于0?是不是当a=0时,无论n取什么数,的值恒等于