Emiter0 2020-05-10
编程语言有四代:
1.第一代,由0,1组成的机器语言,也被称为字节码,机器语言程序又被称为二进制文件。
2.第二代,汇编语言。
3.第三代,例如C,Java的语言。
4.第四代,四代语言的特征是完成一个任务你仅要告诉计算机你要做什么,不需要告诉计算机如何一步一步的做,如SQL。
反汇编是一件十分困难的事情
1.编译过程会造成损失。因为机器语言中没有变量,函数名。只有对数据进行分析才能确定数据的类型。
2.编译一个文件,并立即进行反编译也可能得到与输入时截然不同的程序。
3.反编译器特别依赖语言和库,例如用C代码的反编译器处理其他语言会出现奇怪的事情。
4.一点点的错误都会导致反编译的代码出现问题。
分析软件的方法有两种:
1.静态分析,通过浏览程序代码来理解程序的行为。
2.动态分析,在严格控制的环境中执行程序,并使用系统监测工具记录程序的行为。