LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1040|回复: 3

寄存器eax的低十六位叫ax,高十六位叫做什么?

[复制链接]
发表于 2004-9-24 00:36:18 | 显示全部楼层 |阅读模式
我想把两个short型的整数拼成一个long型整数,想用汇编实现,无非三步走最简单:
1。把一个short型数放到eax的高十六位
2。把另一个short型数放到eax的低十六位,即ax
3。把eax的内容放到目标地址。

就是不知道eax的高十六位叫什么,卡在这里了。难道非得用先放到ax然后左移16位的方法不可吗?
发表于 2004-9-24 16:25:33 | 显示全部楼层
低16位叫ax, 只是为了和16位寄存器兼容
高16位没名字吧
发表于 2004-9-24 17:55:54 | 显示全部楼层
把第一步改成:把一个short型数放到eax的低十六位,然后把EAX左移16位
发表于 2004-10-7 05:50:12 | 显示全部楼层
你可以试试 把那两个 short放在以ebp-2 和ebp-4
然后在把(ebp) 放到%eax就可以了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表