首页
社区
课程
招聘
[求助] 如何将2个32位数据 放入64位数据中
发表于: 2009-7-18 13:21 5686

[求助] 如何将2个32位数据 放入64位数据中

2009-7-18 13:21
5686
ft.dwHighDateTime 和 ft.dwLowDateTime 都是32位数据

qwResult 是一个 64位数据.
如何把 ft.dwHighDateTime 放到qwResult 的高32位,ft.dwLowDateTime 放入qwResult 的低32位呢?

这是C++ 的代码

  ULONGLONG qwResult;

   // Copy the time into a quadword.
   qwResult = (((ULONGLONG) ft.dwHighDateTime) << 32) + ft.dwLowDateTime;

这段代码如何用汇编 (masm32)来实现呢?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 952
活跃值: (1821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
masm32用不着转······
2009-7-18 14:19
0
雪    币: 207
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
给出代码看看
2009-7-18 22:04
0
雪    币: 247
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
mov dword ptr qwResult,  ft.dwHighDateTime
mov dword ptr qwResult+4, ft.dwLowDateTime
2009-7-19 13:13
0
雪    币: 796
活跃值: (370)
能力值: ( LV9,RANK:380 )
在线值:
发帖
回帖
粉丝
5
写个简单的代码,然后用OD载入就可以了吧?
2009-7-19 16:33
0
雪    币: 207
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
链接的时候,说这是非法的语句....
2009-7-20 12:40
0
雪    币: 142
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
c++用结构体实现很方便

struct
{
long ft.dwHighDateTime ;
long ft.dwLowDateTime ;
}time;
ULONGLONG qwResult;
qwResult=&time;
一般都这么写,还有其他方法,例如数组也可以,但一般不用数组。
你写个程序od或者ida看看就可以了。
链接非法语句的话可以这样看看
push ebp
mov [ebp+qwResult],  ft.dwHighDateTime
mov [ebp+qwResult+4], ft.dwLowDateTime
pop ebp
qwResult就随便定义吧
2009-7-20 13:31
0
雪    币: 207
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
thx.  
2009-7-21 09:30
0
游客
登录 | 注册 方可回帖
返回
//