linux下反汇编命令 汇编 linux

int i = 0; i = (++i)+(++i); printf("i=%d\n",i); 请问一下结果 i 为什么是4,而不是3,求解释??

linux下的反汇编:

创新互联建站主要从事成都网站建设、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务固始,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

15 movl $0, -4(%ebp) i = 0

16 addl $1, -4(%ebp) ++i

17 addl $1, -4(%ebp) ++i

18 movl -4(%ebp), %eax \

19 addl %eax, %eax | i = i + i

20 movl %eax, -4(%ebp) /

-4(%ebp)表示的就是i。执行的结果就如同其他人说的那样,最后i+i的时候i已经是2了。

当初的++操作只是为了节省源代码的空间,实际项目中最好不要用。

linux中 gcc 下ld 链接成什么格式的目标文件,有生成的哪些文件可以反汇编,反汇编的工具有哪些?

elf可执行文件

生成的目标文件(也即.o文件)和elf文件都可以反汇编

反汇编工具就是objdump命令,加个-S的选项就可以了。例如:

objdump -S hello hello.dump

LINUX下有一般用什么反汇编工具

答:linux上很容易反汇编的埃用nasm就可以的。 1、首先读取mbr sudo dd if=/dev/sda of=mbr.bin count=1 dd是linux的命令,需要root权限的,if是输入方法 ,在linux上所有的设备都是文件 ,mbr在第一块硬盘上,所以if=dev/sda。of=mbr.bin


网站名称:linux下反汇编命令 汇编 linux
文章位置:http://bzwzjz.com/article/hhcsgs.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆企业网站建设 成都网站建设 成都网站设计 企业网站设计 成都网站设计 专业网站设计 专业网站建设 宜宾网站设计 外贸网站设计方案 成都h5网站建设 高端网站设计 成都网站建设 重庆网站建设 手机网站制作 成都网站建设 成都网站建设公司 重庆网站制作 营销网站建设 成都定制网站建设 手机网站制作设计 网站制作 阿坝网站设计