问题描述
我认为从内存地址执行此操作很简单,因为您可以根据内存偏移量检索值。那是正确的,还是比这更复杂?
要尝试将两个16位值打包到一个寄存器中,这就是我所拥有的:
mov $72,%ax # low 2-bytes (of eax)
or $(19 << 16),%eax # high 2 bytes (of eax)
mov %eax,%ebx
and $0x0000FFFF,%ebx # low bits go in ebx
mov %eax,%ecx
and $0xFFFF0000,%ecx # high bits go in ecx
shr $16,%ecx
这是建议的方法吗?并有一种方法可以在单个操作中进行“移动和遮罩”,还是需要分两个步骤进行?
mov %eax,%ebx
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)