版块
论坛
喜欢
话题
应用
搜索
登录
注册
zhangleierli的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=165856
天书夜读的反汇编部分有一段代码不能理解,求救!
下面是发行版3*3矩阵相乘的反汇编。int myfunction(int a[3][3],int b[3][3],int c[3][3]) { int i,j; for(i=0;i<3;i++) 00401000 mov eax,dword ptr [es...
全文
回复
(
2
)
2008-11-23 07:50
来自版块 -
内核编程
◆
◆
表情
告诉我的粉丝
提 交
lzpaul
:
这个应该是编译器自己的做法吧,至于为什么这取决于编译器作者,也许有他认为合理的理由 暂时可以不必细究这个问题, 开始eax是指向a首地址了,加了4就指向a[0][1]了 后面的edx+8也是(指向c[0][2]),这应该是因编译器而异的做法吧
(2008-12-02 22:18)
回复
Adayuer
:
00401000 mov eax,dword ptr [esp+4] ;a保存到 eax 中 , 此时 eax==a[0][0] add eax, 4 ; 此时 eax == a[0][1] 不知道我理解是对不对
(2008-11-26 12:39)
回复
zhangleierli
加关注
写私信
0
关注
1
粉丝
148
帖子
返回顶部