0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式新手该先学C语言还是先学汇编?

传感器技术 来源:传感器技术 2020-08-14 10:16 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

嵌入式新手该先学C语言还是先学汇编?这是一个非常有争议的问题。而目前C语言已渐渐深入了,有意向学习嵌入式的不少,但是疑问是,学嵌入式能不能只用C 写程序?


观点1:汇编,只是一个语言工具。你要学习的,其实是ARM

想要搞精、搞深,汇编和计算机系统知识是必须的。尤其是对于底层嵌入式系统工程师来说,汇编是必须要掌握的。
首先系统启动、上电代码都是汇编,汇编不掌握,你如何知道系统是如何启动的?
想深入链接C语言的函数是如何调用的,参数是如何传递的,想了解指针的本质、函数名的本质,就要深入汇编级代码,通过反汇编,看底层指令是如何对C语言的高级特性进行处理的,这都需要汇编语言的功底。掌握汇编,是成为底层系统工程师、牛逼工程师的必备技能。
另外,汇编没那么恐怖,也就是那十几个常用的命令,再加上配套的伪指令,基本程序结构,半天就差不多了。与其花半天时间在这里纠结要不要学,不如赶紧学,技不压身。当然,学习汇编之前,你还要对CPU处理器架构、寄存器有一个了解,你要知道,汇编程序都是跟这些寄存器打交道的。学ARM汇编的话,需要掌握ARM处理器的基本架构、不同模式下的寄存器配置。了解之后,再去学习汇编,你会发现,你学习的哪里是汇编?学习的明明是ARM嘛!
汇编,只是一个语言工具,一些助记符而已。你要学习的,其实是ARM。

观点2:先学习C语言

一个合格的硬件工程师,应该都学,我推荐你先学习C语言,因为汇编入手太慢,写程序要以C为主,需要高速的或者底层的操作用内嵌汇编的方式完成。但是汇编和C同样重要,相互配合,缺一不可!

汇编的重要性:

帮助你从根本上彻底和完全了解芯片的结构和性能,以及工作原理,如何使用。

在小的芯片上实现小的系统。

系统的调试。尽管你使用了高级语言,在调试中可以帮助你了解C代码的性能和特点,甚至找到使用开发平台本身的BUG。

编写时序要求严格的代码,实现一些高级语言不易实现的功能。

从目前的技术和应用发展来看,对工程师的硬件要求越来越高。以我的观点,作为单片机和嵌入式系统开发真正的高手,应具备以下几个方面的综合能力:
1.硬件:模拟数字电路的雄厚基础,了解跟踪现在市场上的各种元器件的应用和发展,能够进行可靠、完善的电路设计以及PCB的设计。

2.软件:不仅需要精通汇编语言,也要精通C语言,要有好的单片机系统程序设计理念和能力,学校中学的那些分支结构、循环结构等基本原理远远不够!要有基本的数据结构的知识。否则你如何设计实现USB HOST读U盘的接口? 如何实现嵌入式WEB系统? 以及如何使用真正了解和使用RTOS? 具备计算机网络和数字通信的基础知识,从根本上熟悉和了解各种协议的构造和实现,如:UARTRS232、SPI、I2C、USB、 IEEE802、TCP/IP等。

3.计算机应用的高手

4.熟练阅读英文资料:热爱和喜欢电子技术,具备刻苦精神、踏踏实实,不弄虚作假,不浮躁。多动手,勤实践。有强烈的专业和钻研精神。最后一条最重要!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20145

    浏览量

    328750
  • 寄存器
    +关注

    关注

    31

    文章

    5588

    浏览量

    129051
  • C语言
    +关注

    关注

    183

    文章

    7642

    浏览量

    144599

原文标题:学嵌入式能不能只学C?真正的开发高手该会些啥?

文章出处:【微信号:WW_CGQJS,微信公众号:传感器技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ARM嵌入式这样

    工程师的的终点只有一个,就是真正的技术专家。 嵌入式技术大体上可分为编程语言,内核技术,操作系统,总线接口,系统集成。其实细心的可以发现,在 CSDN的论坛分区上就已经体现了,除了系统集成只是在嵌入式
    发表于 12-04 07:48

    C语言嵌入式开发中的应用

    C 语言在汽车电子控制系统开发中的主导地位。 2、设备驱动程序 设备驱动程序是嵌入式系统中连接硬件和软件的桥梁,它负责实现嵌入式系统与外部设备之间的通信和控制。
    发表于 11-21 08:09

    嵌入式与FPGA的区别

    分为算法和控制,而算法的工资会比控制高,因为技术含量比控制高得多,但算法适合高数比较好的人学。 ⭕最后在了解下入行门槛? ✅1、嵌入式系统的门槛比较低,不管是嵌入式linux还是纯软,开发语言
    发表于 11-20 07:12

    2025年最佳的嵌入式编程语言有哪些呢?

    嵌入式系统是现代科技不可或缺的一部分。它们存在于家用电器、汽车、住宅、医院、商店等各个领域。它们与我们的社会紧密相连。选择合适的语言来构建嵌入式系统对于成功至关重要。那么,2025年最佳的嵌入
    的头像 发表于 11-14 10:27 894次阅读
    2025年最佳的<b class='flag-5'>嵌入式</b>编程<b class='flag-5'>语言</b>有哪些呢?

    C语言是否会阻碍嵌入式的发展?

    门老朋友:C语言。电子工业已经走过了50多年,而C语言仍然是超过六成嵌入式项目的首选。它驱动着全球数以亿计,甚至以万亿计的设备。但它的统治地
    的头像 发表于 11-14 10:27 145次阅读
    <b class='flag-5'>C</b><b class='flag-5'>语言</b>是否会阻碍<b class='flag-5'>嵌入式</b>的发展?

    ElfBoard科普课堂|为什么C语言嵌入式技术领域中的地位难以撼动?

    嵌入式技术领域,“C语言与硬件”的组合,常被比作计算机体系中的“二进制与晶体管”——它们是无数智能设备稳定运行的底层支柱,贯穿了嵌入式应用的核心环节。
    的头像 发表于 11-06 10:00 6541次阅读
    ElfBoard科普课堂|为什么<b class='flag-5'>C</b><b class='flag-5'>语言</b>在<b class='flag-5'>嵌入式</b>技术领域中的地位难以撼动?

    嵌入式需要掌握哪些核心技能?

    : 1)C语言与底层编程 核心地位:C语言嵌入式开发的基石,需精通指针操作、内存管理、位运算,直接操控硬件资源。 延伸技能:
    发表于 10-21 16:25

    分享一个嵌入式学习阶段规划

    给大家分享一个嵌入式学习阶段规划: (一)基础筑牢阶段(约 23 天) 核心目标:打牢 C 语言、数据结构、电路基础C 语言开发:
    发表于 09-12 15:11

    嵌入式从入门到进阶,怎么?

    嵌入式从入门到进阶,怎么? 嵌入式学习的核心是 “软硬结合的技术壁垒”,科学分层才能高效突破。以下是从入门到高阶的精简路线,帮你避开弯路: 1、基础奠基层:构建技术底座 C
    发表于 09-02 09:44

    嵌入式工程师为什么要QT?

    Qt对嵌入式工程师来说,真的很重要吗? Qt是一个跨平台的C++应用程序开发框架,非常适合嵌入式系统的开发,Qt在嵌入式开发中具有很重要的作用。 在项目实践中可以看出,Qt在工业自动化
    发表于 08-14 15:15

    入行嵌入式应该怎么准备?

    知识: 一、C/C++编程C/C++是嵌入式系统开发中最常用的编程语言。熟练掌握
    发表于 08-06 10:34

    硬件好还是软件好?

    学习软件可能更适合你。软件行业的就业机会非常广泛,涵盖了互联网、游戏开发、金融、医疗等多个领域。 此外,硬件和软件之间也存在一定的交叉领域。例如,嵌入式系统开发需要结合硬件和软件的知识,物联网技术也需要
    发表于 04-07 15:27

    想在嵌入式领域高薪就业?迈过这些人才门槛!

    嵌入式开发的世界,如今正经历着一场变革,同时也暴露出诸多问题。现在,会编写嵌入式程序的人随处可见,树莓派、Arduino 等开发板的出现,让嵌入式编程变得轻而易举,就连软件工程师也能轻松转型从事
    的头像 发表于 03-20 10:42 767次阅读
    想在<b class='flag-5'>嵌入式</b>领域高薪就业?<b class='flag-5'>先</b>迈过这些人才门槛!

    嵌入式好找工作吗?

    嵌入式好找工作吗? 在当今科技飞速发展的时代,众多新兴职业领域不断涌现,嵌入式也是很多人选择职业发展方向时的一个选项。那么,嵌入式好找工
    发表于 12-16 15:43

    新手怎么嵌入式?

    新手怎么嵌入式? 在科技飞速发展的今天,嵌入式技术已经渗透到我们生活的各个角落,从智能手机到智能家居,从汽车电子到医疗设备。对于新手而言,
    发表于 12-12 10:51