高级编程语言(high level programming language):如Java、C#等
低级编程语言(low lever programming language):如汇编语言
汇编程序(assembler)
编译程序(compiler)
机器语言(machine language 由0和1组成的比特流)
汇编程序是把汇编指令转换为可执行的机器语言。
编译程序把高级编程语言(如Java、C#)编写的程序转换为可执行的机器语言。其具体过程是先把高级语言编写的程序转换为汇编指令(assembly instruction),然后再转换为可执行的机器语言。
一行高级语言编写的指令,经过编译程序转换后,会生成多行相应的汇编指令。
没有经过专业训练的人,很难看懂汇编指令。对比而言,当前多数大学生都可以多少看懂一些高级语言(如VB、Java、C#等)编写的源代码。
assembly这个词,在翻译为计算机相关的汉语时,可以分别翻译为“汇编,编译;程序集”,注意根据上下文进行理解。如果是偏重处理过程,则理解为“汇编”;如果偏重引用的程序,则理解为“程序集”。比如以下两条代码是ASP.NET中的Assembly指令:
<%@ Assembly Name="MyAssembly" %>
<%@ Assembly Src="SomeSource.cs" %>
对于Name属性,默认的文件名为.dll,所以在第一行语句中只写MyAssembly,而不必写MyAssembly.dll;但第二行语句中,涉及到源代码时,使用Src属性必须写明扩展名,以明晰源代码所使用的语言。因此综合看来,这里assembly与汇编关系不大(因为第二行中C#代码,说明已与汇编无关),所以翻译为“程序集”更合适。
下面看一段英语说明:
The Assembly directive links an assembly to the current application during compilation.
(Assemblies are, typically, .dll or .exe file.)