一道简单的汇编问题
来源:百度知道 编辑:UC知道 时间:2024/05/16 17:04:35
MOV CL,4
MOV AX,8103H
MOV DX,248AH
ROL DX,CL
MOV BH,AH
SAR BH,CL
OR DL,BH
我的答案为48AAH,可是答案为48FAH,不知道哪错了?
MOV CL,4
MOV AX,8103H
MOV DX,248AH
ROL DX,CL ;dx=48a2h
MOV BH,AH ;bh=81h
SAR BH,CL ;bh=18h cf=1
OR DL,BH ;dl=bah
结果是48bah
我也不知道哪错了??
补充:上面的到最后一步:
“OR DL,BH---------------DL和BH或运算 ”
“DL=FAH ”?
算过没有?
运算结果48FAH
ROL DX,CL-----------------循环右移4位
后移之前:DX=0010,0100,1000,1010
右移之后:DX=0100,1000,1010,0010=48A2H
MOV BH,AH ---------------BH=AH=81H
SAR BH,CL ---------------逻辑左移4位
左移之前:BH=1000,0001
左移之后:BH=0001,1000=18H
OR DL,BH---------------DL和BH或运算
DL=FAH
DX=48FAH
电脑实际执行结果在此,不用多说什么了吧?
0B1C:0100 B104 MOV CL,04
AX=0000 BX=0000 CX=0004 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=0B1C ES=0B1C SS=0B1C CS=0B1C IP=0102 NV UP EI PL NZ NA PO NC
0B1C:0102 B80381 MOV AX,8103
AX=8103 BX=0000 CX=0004 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=0B1C ES=