当前位置:首页 > 单片机 > 单片机
[导读]1.C 语言和汇编语言在单片机编程时各有哪些优缺点? 答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码 的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的 CPU, 其汇编语言

1.C 语言和汇编语言在单片机编程时各有哪些优缺点? 答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码 的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的 CPU, 其汇编语言可能有所差异,所以不易移植。
C 语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使 用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。
对于目前普遍使用的 RISC 架构的 8bit MCU 来说,其内部 ROM、RAM、 STACK 等资源都有限,如果使用 C 语言编写,一条 C 语言指令编译后,会变成 很多条机器码,很容易出现 ROM 空间不够、堆栈溢出等问题。而且一些单片机 厂家也不一定能提供 C 编译器。而汇编语言,一条指令就对应一个机器码,每 一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起 来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。


2.C 或汇编语言可以用于单片机,C++能吗? 答:在单片机编程中,主要是汇编和 C,没有用 C++的。

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

4.当开发一个较复杂而又开发时间短的项目时,用 C 还是用汇编开发好? 答:对于复杂而开发时间紧的项目时,可以采用 C 语言,但前提是要求对该 MCU 系统的 C 语言和 C 编译器非常熟悉,特别要注意该 C 编译系统所能支持的数据 类型和算法。虽然 C 语言是最普遍的一种高级语言,但不同的 MCU 厂家其 C 语言编译系统是有所差别的,特别是在一些特殊功能模块的操作上。如果对这些 特性不了解,那调试起来就有的烦了,到头来可能还不如用汇编来的快。

5.在教学中要用到 8088 和 196 芯片单片机编程,请问那里可以找到关于这方面 的书或资料?
答:有关这方面的教材,大学里常用的一本是《IBM-PC 汇编语言程序设计》清 华大学出版社出版的,在网上以及书店都是可以找到的,另外网上还可以搜索到 很多其他的教材如:《微机原理及汇编语言教程》(杨延双 张晓冬 等编著 )和
《16/32 位微机原理、汇编语言及接口技术》(作者: 钟晓捷 陈涛 ,机械工业 出版社 出版)等,可以在较大型的科技书店里查找或者直接从网上订购。

6.初学者到底是应该先学 C 还是汇编? 答:对于单片机的初学者来说,应该从汇编学起。因为汇编语言是最接近机器码 的一种语言,可以加深初学者对单片机各个功能模块的了解,从而打好扎实的基 础。

7.我是一名武汉大学电子科技大 3 的学生,学了电子线路、数字逻辑、汇编和 接口、C 语言,但是总是感觉很迷茫,觉好象什幺都不会。怎幺办?
答:大学过程是一个理论过程,实践的机会比较少,往往会造成理论与实践相脱 节,这是国内大学教育系统的通病,不过对于学生来说切不可好高骛远。一般从 大三会开始接触到一些专业课程,电子相关专业会开设相关的单片机应用课程并 且会有简单的实验项目,那么要充分把握实验课的机会,多多地实际上机操作练 习。平时可以多看看相关的电子技术杂志网站,看看别人的开发经验,硬件设计 方案以及他人的软件设计经验。有可能的话,还可以参加一些电子设计大赛,借 此机会 2--3 个人合作做一个完整系统,会更有帮助。到了大四毕业设计阶段, 也可以选择相关的课题作些实际案例增长经验。做什么事情都有个经验的积累过 程,循序渐进。

8.请问作为学生,如何学好单片机编程? 答:学习好单片机编程,最主要的是实践,在实践中增长经验。在校学生的话,实践 机会的确会比较少,但是有机会的话,可以毕业实习选择相关的课题,这样就可 以接触到实际的项目。而且如果单片机微机原理是一门主课的话,相信学校会安 排比较多的实践上机机会。有能力的话,可以找一些相关兼职工作做做,会更有 帮助。而且单片机开发应用需要软硬件结合,所以不能只满足于编程技巧如何完
美,平时也要注意硬件知识的积累,多上上电子论坛网站,买一些相关杂志。可 能的话,可以到电子市场去买一些小零件,自己搭一个小系统让它工作起来。
HOTLEK 的单片机是 RISC 结构的 8 位单片机,它可以广泛应用在家用电器、 安全系统、掌上游戏等方面。大概来说可以分成 I/O 型单片机、LCD 型单片机、 A/D 型单片机、A/D with LCD 型单片机等等。

9.如何才能才为单片机编程的高手啊? 答:要成为单片机高手,应该多实践,时常关注单片机的发展趋势;经常上一些 相关网站,从那里可以找到许多有用的资料。

10.女性是否适合单片机软件编程这个行业? 答:要根据自己的兴趣,配合自己对软件编程的耐性,男女皆适合这个行业。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭