汇编语言与C语言有什么区别

MIPS汇编语言与ARM汇编语言有什么不同

1、操作复杂程度的不同

c语言,与汇编语言相比,c语言在更加接近人的一般思维,因此在程序的设计过程中比较容易操作,此外在进行一些复杂的操作,运算时,c语言比汇编就要简单很多,尤其是c语言中的丰富的函数库,可以直接实现一些原本很复杂的功能,并且从代码量来说任意一个c语言程序,通过反汇编之后变成汇编语言程序,其长度都可能要增加好几倍。

2、使用范围的不同

c语言程序的事件将会只是编写汇编语言程序的几分之一,从编写程序的效率上来说c语言无疑更高,此外C语言是高级程序语言因此可移植性较好,不太受到到硬件设备的限制。

在实现一个功能时,汇编语言可以直接奔着目标去,而C语言则是给你提供了一种对于对于这种问题的普遍处理办法,不具有针对性,因此会有许多多余的在这个问题中不需要的过程,因此可能回事程序较大,运行较慢。相对与汇编语言,C语言更加适合一些较大型项目的开发。

3、运行的速度和效率不同

程序没有了汇编语言计算机直接就无法运行,因为汇编语言是基于计算机底层硬件的编程,通过它实现了对cpu,内存,硬盘以及外界设备的直接操作,因为直接所以汇编语言在程序的大小,执行的速度与效率方面几乎无可比拟,但是也是因为直接,所以汇编程序难以移植,且完成相同的操作代码量太大,在进行一些大的项目是,单独使用汇编进行编程几乎不可能实现。

参考资料来源:百度百科—汇编语言

参考资料来源:百度百科—c语言

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-09-15

汇编语言与C语言的区别:

1、在汇编语言中,为一个处理器编写的程序不能在另一种类型的处理器上运行。在C语言程序中,程序独立于处理器类型运行。

2、汇编语言代码的性能和准确性优于C代码。

3、C语言必须提供额外的指令来在计算机上运行代码。

4、汇编语言代码比C代码难以理解和调试。

5、 一个或两个C语言语句扩展为许多汇编语言代码。

6、汇编语言可以比C别更好地进行通信某些类型的硬件操作只能通过汇编语言执行。

7、在汇编语言中,我们可以直接读取物理地址上的指针,这在C别是不可能的。

8、在汇编语言中使用位更容易。

9、汇编程序用于在汇编语言中转换代码,而编译器用于在C编译代码。

10、C语言的可执行代码大于汇编语言代码,因此执行时间较长。

11、由于长的可执行代码,C程序的效率低于汇编语言程序。

12、与汇编程序员相比,C语言程序员不需要知道处理器中的寄存器等 硬件细节。

13、最C的语言代码首先自动转换为汇编代码。

本回答被网友采纳
第2个回答  2019-09-15

1、两者编译组成不同。汇编语言是将由0、1组成的机器语言用具有简单语义的英文代码表示,而C语言不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等。

2、两者被计算机识别的路径不同。汇编语言通常用于对硬件的直接操控。而且C语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行。

3、两者用处不同。汇编语言通常用在程序中最核心的、控制硬件的代码,一方面是安全,另一方面提高运行速度。而C语言通常用在计算机外用功能上。

扩展资料:

汇编语言运行效率高的原因

汇编语言实质上是机器语言的助记符。 CPU只能运行它所支持的指令集,而这些指令集当中的每条指令都是一些二进制数的序列,也就是“0”和“1”的有序组合;“0”和“1”的组合不便于程序员的记忆因此有了“MOV A 0x40”等这样的助记符。

所以汇编语言编译成CPU可执行的机器语言其实只要做一个翻译的动作就好了。而C语言编写完程序后,需要通过编译器将C语言编译成与相应CPU指令集对应的机器语言。汇编语言与机器语言是一一对应的。

但是C语言,就没这么好了。C语言的语法是固定的,C语言编写的程序要编译成CPU能读懂的机器语言指令没办法一一对应,因此需要有编译规则了,所以运行效率低一些。也可以说,C语言,是面向程序员的语言,而汇编语言是直接面向CPU的语言。

参考资料来源:百度百科-c语言

参考资料来源:百度百科-汇编语言

本回答被网友采纳
第3个回答  推荐于2017-09-19
他们的指令集,寻址方式不同,相当于两个机器各有各的操作方式
汇编语言是低级语言,在编写程序的时候会把根据不同的情况指定使用不同的寻址方式,能够对内存和CPU里的通用寄存器直接操纵。不同的计算机系列会有不同的汇编语言
而C语言是高级语言,可以实现跨平台。编写程序无需指定CPU的指令执行情况,一段程序可以在不同体系结构的计算机上使用本回答被提问者采纳
第4个回答  2011-03-19
汇编的低级别语言,优点在于能够对硬件资源进行准确的操作,比如寄存器的使用和数据存储的具体位置。能充分运用硬件资源
缺点当然是编写起来麻烦,程序阅读麻烦
而c则相反,它都是编译器自动分配说需寄存器和数据存储单元,因此编写者不能分配
但c语法简单,程序可读性强

汇编语言和c语言的区别是什么?
1、有效范围上的区别 (1)模态:模态指令在程序段中指定后才有效,直到出现在另一个组中或被其他指令取消为止。(2)非模态:非模态指令仅在出现的程序段中有效,而在其他程序段中无效。2、重写上的区别 (1)模态:可以省略与上一段相同的模态指令。(2)非模态:非模态指令与上一段相同,需要重...

汇编语言与C语言有什么区别
汇编语言与C语言的区别:1、在汇编语言中,为一个处理器编写的程序不能在另一种类型的处理器上运行。在C语言程序中,程序独立于处理器类型运行。2、汇编语言代码的性能和准确性优于C代码。3、C语言必须提供额外的指令来在计算机上运行代码。4、汇编语言代码比C代码难以理解和调试。5、 一个或两个C...

C语言和汇编语言的区别是什么?
1、效率不同 汇编效率高,C语言效率比较低。2、对硬件的可操控性不同 汇编对硬件的可操控性强,C语言硬件可操控性比较差。3、代码体积大小不同 汇编目标代码体积小,C语言目标代码体积大。4、维护性不同 汇编不易维护,C语言容易维护。5、可移植性不同 汇编可移植性很差,C语言可移植性很好。

汇编语言与C语言有什么区别
1、操作复杂程度的不同 c语言,与汇编语言相比,c语言在更加接近人的一般思维,因此在程序的设计过程中比较容易操作,此外在进行一些复杂的操作,运算时,c语言比汇编就要简单很多,尤其是c语言中的丰富的函数库,可以直接实现一些原本很复杂的功能,并且从代码量来说任意一个c语言程序,通过反汇编之后变成...

C语言属于汇编语言吗
C语言和汇编语言是两个不同的概念,最明显区别在于他们的指令集,寻址方式不同 1、汇编语言:汇编语言是低级语言,是用语言直接控制硬件,由硬件间接达到某种控制效果,即汇编语言对描述过程更注重,可以移植性较低,与CPU具有极强的相关性;2、C语言:C语言之类的高级语言更注重描述结果,是高级语言,可...

汇编语言和C语言有什么不同?
汇编难,因为太不直观了,很乱脑子。汇编的作用相对于c来说也小,如果不是搞os或硬件相关,不学也完全可以。c本身就比较好用,而且学会的话再学别的语言就很轻松了。绝对是汇编比C难, C还算是低级语言,而汇编基本就是机器语言了! c比汇编难学,但是用起来要比它容易 ...

C语言和汇编语言的区别是什么?
(1)两者编译组成不同。汇编语言是将由0、1组成的机器语言用具有简单语义的英文代码表示,而C语言不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等。(2)两者被计算机识别的路径不同。汇编语言通常用于对硬件的直接操控。而且C语言所...

汇编语言和C语言有什么区别?
简单的说就是汇编语言看起来比较难懂,更接近于机器语言,C语言属于高级程序设计语言,有点人类所认知的语法,更容易接受。再则汇编语言因为没有固定的框架,不像C,封装起来,所以C感觉比较好学,同时汇编编起来没有程序化的感觉。

汇编语言和c语言的区别
1. 汇编语言与C语言在程序设计中扮演着不同的角色。C语言是一种高级编程语言,其表达能力强,易于人类理解,但必须通过编译器转换为机器码,即汇编语言,才能被计算机执行。2. 两者在语法结构上存在显著差异。C语言的语法结构接近人类语言,而汇编语言则直接面向机器,它通过助记符来代表机器码。3. 汇编...

汇编与c语言哪个
一、明确答案 汇编语言比C语言更接近计算机硬件,因为它直接操作机器指令。这意味着汇编语言具有更高的执行效率和更精细的控制能力,但同时也带来了更高的学习难度和复杂性。二、详细解释 1. 汇编语言的特性:汇编语言是计算机编程中较低层次的语言,它直接与计算机的机器语言指令相对应。程序员通过编写汇编...

相似回答