悦应 发表于 2017-1-12 23:05

汇编语句问题

请问

eax = 92492493

ecx = 0000000A

EDX=00000003

imul ecx之后

eax=b6db6dbe   这个我能理解

ecx=0000000a

edx=FFFFFFFB(不能理解)


各位大牛给个答案


李沉舟 发表于 2017-1-12 23:05

IMUL 是有符号乘法,IMUL ECX,表示把EAX * ECX,结果存入EAX和EDX中,因为两个都是32位寄存器,所以结果要分成两部分储存。EAX储存的是低32位,EDX储存的是高32位。
92492493h 转为有符号数变成了 -1840700269d,ECX是0Ah,转为有符号数就是10d,两数相乘,得到-18407002690,再转换为十六进制,FFFFFFFB B6DB6DBE。
不懂再问。

shangdizhidao1 发表于 2017-1-13 00:44

懂他干嘛有什么用

Very_good 发表于 2017-1-13 11:21

你不把软件拿出来鬼才知道它代表什么意思
如果直接从汇编理解

就是让他们跳转到那个地址

悦应 发表于 2017-1-13 23:07

Very_good 发表于 2017-1-13 11:21
你不把软件拿出来鬼才知道它代表什么意思
如果直接从汇编理解



这可哪有跳转啊?不懂别瞎说好么 误导别人

Very_good 发表于 2017-1-14 11:40

悦应 发表于 2017-1-13 23:07
这可哪有跳转啊?不懂别瞎说好么 误导别人

我说的跳转不是    你理解的那种

反正我是这么理解的毕竟我不是专业没看那些专业解释

我自己理解的可能你不懂   但是请你别乱喷

悦应 发表于 2017-1-15 04:43

Very_good 发表于 2017-1-14 11:40
我说的跳转不是    你理解的那种

反正我是这么理解的毕竟我不是专业没看那些专业解释


imul是有符号除法,所需要的寄存器我都贴出来了,跳转无非就是修改eip。我贴出来的语句没有一句修改了eip。 你所理解的跳转我想我可能真理解不了,抱歉。

最后我也没喷你,我是说不懂就别瞎说,容易误导别人,这也算喷你吗?承受能力太脆弱了吧!
页: [1]
查看完整版本: 汇编语句问题