![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
汇编
一起交流
这个作者很懒,什么都没留下…
展开
-
gcc 插件实践 一
gcc 插件实践 一重要内容参考自 https://zhuanlan.zhihu.com/p/49490338在ubuntu中直接实践以下代码,通常会遇见以下几种错误。/* ------ plugin1.c ------ */#include "gcc-plugin.h"#include "plugin-version.h"int plugin_is_GPL_compatible;...原创 2020-02-24 21:12:53 · 2101 阅读 · 5 评论 -
标志位寄存器与CF、OF标志位的区分
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/Apollon_krj/article/details/71239549 8086CPU的flag寄存器(16位)各标志位如下(这是32位EFLAG的低十六位图,但是32位与16位是一样的,只不过32位多了16位且高16位没有使用到): 标志位寄存器中保存的是当前指令运算的信息状态,比如进位...转载 2019-04-22 10:15:11 · 14428 阅读 · 4 评论 -
GCC 内联汇编
原文 https://linux.cn/article-7688-1.html正如大家知道的,在C语言中插入汇编语言,其是Linux中使用的基本汇编程序语法。本文将讲解 GCC 提供的内联汇编特性的用途和用法。对于阅读这篇文章,这里只有两个前提要求,很明显,就是 x86 汇编语言和 C 语言的基本认识。1. 简介1.1 版权许可Copyright (C) 2003 Sandeep S....转载 2019-04-23 07:26:46 · 517 阅读 · 0 评论 -
gcc 下内联汇编的一些简单案例讲解
具体的教程 参考转载的前一篇博文 GCC 内联汇编 https://blog.csdn.net/m0_37329910/article/details/89465064持续更新中案列demo1直接看代码char dest_m[0x20] = {'\0'};static inline char * strcpy_zj(char * dest,const char *src){ ...原创 2019-04-24 09:09:17 · 475 阅读 · 0 评论 -
汇编入门一 杂记之 不同编译选项下生成的文件区别
汇编编译生成文件的区别Method 1:zj@zj-virtual-machine:~/c_study/hitcon2018/abyss/test_shellcode$ cat part1.sBITS 64; Open "flag"push 0x67616c66push 0x2pop raxmov rdi,rspxor rsi, rsisyscall...原创 2018-12-19 11:44:16 · 308 阅读 · 0 评论 -
汇编入门二 杂记之简单修改汇编代码
简单修改汇编代码Diy 1:zj@zj-virtual-machine:~/c_study/hitcon2018/abyss/test_shellcode$ cat part1_diy1.s BITS 64; Open "flag"push 0x67616c66push 0x2pop raxmov rdi,rspxor rsi, rsisyscal...原创 2018-12-19 11:52:18 · 890 阅读 · 0 评论 -
一些比较不常见的 汇编指令记录
汇编指令demo1int register_syscall() { asm( "xor rax, rax;" "mov rdx, 0x00200008;" &q原创 2018-12-22 16:19:37 · 881 阅读 · 0 评论 -
objdump按照指定架构反汇编 裸二进制文件
objdump按照指定架构反汇编 裸二进制文件因为某些特殊原因,不会把汇编代码直接编译成一个完整的可执行文件,直接编译成纯二进制的文件,以便读到内存中,供其他程序执行使用。例如:/prj1$ cat bin.S.globl _start .code16_start: mov $0x3f8, %dx add %bl, %al add $'0', %al ...原创 2019-06-23 11:13:14 · 4554 阅读 · 0 评论