转自:https://www.jianshu.com/p/eb63d31ad638 编译原理 第一章 引言 1.从面向机器的语言到面向人类的语言 汇编指令:用符号表示的指令被称为汇编指令 汇编语言:汇编指令的集合称为汇编语言 2.语言之间的翻译 转换(也被称为预处理):高级语言之间的翻译,如FORT ...
分类:
其他好文 时间:
2019-05-04 09:57:29
阅读次数:
238
IDA载入程序,进入主函数。 可以看到关键的比较 将dword_6020C0和off_6050A0的数据提取出来,写脚本。 ALIGN Num其中:Num必须是2的幂,如:2、4、8和16等。伪指令的作用是:告诉汇编程序,本伪指令下面的内存变量必须从下一个能被Num整除的地址开始分配。如果下一个地址 ...
分类:
其他好文 时间:
2019-05-01 23:57:27
阅读次数:
374
go汇编格式跟前面讨论过的AT&T汇编基本上差不多,但也有些重要区别,本节就这些差异做一个简单说明。 ...
分类:
编程语言 时间:
2019-04-28 09:23:38
阅读次数:
142
在学习c++中const关键字的过程中,经常会看到各种寄存器、汇编指令分析,像下面的图这样 左图是g++中反汇编的效果,右图是vs中反汇编的效果。 如果我们想要查看源码所对应的汇编语言,应该怎么操作呢? 1.ubuntu系统g++ g++中一般使用GDB进行调试。 我的工程文件下文件结构如上所示,进 ...
分类:
编程语言 时间:
2019-04-10 23:45:11
阅读次数:
354
pwn1 考点:构造 shellcode,patch 汇编指令 IDA 查看反汇编,程序的逻辑很简单如,如果 直接 f5 的话 IDA 可能识别不出来函数,问题出在 0x080484CF 这个地方, 指令识别不出来, 所以这里可以先 patch 成 nop,之后 f5 就正常了 。 程序把输入当成 ...
分类:
其他好文 时间:
2019-03-29 01:16:45
阅读次数:
571
Java代码在编译后会变成Java字节码,字节码被类加载起加载到JVM里,JVM执行字节码,最终需要转化为汇编指令在CPU上执行, Java中所使用的并发机制依赖于JVM的实现和CPU的指令. 一、volatile的应用 在多处理器开发中保证共享变量的 "可见性", 可见性的意思是: 当一个线程修改 ...
分类:
编程语言 时间:
2019-03-19 01:34:40
阅读次数:
239
1. gcc -E 预处理 头文件展开 宏替换 2. gcc -S : 生成汇编指令 3. ...
分类:
系统相关 时间:
2019-03-18 23:55:01
阅读次数:
275
CLI:clearInterupetSTI:setInterupetCLD:clearDirectorSTD:setDirector:::::::::::::::::::CLI和STI是屏蔽中断和设置中断用的。CLD与STD是用来操作方向标志位DF(DirectionFlag)。CLD使DF复位,即DF=0,STD使DF置位,即DF=1.用于串操作指令中。CLD是使得传送方向从低地址到高地址,而S
分类:
其他好文 时间:
2019-03-09 21:48:18
阅读次数:
143
一、mysqld中对于SQL语句的分析客户端和服务器之间交互的时候,客户端发送的同样是字符串形式的查询和执行命令,返回的特定格式的数据库内容(?)。这个过程就需要在服务器端进行实时指令的翻译,生成特定的查询指令。在sqlite的实现中,sqlite定义了一个专用的虚拟机环境,和通常的真正的汇编指令相 ...
分类:
数据库 时间:
2019-03-07 10:19:57
阅读次数:
712
第一节 可编程器件的编程原理 1. 可编程器件的特点 1 . CPU在固定频率的时钟控制下节奏运行 2 . CPU可以通过总线读取外部存储设备中的二进制指令集,然后解码执行 3 . 这些可以被CPU解码执行的二进制指令集是CPU设计的时候确定的,是CPU的设计者(ARM公司)定义的,本质上是一串由1 ...
分类:
其他好文 时间:
2019-02-27 17:54:35
阅读次数:
213