汇编语言将双字(DX,AX)左移4 位

a100

mov cl,04;cl=4

shl dx,cl;dx左移四位,如果dx=8765,那就挤掉8,=8760

mov bx,0000;bx寄存器清零

mov bl,ah;ax的高八位给bx的低八位

shr bx,cl;bx右移四位,导致ax的高八位只剩高四位,也就是如果ax=4321,那么本来转过去的43只剩4,达到目的

and dl,f0;dx的第八位的后四位清零

add dl,bl;把bl给dl,效果就是di:xxxx0000+0000yyyy

shl ax,cl;成功把数转过去了,ax就可以左移四位了

int 3;结束

 

r ax

4321

r dx

8765

附图

运行前 dx=8765  ax=4321 运行后 dx=7654  ax=3210

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部