MVN指令的用法?

shift_f 2008-11-19 08:43:11
mvn r0,#0xa0000007

执行上述命令后,r0=?
是如何运算滴?
我知道这个命令是取反.但就不知道怎么算.

mvn r0,#4
这个执行后,r0=-5....(这个结果是怎么算滴)
谢谢了......
...全文
2303 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
idonotknow0914 2011-03-04
  • 打赏
  • 举报
回复
求负数补码就是取反加1
shift_f 2008-11-20
  • 打赏
  • 举报
回复
谢谢...

不过,上面的两个方法:结果是10000101啊 ,怎么一个求补码,一个是求补码对应的数呢?
两个都可以求补码吧?
对应的数的话,只要把2进制换成10进制不就可以了嘛?
killbug2004 2008-11-20
  • 打赏
  • 举报
回复
一个是求补码,一个是用补码求对应的数
shift_f 2008-11-20
  • 打赏
  • 举报
回复
嗯.谢了..最后那个补码."减一取反"跟"取反加一"效果是不是一样的?有区别嘛?
killbug2004 2008-11-20
  • 打赏
  • 举报
回复
MVN指令

MVN指令的格式为:

MVN{条件}{S} 目的寄存器,源操作数

MVN指令可完成从另一个寄存器、被移位的寄存器、或将一个立即数加载到目的寄存器。与MOV指令不同之处是在传送之前按位被取反了,即把一个被取反的值传送到目的寄存器中。其中S决定指令的操作是否影响CPSR中条件标志位的值,当没有S时指令不更新CPSR中条件标志位的值。
4(00000100b) 取反为 11111011,这个是数是-5的补码,所以r0=-5

1111011高位为1,为负数,故减一取反为5,加上符号就为-5

21,499

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧