yiyiz
驱动小牛
驱动小牛
  • 注册日期2002-02-15
  • 最后登录2007-09-06
  • 粉丝0
  • 关注0
  • 积分50分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
阅读:2465回复:9

MSC6.0或者Visual C++ 1.52如何调用汇编模块?

楼主#
更多 发布于:2002-06-20 11:11
我用Turbo C的调用方法,好像行不通,谁有这方面的经验,或者请帮帮小弟,急急急!!!!!
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
沙发#
发布于:2002-06-20 12:23
直接内嵌汇编不行吗?
yiyiz
驱动小牛
驱动小牛
  • 注册日期2002-02-15
  • 最后登录2007-09-06
  • 粉丝0
  • 关注0
  • 积分50分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-06-20 14:38
直接内嵌汇编也可以,我也会用,但是气人的是Microsoft c6.0和Visual C++ 1.52不认识32位寄存器,比如eax,ebx,我快急疯了,请各位帮帮忙啊!!!!!!!
    
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-06-20 15:15
可以的啊!怎么会不认呢!奇怪了
VanCheer
驱动老牛
驱动老牛
  • 注册日期2002-02-21
  • 最后登录2003-08-28
  • 粉丝0
  • 关注0
  • 积分-20分
  • 威望-10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-06-20 15:39
直接嵌入机器码吧。
你说的那两个东西是16位的,它们不懂32位汇编。
我忘记VC里怎么嵌入机器码了,你查查
你可以这样
嵌入0x66
然后 mov ax,bx
这就是 mov eax,ebx了

[img]http://www.driverdevelop.com/forum/upload/VanCheer/2003-03-21_mon.gif[/img][img]http://www.driverdevelop.com/forum/upload/VanCheer/2002-12-07_smallbaby.jpg[/img]
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-06-20 16:34
呵呵!可以这样啊!
_asm{
 db 0x90,0x90
}
zdhe
驱动太牛
驱动太牛
  • 注册日期2001-12-26
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分72362分
  • 威望362260点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2002-06-20 17:04
USE _emit
leaf
驱动牛犊
驱动牛犊
  • 注册日期2002-05-21
  • 最后登录2004-01-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-06-20 18:22
先用MASM编译ASM为OBJ.
然后直接将OBJ联编.
我在VC6下面就是这样使用的.
注意_FuncName,加\"_\".
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
8楼#
发布于:2002-06-20 23:46
32位跟16位编译器应该不认的。
yiyiz
驱动小牛
驱动小牛
  • 注册日期2002-02-15
  • 最后登录2007-09-06
  • 粉丝0
  • 关注0
  • 积分50分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-06-24 13:01
问题到是解决了,我用
_asm{
nop
nop
nop
nop
nop
nop
}
让它生成obj,然后在OBJ中找90 90 90 90 90 90 用要使用的汇编的机器码替代,不过总觉得旁门左道,不知是否有正统的解决方案?我结贴了.
感谢各位相助!!!! :) :) :) :) :) :)
游客

返回顶部