汇编语言c是什么,汇编语言到C相当于

我试图找到C-相当于组装以下块:汇编语言到C相当于

.section .text

.globl mystery

.type mystery, @function

mystery:

pushl %ebp

movl %esp, %ebp

xorl %eax, %eax

xorl %exc, %ecx

movl 8(%ebp), %edx

begin:

cmpl 12(%ebp), %ecx

jge done

addl (%edx, %ecx, 4), %eax

incl %ecx

jump begin

done:

movl %ebp, %esp

popl %ebp

ret

我得到的“开始”部分。它看起来像一个循环,从函数接受参数并将其与%ecx中的任何值进行比较。如果符合jge条件,则函数返回,否则它会将%edx添加4%ecx,将其移至%eax,将%ecx递增并再次循环。

我真的不明白“神秘”的一部分。特别是xorls和movl语句。如果%eax或%ecx中没有任何内容开始,那么xorl正在做什么。 movl我猜是从函数中取出一个参数并将它移动到%edx?

任何洞察力是有益的和赞赏。

+0

你从哪里找到这段代码? –

+1

@unwind我闻到功课。 –

2013-12-11 14:10:23

+1

XORing本身意味着将其设置为零。 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值