邢台泉丰有限公司:编译、汇编、反编译、反汇编、伪指令区别

来源:百度文库 编辑:偶看新闻 时间:2024/05/02 06:15:17
编译、汇编、反编译、反汇编、伪指令区别2010-11-30 10:18

        编译就是把高级语言变成计算机可以识别的二进制语言,利用编译程序从源语言编写的源程序产生目标程序的过程。

        汇编大多是指汇编语言,汇编程序。把汇编语言翻译成机器语言的过程称为汇编。在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理的系统软件。

        反汇编:将可执行的文件中的二进制经过分析转变为汇编程序。
        反编译:将可执行的程序经过分析转变为高级语言的源代码格式,一般完全的转换不太可能,编译器的优化等因素在里面。

        伪指令(伪汇编指令),用于告诉汇编程序如何进行汇编的指令,它既不控制机器的操作也不被汇编成机器代码,只能为汇编程序所识别并指导汇编如何进行。 将相对于程序或相对于寄存器的地址载入寄存器中。

        预处理指令(伪编译指令),比如#define 和 #ifdef,一般被用来使源代码在不同的执行环境中被方便的修改或者编译。源代码中这些指令会告诉预处理器执行特定的操作。比如告诉预处理器在源代码中替换特定字符等。