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

MIPS汇编语言与ARM汇编语言有什么不同... MIPS汇编语言与ARM汇编语言有什么不同 展开
 我来答
爱教育爱学习
高粉答主

2019-10-26 · 学而不思则罔,思而不学则殆
爱教育爱学习
采纳数:384 获赞数:112729

向TA提问 私信TA
展开全部

1、操作复杂程度的不同

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

2、使用范围的不同

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

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

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

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

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

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

啦啦啦额68
2019-09-15 · TA获得超过2867个赞
知道答主
回答量:130
采纳率:0%
帮助的人:3.1万
展开全部

汇编语言与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的语言代码首先自动转换为汇编代码。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小耳朵爱聊车
高粉答主

2019-09-15 · 说的都是干货,快来关注
知道大有可为答主
回答量:7378
采纳率:100%
帮助的人:301万
展开全部

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语言

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

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wushuai59
推荐于2017-09-19 · TA获得超过102个赞
知道答主
回答量:50
采纳率:0%
帮助的人:31.9万
展开全部
他们的指令集,寻址方式不同,相当于两个机器各有各的操作方式
汇编语言是低级语言,在编写程序的时候会把根据不同的情况指定使用不同的寻址方式,能够对内存和CPU里的通用寄存器直接操纵。不同的计算机系列会有不同的汇编语言
而C语言是高级语言,可以实现跨平台。编写程序无需指定CPU的指令执行情况,一段程序可以在不同体系结构的计算机上使用
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jnedved
2011-03-19
知道答主
回答量:27
采纳率:0%
帮助的人:20.5万
展开全部
汇编的低级别语言,优点在于能够对硬件资源进行准确的操作,比如寄存器的使用和数据存储的具体位置。能充分运用硬件资源
缺点当然是编写起来麻烦,程序阅读麻烦
而c则相反,它都是编译器自动分配说需寄存器和数据存储单元,因此编写者不能分配
但c语法简单,程序可读性强
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式