EEPW论坛
网站首页
论坛资料
设计文章
电路方案
文档资料
首页
特色版块
企业专区
电子DIY
活动通道
最新帖
开发板试用
签到
首页
板卡试用
STM32
国产MCU
电源与模拟
物联网技术
基础知识
OpenVINO生态社区
Xilinx
STM32
GD32
ADI
TI
Linear
Microchip
Renesas
Cypress
Mouser
Burnon
液体流量检测仪
电子测光表
墨水屏/贪吃蛇
手势翻页笔
我的四轴 DIY
键盘 DIY
树莓派DIY
功放 DIY
3D打印 DIY
智能车DIY
LightCube DIY
QuadCopter DIY
51 DIY
MCU DIY
FPGA DIY
这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界
»
论坛首页
»
嵌入式开发
»
MCU
»
关于单片机的N多问题
共7条 1/1
1
跳转至
页
626364
关于单片机的N多问题
Melinda
工程师
2008-07-08 09:12:58
打赏
只看楼主
1楼
1. C语言和汇编语言在开发单片机时各有哪些优缺点?
回复
收藏
0
关键词:
关于
单片机
问题
626365
Melinda
工程师
2008-07-08 09:13:35
打赏
2楼
答
:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。
C语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。
对于目前普遍使用的RISC架构的8bit MCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。
评论
626366
Melinda
工程师
2008-07-08 09:13:53
打赏
3楼
2. C或汇编语言可以用于单片机,C++能吗?
评论
626367
Melinda
工程师
2008-07-08 09:14:06
打赏
4楼
答
:在单片机开发中,主要是汇编和C,没有用C++的。
评论
626368
Melinda
工程师
2008-07-08 09:14:21
打赏
5楼
3. 搞单片机开发,一定要会C吗?
评论
626374
Melinda
工程师
2008-07-08 09:32:29
打赏
6楼
答
:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。
对于目前普遍使用的RISC架构的8bit MCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什么动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在资源较少单片机开发中,我们还是建议采用汇编语言比较好。
而C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用C语言进行程序设计已成为软件开发的一个主流。用C语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。
综上所述,用C语言进行单片机程序设计是单片机开发与应用的必然趋势。所以作为一个技术全面并涉足较大规模的软件系统开发的单片机开发人员最好能够掌握基本的C语言编程。
评论
626780
loof_lripa
菜鸟
2008-07-11 01:17:19
打赏
7楼
新手还是先学汇编好一点! C语言是比较容易模块化,但是,主要还是看程序员的编程风格.
评论
共7条 1/1
1
跳转至
页
回复
匿名不能发帖!请先 [
登陆
注册
]
发新帖
每日签到
有奖活动
“我踩过的那些坑”主题活动——第002期
【EEPW电子工程师创研计划】技术变现通道已开启~
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】
【EEPW在线】E起听工程师的声音!
高校联络员开始招募啦!有惊喜!!
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动!
送您一块开发板,2025年“我要开发板活动”又开始了!
打赏了!打赏了!打赏了!
我要赚赏金
打赏帖
【分享开发笔记,赚取电动螺丝刀】沁恒CH592F开发中遇到的ADC采样不准及解决方案
被打赏
¥27元
【分享开发笔记,赚取电动螺丝刀】再次移植U8g2到MAX78000开发板,使用硬件i2c
被打赏
¥24元
【我踩过的那些坑】01:使用STM32cubeMX配置H755的双核启动的“坑”
被打赏
¥2元
【我踩过的那些坑】分享一下CW32L011开发板烧录故障
被打赏
¥2元
【分享开发笔记,赚取电动螺丝刀】移植U8g2到MAX78000开发板,使用模拟i2c
被打赏
¥27元
星允派(stm32f103)I2C24C02
被打赏
¥22元
AS6221EvalKit:精度最高的数字温度传感器开发使用
被打赏
¥26元
【分享开发笔记,赚取电动螺丝刀】INA219电流模块的试验
被打赏
¥28元
【ESP-IDF系列】全流程打通,使用Tensorflow训练模型并且部署到ESP32S3进行推理
被打赏
¥31元
【分享开发笔记,赚取电动螺丝刀】在FireBeetle2ESP32P4开发板上使用ESP-IDF组件方式读取SHT30温湿度传感器
被打赏
¥25元
热门分类
STM32
MCU
通讯及无线技术
物联网技术
电子DIY
板卡试用
基础知识
软件与操作系统
我爱生活
小e食堂
最新主题
精华主题
我的帖子
-
嵌入式开发
STM32
MCU
FPGA
软件与操作系统
RISC-V
国产MCU
-
综合技术
电源与模拟
通讯及无线技术
工业控制与自动化
物联网技术
PCB与EMC
测试测量
智能新技术
基础知识
-
DIY与开源设计
电子DIY
开源硬件
设计工具
-
行业应用
汽车电子
机器人开发
-
活动中心
板卡试用
研讨会
下载专区
合作大赛
视频专区
有奖活动
-
高校专区
毕业设计专区
竞赛辅导
坤创E-Geek/天科大新电社
漓东e学堂
周师电子设计创新社区
岭南EE码农港
湖北理工TEA
东师科技爱好者
-
休闲专区
话题讨论
我爱工作
我爱生活
-
企业专区
OpenVINO生态社区
英飞凌
ADI
Xilinx
TI
Mouser
Microchip
贝能国际
Atmel
GD32
Linear
Renesas
Cypress
机智云Gizwits
Micron
-
论坛服务
投诉与建议
论坛公告
—
—
—
版
块
导
航