资源描述:
《MOV指令的基本知识》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MOV指令,能实现以下操作:①CPU内部寄存器之间数据的任意传送(除了码段寄存器CS和指令指针IP以外)。②立即数传送至CPU内部的通用寄存器组(即AX、BX、CX、DX、BP、SP、SI、DI),给这些寄存器赋初值。③CPU内部寄存器(除了CS和IP以外)与存储器(所有寻址方式)之间的数据传送,可以实现一个字节或一个字的传送。④能实现用立即数给存储单元赋初值。立即数传送MOVCL,4;CL←4,字节传送MOVDX,0FFH;DX←00FFH,字传送MOVSI,200H;SI←0200H,字传送MOVBVAR,0A
2、H;字节传送;假设BVAR是一个字节变量,定义如下:BVARDB0MOVWVAR,0BH;字传送;假设wvar是一个字变量,定义如下:wvardw0寄存器传送movah,al;ah←al,字节传送movbvar,ch;bvar←ch,字节传送movax,bx;ax←bx,字传送movds,ax;ds←ax,字传送mov[bx],al;[bx]←al,字节传送存储器传送moval,[bx];al←ds:[bx]movdx,[bp];dx←ss:[bp+0]movdx,[bp+4];dx←ss:[bp+4]moves,
3、[si];es←ds:[si]段寄存器传送MOV[SI],DSMOVAX,DS;AX←DSMOVES,AX;ES←AX←DS注意:MOV指令不能在两个存储器之间进行数据直接传送。MOV指令不能在两个段寄存器之间进行数据直接传送。立即数不能直接传送给段寄存器。目的操作数不能为CS和IP。其中(1)、(2)的传送可用通用寄存器作为中介,用两条传送指令;例:MOVAL,AREA1MOVAREA2,AL非法指令的主要现象:两个操作数的类型不一致无法确定是字节量还是字量操作两个操作数都是存储器段寄存器的操作有一些限制①目的操
4、作数不能是立即寻址方式。②源操作数与目的操作数不能同时为存储器寻址方式,即两个内存单元之间不能直接传送数据。③立即数不能直接送段寄存器,即段寄存器只能通过寄存器或存储单元传送数据。④两个段寄存器之间不允许直接传送数据。⑤不允许给CS、IP、PSW三个寄存器传送数据,即这3个寄存器的值用户无权改变。⑥源操作数和目的操作数必须字长相等。⑦MOV指令不影响标志位。交换指令通用寄存器与通用寄存器之间交换通用寄存器与累加器之间交换通用寄存器或存储器之间交换注意:不能在两存储单元之间交换,段寄存器与指令指针IP也不能作为一个源
5、或目标操作数。数据传送指令源、目操作数长度必须一致。源、目操作数不能同时是存储器操作数。源、目操作数不能同时是段寄存器。立即数和代码段寄存器CS不能作目操作数。当目操作数是段寄存器时,源操作数不能是立即数。可以使用段寄存器的指令:MOV、PUSH、POP。除SAHF、POPF指令外,其它数传指令的执行不影响标志位。第五章最小组态和最大组态的比较1)不同之处最小模式下系统控制信号直接由8086提供;最大模式下因系统复杂,芯片数量较多,为提高驱动能力和改善总线控制能力,大多数的系统控制信号由总线控制器8288提供最小模
6、式下8086的31、30脚提供一组总线请求/响应信号(HOLD、HLDA),而最大模式下8086的31、30脚将提供两组总线请求/响应信号(RQ/GT0、RQ/GT1)。2)相同之处: 8086的低位地址线与数据线复用,为保证地址信号维持足够的时间,需使用ALE信号将低位地址线锁存(通过锁存器8282),以形成真正的系统地址总线;8086的数据线通过数据收发器8286后形成系统数据总线,以增大驱动能力,数据收发器主要由DEN和DT/R两个信号控制。1.最小模式下的读操作CPU从存储器或外设端口读取数据T1状态用M
7、/IO指出CPU访问内存还是I/O端口。在整个读总线周期保持有效。地址锁存:输出20位物理地址;ALE输出地址锁存有效信号;输出高八位数据是否有效信号若接总线收发器,则DT/R输出“0”。在整个读总线周期保持有效。T2状态地址信号撤消AD15~AD0高阻;A19/S6~A15/S3输出状态信息S6~S3;输出状态信息S7(无意义).由RD输出读有效信号接有总线收发器时,DEN输出有效信号,数据允许T3状态:数据送到数据总线T4状态:在T4状态和前一个状态交界的下降沿处,CPU采样数据总线,获得数据。2.最小模式下的
8、写操作T1状态1、用M/IO指出CPU访问内存还是I/O端口。在整个写总线周期保持有效。2、地址锁存:输出20位物理地址;ALE输出地址锁存有效信号;输出高八位数据是否有效信号。3、若接总线收发器,则DT/输出“1”。在整个写总线周期保持。T2状态1、AD15~AD0由地址切换到数据,并一直保持到T4。A19/S6~A15/S3由地址切换到状态信息S6~S3