汇编
Aegeaner
这个作者很懒,什么都没留下…
展开
-
Glibc中strlen的汇编实现
strlen.c文件中的内联汇编代码如下:#include size_tstrlen (const char *str){ int cnt; asm("cld\n" /* Search forward. */ /* Some old versions of gas need `repne' instead of `repnz'. */ "r原创 2012-03-26 21:26:57 · 2049 阅读 · 0 评论 -
Linux 中 x86 的内联汇编
Bharata B. Rao (rbharata@in.ibm.com)IBM Linux 技术中心,IBM 软件实验室,印度如果您是 Linux 内核的开发人员,您会发现自己经常要对与体系结构高度相关的功能进行编码或优化代码路径。您很可能是通过将汇编语言指令插入到 C 语句的中间(又称为内联汇编的一种方法)来执行这些任务的。让我们看一下 Linux 中内联汇编的特定用法。(我们将转载 2012-03-26 21:06:12 · 912 阅读 · 0 评论 -
debug版函数初始化入口 0xcc
在VC++编写的程序编程成Debug版,反汇编代码,函数入口处经常看到如下一段代码:00EA14E0 55 push ebp 00EA14E1 8B EC mov ebp,esp00EA14E3 81 EC C0 00 00 00 sub esp,0C0h00EA14E9 53转载 2012-06-04 01:46:27 · 1415 阅读 · 0 评论 -
汇编除法转换
今天写了个小程序,用 IDA 反汇编过来看了一下,如下一条语句:num/= 5;却被转化成了这种形式:mov ecx, eax ;nummov eax, 66666667himul ecxsar edx, 1mov eax, edx最终 eax 就是 num 的值,为什么会转载 2012-06-03 22:47:28 · 1610 阅读 · 0 评论