硬编码-什么是硬编码

二进制编辑工具打开exe 图中可以看出程序都是由二进制数据组成无论多么复杂的程序都只包含两部分,数据和指令。数据和指令的划分并没有明显的界限。具体取决于EIP 指令是有自己的格式。CPU相关的指令: x86  x64 arm硬编码就是指令集的指令x86指令需要遵循的格式 指令编码结构 x86硬编码结
逆向 汇编 x86 硬编码 2018年10月29日 80次浏览

win32中的宽字符

win32中的宽字符宽字符数据类型容器、模板 ASCII一个字符一个字节GB码(扩展了的ASCII)英文字符一个字节GB码中文字符两个字节UNICODE字符集(unicode编码实际指的是utf-16)常用字符两个字节宽字符: 用多个字节来表示的字符称之为宽字符(只要不是以单字节存储都可称为宽字符)
逆向 win32 2018年03月28日 60次浏览

C语言16 取值运算符

“*”的几种用途乘法运算符int x = 1;int y = 2;int z = x * y;定义新的类型char x;char* x;取值运算符指针类型的变量int* a =(int*)1;printf("%x \n",(a +1));10: int a =(int
逆向 汇编 C C语言 vc6 寄存器 2018年01月13日 48次浏览

C语言14 指针类型

C语言14 指针类型指针是C语言中的一种数据类型,定义带 *类型的变量char x; char* x;short y; short* y;int z; int* z;float f;
逆向 汇编 破解 C语言 vc6 2018年01月11日 51次浏览

结构体 字节对齐的练习

分析结构体大小struct S1{char c1;double d;char c2;char c3;};struct S2{char c1;char c2;char c3;double d;};struct S3{char c1;S1 s;char c2;char c3;};分析结构体大小#prag
逆向 内存 C C语言 vc6 2018年01月08日 51次浏览

C语言 13 结构体数组

结构体数组的定义类型 变量名[常量表达式];//定义结构体类型struct stStudent{ int Age; int Level;}//定义结构体变量struct stStudent st;//定义结构体数组struct stStudent arr[10];//或者stStuden
逆向 内存 C C语言 vc6 2018年01月07日 56次浏览

C语言12 字节对齐

#includechar x;short y;int check(){ x =1; y=2; return 0;}int main(int argc, char* argv[]){ check(); system("pause"); retur
逆向 内存 汇编 C C语言 vc6 计算机 2018年01月07日 53次浏览

C语言11 结构体

思考:当需要一个容器能够存储1个字节,你会怎么做? //char当需要一个容器能够存储4个字节,你会怎么做? //int当需要一个容器能够存储100个2个字节的数据,你会怎么做? //short arr[100]当需要一个容器能够存储5个数据,这5个数据中有1字节的,2字节的有10字节的。。。你会怎
逆向 内存 汇编 C 安全 C语言 vc6 计算机 2018年01月03日 52次浏览

C语言10 多维数组

多维数组的定义比如一个班有5个组,每个组有9个人int arr[45] 或者 intarr[5*9] 或者 int arr[5][9]比如一个县有5个学校,每个学校有3个年级,每个年级有4个班,每个班有5个组,每个组有9个人int arr[53459] 或者int arr[5][3][4][5][9
逆向 汇编 爆破 破解 C C语言 vc6 windows 2018年01月03日 54次浏览

C语言9 数组

数组的定义数组定义的格式:数据类型 变量名[常亮]; //为什么不能使变量?//因为在声明的时候 编译器需要知道数组的长度,分配相应大小的内存数组的初始化方式1:int arr[10] = {0,0,0,0,0,0,0,0,0,0};方式2:int arr[] = {1,2,3,4,5,6,7,8,
逆向 汇编 C 安全 C语言 vc6 寄存器 2018年01月02日 54次浏览