欢迎光临
箫启灵个人站点

逆向学习

【C语言,反汇编】 Switch为什么比if高效

admin阅读(58)

以下内容,都是在debug模式下的反汇编分析。 总结: Switch条件低于4个的时候,是不产生任何索引的,跟if差不多 当条件超过四个,且条件是连续的时候,将产生一个索引表,我们称之为大表 如果这些条件有很多,且不连续,就可能出现另外一张...

【C语言,反汇编】整数,浮点数存储区别。

admin阅读(54)

C中,整数在汇编中的存储: 有符号数跟无符号数的区别 1、存储没有区别。 2、赋值没有区别 1、扩展的时候有区别  数据宽度小的类型扩展到数据宽度高的类型,会判断有符号数符号位例如 int =char时 2、比较的时候有区别 &n...

[汇编基础] GCC指令初步认识

admin阅读(206)

GCC是什么? 可以理解为汇编里面的各种条件判断,各种符号运算的语法。 要想学会GCC首先要了解EFL寄存器 1、CF (bit 0) [Carry flag] 这个就是无符号数进行判断计算的时候,如果内存溢出,则变成1   &n...

[汇编基础] 存储模式

admin阅读(204)评论(0)

存储模式的理解 判断高低位 数据: 0X1A2B   1A属于数据高位  2B属于数据低位 内存地址 [0x00000000] [0x00000001]    [0x00000000]低位 ...

[汇编基础] 内存 内存编号表现形式

admin阅读(5204)评论(58)

每个应用程序的4GB内存相当于空投支票,只有真正使用的时候,才会吧内存映射到物理内存中。 然后物理内存,再映射硬件内存。 为什么会有内存编号 <1> 内存太大没法起名字,所以只能用编号。当我们想向内存中存储数据,或者从内存中读取...

[汇编基础] 寄存器

admin阅读(1233)评论(0)

首先介绍大家一个工具,这个工具叫OD,全名OllyDbg OD介绍跟相关操作:http://www.ithtw.com/9155.html 寄存器是CPU中,用来存储数据用的。 通用寄存器 32位 16位 8位 EAX AX AL ECX ...

[汇编基础] 位运算 计算机最底层的加减乘除是如何实现的。

admin阅读(1318)评论(0)

为什么有位运算? 因为计算机底层,是没有加减乘除的运算的,底层都是二进制数据,二进制数据要实现我们常用的加减乘除,就需要通过位运算来实现。 那么,如果想学逆向,到底要不要学位运算呢? 答案:需要了解,不是特别重要。 位运算的用途 有些特殊场...

刺蝴蝶De箫启灵

作死购站点VIP视频站站点