CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

请教ASM in C++

楼主ZhengKarl(亮仔)2006-12-02 10:13:39 在 C/C++ / C++ 语言 提问

请教各位:我看别人C++代码(如下:)  
  mov   ebx,   this;这个语句能看懂,但mov   esi,   [ebx]this.pValue;这个语句不明白是什么意思--MOV指令的第二个操作数是什么啊??[ebx]是地址,还是DATA,而[ebx]this.pValue;合起来又是什么呢?。。。。。?  
   
                                      DWORD   dwFull;  
  __asm    
  {  
  mov   ebx,   this;  
  mov   esi,   [ebx]this.pValue;  
  mov   ecx,   [ebx]this.last;  
  mov   ebx,   dwValue; //乘数  
  xor   edi,   edi; //作临时存贮器,保存高位  
  L1:  
  mov   eax,   [esi];  
  mul   ebx;  
  add   eax,   edi;  
  mov   [esi],   eax;  
  adc   edx,   0;  
  mov   edi,   edx;  
  add   esi,   4;  
  loop   L1;  
   
  cmp   edi,   0;  
  je   L2;  
  mov   dwFull,   edi;  
  } 问题点数:20、回复次数:6Top

1 楼todototry(来csdn,学会扯淡了...)回复于 2006-12-02 11:20:21 得分 8

mov   esi,   [ebx]this.pValue  
  这是寄存器相对基址寻址  
  把this.pValue的值(一个数)和ebx的值相加的和作为所需读取的存储单元的地址  
  由于使用ebx,默认段寄存器的为ds  
  把ds+ebx+this.pValue地址处的值取出送esi(变址寄存器)  
  (ds+ebx+this.pValue)=>esi  
  Top

2 楼todototry(来csdn,学会扯淡了...)回复于 2006-12-02 11:20:40 得分 0

个人意见,高手多多指教Top

3 楼OOPhaisky(异化$渴望成功~~)回复于 2006-12-02 11:38:22 得分 5

mov   esi,   [ebx]this.pValue;  
  如果我没记错的话,这种应该是寄存器相对寻址方式,等价于  
  mov   esi,   [ebx+this.pValue];Top

4 楼jixingzhong(瞌睡虫·星辰)回复于 2006-12-02 18:39:51 得分 5

mov   esi,   [ebx+this.pValue];Top

5 楼ZhengKarl(亮仔)回复于 2006-12-13 15:45:11 得分 0

那这一句呢?(IN   CIH   SOURCE   CODE):  
  lea           ecx,   StopToRunVirusCode-@0[ebx]Top

6 楼ReverseEngineering(★给我一杯壮阳水☆换我一夜不下垂★男人阳萎不是罪☆)回复于 2006-12-22 21:11:10 得分 2

写在后面用点,写在前面不用点,都是加起来!Top

相关问题

关键词

得分解答快速导航

  • 帖主:ZhengKarl
  • todototry
  • OOPhaisky
  • jixingzhong
  • ReverseEngineering

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo