一道小小的汇编题目

关于汇编伪指令,逻辑移位操作的一道题目:

DA3 EQU WORD PTR DA4  
DA4 DB 0ABH,89H 
SHR DA3,1     
MOV DX,DA3 
SHL DA4,1  
MOV CX,DA3 
上述程序段运行后,CX=       ,DX=        
DA3 EQU WORD PTR DA4 
;DA3和DA4相当于是数值相等的2个变量,其中一个发生变化时,另外一个也会立刻发生变化;此条伪指令相当于用DA3这个变量占用一个字(2个字节)的空间
DA4 DB 0ABH,89H
;这条指令执行后,会在内存空间中给DA4分配一个字的空间存放89ABH,其中89H是在高地址存放,也是数值的高位,0ABH是在低地址存放,也是数值的低位,但是变量的最小可分割单元是字节
SHR DA3,1
;逻辑右移指令执行后,DA3的值由89ABH变为44D5H,右移一位相当于除以2,二进制的最低位丢掉,二进制的最高位填入0
同时DA4在内存中的值也变化为44D5H
MOV DX,DA3
;数据传送指令,DX的值变为44D5H,不影响标志寄存器的值
SHL DA4,1
;逻辑左移指令执行,相当于是将DA4变量的第一个可分割单元的值左移一位,第一个单元的值由D5H变化为AAH,最终DA4的值由44D5H变为44AAH
同时DA3在内存中的值也变化为44AAH
MOV CX,DA3
;数据传送指令,CX的值变为44AAH,不影响标志寄存器的值

所以最终,(CX)=44AAH,(DX)=44D5H

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值