C语言和汇编语言在开发单片机时各有哪些优缺点?

如题所述

汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。如果对单片机C语言有兴趣,C语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。而C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用C语言进行程序设计已成为软件开发的一个主流。用C语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。综上所述,用单片机C语言程序设计是单片机开发与应用的必然趋势。所以作为一个技术全面并涉足较大规模的软件系统开发的单片机开发人员最好能够掌握基本的C语言编程。
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-28
汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码
的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的
CPU,
其汇编语言可能有所差异,所以不易移植。
C
语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使
用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。
对于目前普遍使用的
RISC
架构的
8bit
MCU
来说,其内部
ROM、RAM、
STACK
等资源都有限,如果使用
C
语言编写,一条
C
语言指令编译后,会变成
很多条机器码,很容易出现
ROM
空间不够、堆栈溢出等问题。而且一些单片机
厂家也不一定能提供
C
编译器。而汇编语言,一条指令就对应一个机器码,每
一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起
来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。
相似回答