汇编语言检测点2.1
建议先自己思考问题的答案,不懂则返回看书
初学者建议多熟练使用DOSBox,在DOSBox中多多练习
1.相关寄存器的值在DOSBox中单步运行即可得到最正确的答案
mov ax,62627 ;AX=F4A3H
mov ah,31H ;AX=31A3H
mov al,23H ;AX=3123H
add ax,ax ;AX=AX+AX=6246H
mov bx,826CH ;BX=826CH
mov cx,ax ;CX=AX=6246H
mov ax,bx ;AX=BX=826CH
add ax,bx ;AX=04D8H,ax+bx=104D8H,但是AX只有四位H
mov al,bh ;AX=0482H,bh=82H,al=bh=82H,ah=04不变
mov ah,bl ;AX=6C82H
add ah,ah ;AX=D882H ,ah=ah+ah=D8H
add al,6 ;AX=D888H
add al,al ;AX=D810H ,88H+88H=110H,但是al=10H
mov ax,cx ;AX=cx=6246H
2.用四条指令编写2的4次方(乘法在目前只能用add来实现了)
mov ax,2 ;得到ax=2
add ax,ax ;得到ax=4
add ax,ax ;得到ax=8
add ax,ax ;得到ax=16