字符串的汇编代码
发表于 : 2013-03-02 17:01
hi 大家好:
表达式一:
char a = 'a';
表达式二:
char *a = "a";
这两个c表达式再汇编中的区别是什么?
我有objdump -D 得到的汇编代码中发现了表达式一中的内容为:
movb $0x61 0x1f(%esp)
我的理解是是立即数0x61就是字符 a。不知道这样理解对吗?
当使用第二个表达式的时候编译后再dump在汇编文件中没有找到相应的0x61。
当做字符串处理的时候再汇编代码中式怎么处理这个字符串 变量的?
软件环境:ubuntu 12.04
硬件环境:dell optiplex 380
gcc版本:4.6.3
谢谢大家。
表达式一:
char a = 'a';
表达式二:
char *a = "a";
这两个c表达式再汇编中的区别是什么?
我有objdump -D 得到的汇编代码中发现了表达式一中的内容为:
movb $0x61 0x1f(%esp)
我的理解是是立即数0x61就是字符 a。不知道这样理解对吗?
当使用第二个表达式的时候编译后再dump在汇编文件中没有找到相应的0x61。
当做字符串处理的时候再汇编代码中式怎么处理这个字符串 变量的?
软件环境:ubuntu 12.04
硬件环境:dell optiplex 380
gcc版本:4.6.3
谢谢大家。