level 1
那人跟我说汇编是勾拳,高级语言是直拳.听得我毛骨悚然.
这人真应该回炉重练
2013年10月05日 10点10分
1
level 1
普及一下计算机语言类型:
机器语言:全部是由二进制01组成可读性极差,计算机执行效能最高;
汇编语言:通过将部分指令换成助记符,方便程序员编写,计算机不能直接执行需要通过汇编器转换成机器语言;再执行.其编写过程是从机器角度去考虑。
高级语言:目前大分程序员用的C,C++, Objective-C,Basic都是属于高级语言,更符合人类的日常语言习惯。高级语言一样不能直接被机器识别。要将其转化为机器可执行的语言,需经过编译和汇编两大步。
平台无关性:
是高级语言的一大重要优势。在高级语言出现以前不同的硬件产家有不同的汇编指令,这样就造成一台用intelCPU的计算机软件不能在IBM powerC的电脑上运行,如果要在POWERC下运行就有重新编写一次程序再编译运行。高级语言不需要知道各个厂家的汇编指令,将更多的精力用于应用层面的方案解决,至于底层的汇编指令的转换直接交由编译器完成。如X86平台的gcc编译器可通过处理器选项将一个C文件编译成一个可以在ARM下运行的程序。
平台无关性的代价:
在执行对一个内存地址的数椐存取时,用汇编语言时,编写的程序直接访问数椐所在的地址;而用高级语言编写的程序,有时需要问过A后,他让你找B,B再告诉你数椐所在地址,这时才能进行数椐存取。
附:鉴于汇编语言的高效执行能力,即使用C如何好用,依然有很大部分程序小组在程序正式发布前都要用汇编重写调用频率较高的函数,用以提高程序的执行效率。(以上文章参考自linux C编程一站式学习)
2013年10月05日 16点10分
5