设BX=6D16H,AX=1100H,下列三条指令执行后,AX和BX寄存器中的内容是 。 MOV CL , 06H ROL AX , CL SHR BX , CL
时间: 2023-12-03 15:46:02 浏览: 154
执行完指令 MOV CL, 06H 后,CL的值为06H。
执行指令 ROL AX, CL 后,将AX寄存器中的值向左循环移位6次。移位后的结果为:
1100H -> 1001 1000 0000B
因为移位时,最高位被移动到了最低位,所以移位后的结果为1001 1000 0000B,转换为16进制就是 980H。
执行指令 SHR BX, CL 后,将BX寄存器中的值向右移位6次。移位后的结果为:
6D16H -> 0000 0110 1101 0001B
因为移位时,最低位被移动到了最高位,所以移位后的结果为0000 0001 1011 0100B,转换为16进制就是 1B4H。
因此,执行完这三条指令后,AX寄存器中的值为980H,BX寄存器中的值为1B4H。
相关问题
试写出执行以下指令序列后BX寄存器1 BX)= 6D16H。 MOV CL,7 SHR BX,CL
执行指令序列后,BX寄存器的值为6D16H,即十进制的27926。下面是指令的执行过程:
- MOV CL,7:将7赋值给CL寄存器,即CL=7。
- SHR BX,CL:将BX寄存器的值右移7位。移位后,BX的值为27926H/2^7=218H,即十进制的536。
因此,执行指令序列后,BX寄存器的值为536。
设(BX) =0100H,(SI) =0002H,(0100H) =1200H, (0102H)=A5C2H,(1200H) =2000H, , 试 说明下列各条指令执行完后 AX 寄存器中的内容是多少? (10 分) ①MOV AX,1200H ②MOV AX,BX ③MOV AX,(BX) ④MOV AX,(BX)(SI)
执行完上述四条指令后,AX寄存器中的内容分别是:
① MOV AX,1200H:AX=1200H ② MOV AX,BX:AX=0100H ③ MOV AX,(BX):AX=2000H ④ MOV AX,(BX)(SI):AX=A5C2H
解释如下:
① MOV AX,1200H:直接将立即数1200H移动到AX寄存器中。
② MOV AX,BX:将BX寄存器中的内容(0100H)移动到AX寄存器中。
③ MOV AX,(BX):将以BX寄存器中的内容(0100H)为地址,访问内存中的数据(1200H),并将其移动到AX寄存器中。
④ MOV AX,(BX)(SI):将以(BX+SI)为地址,访问内存中的数据(A5C2H),并将其移动到AX寄存器中。其中,(BX+SI)=(0100H+0002H)=0102H,即以0102H为地址访问内存中的数据A5C2H。
阅读全文
相关推荐














