3)翻译程序、汇编程序、编译程序、解释程序有什么差别?各自的特性是什么?
翻译程序是指把高级语言源程序翻译成机器语言程序(目标代码)的软件。
翻译程序有两种:一种是编译程序,它将高级语言源程序一次全部翻译成目标程序,每次执行程
序时,只需执行目标程序,因此只要源程序不变,就无须重新翻译,请注意同一种高级语言在不
同体系结构下,编译成目标程序是不一样的,目标程序与体系结构相关,但仍不是计算机硬件能
够直接执行的程序。另一种是解释程序,它将源程序的一条语句翻译成对应的机器目标代码,并
立即执行,然后翻译下一条源程序语句并执行,直至所有源程序语句全部被翻译并执行完。所以
解释程序的执行过程是翻译一句执行一句,并且不会生成目标程序。
汇编程序也是一种语言翻译程序,它把汇编语言源程序翻译为机器语言程序。汇编语言是种面向
机器的低级语言,是机器语言的符号表示,与机器语言一一对应。
编译程序与汇编程序的区別:若源语言是诸如 C、C++、Java 等“高级语言”,而目标语言是诸
如汇编语言或机器语言之类的“低级语言”,则这样的一个翻译程序称为编译程序。若源语言是
汇编语言,而目标语言是机器语言,则这样的一个翻译程序称为汇编程序。