上海龙凤419

C说话

嵌入式C说话优化技能

时辰:2024-10-27 21:01:53 松涛 C说话 我要投稿
  • 相干保举

嵌入式C说话优化技能

  嵌入式体系是指实现一种或几种特定功效的计较机体系,具备自动化水平高,呼应速率快等长处,今朝已遍及操纵于破费电子,产业节制等范畴。嵌入式体系受其操纵的硬件和运转情况的限定,很是重视代码的时辰和空间效力,因此挑选一种合适的开辟说话很是首要。上面是嵌入式C说话优化技能相干的常识,接待阅读。

  今朝,在嵌入式体系开辟中可操纵的说话良多,此中 C说话操纵得最遍及。固然用 C 说话编程具备良多长处,但基于嵌入式体系的C说话和规范 C说话又有很大区分。接上去小编连系嵌入式体系的特色和妙手们的一些堆集,给大师清算出在法式设想中代码优化的一些小技能。

  1、嵌入式C说话的特色

  作为一种布局化法式设想说话,C 说话统筹多种高等说话的特色,具备很强的功效性和可移植性。但在嵌入式体系开辟中,出于对廉价产物的须要,体系的计较才能和存储容量都很是无穷,因此若何操纵好这些资本就显得很是首要。开辟职员应注重嵌入式 C说话和规范 C 说话的区分,削减天生代码长度,进步法式履行效力,在法式设想中对代码停止优化。

  2、C代码在法式中的优化

  此刻的 C 编译器会自动对代码停止优化,但这些优化是对履行速率和代码长度的均衡。若是要取得更小且履行效力更高的代码,须要法式员手工对代码停止优化。

  3、变量范例的界说

  差别的数据范例所天生的机械代码长度相差良多,变量范例拔取的范围越小运转速率越快,占用的内存越少。能够或许或许或许操纵字符型(char)界说的变量,就不要操纵整型(int)变量来界说;能够或许或许或许操纵整型变量界说的变量就不要用长整型(long int),能不操纵浮点型(float)变量就不要操纵浮点型变量。不异范例的数据范例,有不标记对机械代码长度也有影响。因此咱们应按照现实须要公道的选用数据范例。固然,在界说变量后不要跨越变量的感化范围,若是跨越变量的范围赋值,C编译器并不报错,但法式运转成果却错了,并且如许的毛病很难发明。

  4、算法优化

  算法优化指对法式时空庞杂度的优化:在 PC 机上停止法式设想时普通不用过量存眷法式代码的是非,只需斟酌功效的实现,但嵌入式体系就必须斟酌体系的硬件资本,在法式设想时,应尽量接纳天生代码短的算法,在不影响法式功效实现的情况下优化算法。

  5、恰当的操纵宏

  在C法式中操纵宏代码能够或许或许进步法式的履行效力。宏代码本身不是函数,但操纵起来像函数。函数挪用要操纵体系的栈来保管数据,同时 CPU 在函数挪用时须要保管和规复以后的现场,停止进栈和出栈操纵,以是函数挪用也须要 CPU时辰。而宏界说就不这个题目:宏界说仅仅作为事后写好的代码嵌入到以后法式中,不发生函数挪用,所占用的仅仅是一些空间,省去了参数压栈,天生汇编说话的 call 挪用,前往参数,履行 return等历程,从而进步了法式的履行速率。固然宏粉碎了法式的可读性,使排错加倍费事,但对嵌入式体系,为了到达请求的机能,嵌入代码经常是必须的做法。

  别的,咱们还要防止不用要的函数挪用,请看上面的代码:

  [plain] view plain copy print?

  void str_print( char *str )

  {

  int i;

  for ( i = 0; i < strlen ( str ); i++ )

  {

  printf("%c",str[ i ] );

  }

  }

  void str_print1 ( char *str )

  {

  int len;

  len = strlen ( str );

  for ( i = 0; i < len; i++ )

  {

  printf("%c",str[ i ] );

  }

  }

  请注重,这两个函数的功效近似。可是,第一个函数挪用strlen函数屡次,而第二个函数只挪用函数strlen一次。因此第二个函数机能较着比第一个好。

  6、内嵌汇编

  法式中对时辰请求刻薄的局部能够或许或许用内嵌汇编来重写,以带来速率上的光鲜较着进步。可是,开辟和测试汇编代码是一件辛劳的使命,它将破费更长的时辰,因此要稳重挑选要用汇编的局部。在法式中,存在一个80-20准绳,即20%的法式耗损了80%的运转时辰,因此咱们要改良效力,最首要是斟酌改良那20%的代码。

  7、进步轮回说话的效力

  在 C 说话中轮回语句操纵频仍,进步轮回体效力的根基体例便是下降轮回体的庞杂性:

  (1) 在多重轮回中,应将最长的轮回放在最内层,最短的轮回放在最外层。如许能够或许或许削减 CPU跨切轮回的次数。如例 1-1 的效力比 1-2 的效力要低:

  [plain] view plain copy print?

  for (j = 0; j < 30; j++)

  {

  for (i = 0; i < 10; i++)

  {……}

  } // 例子 1-1

  for (i = 0; i < 10; i++)

  {

  for (j = 0; j < 30; j++)

  {……}

  } // 例子 2-2 法式部简练但效力高

  8、进步 switch 语句的效力

  switch 语句是 C 说话中经常操纵的挑选语句, 在编译时会发生if- else- if 嵌套代码,并按照挨次停止比拟,发明婚配时,就跳转到知足前提的语句履行。

  当 switch 语句中的 case 标号良多时,为了削减比拟的次数,能够或许或许把发生频次绝对高的前提放到第一名或把全部 switch 语句转化嵌套 switch 语句。把发生频次高的 case 标号放在最外层的 switch 语句中,发生绝对频次绝对低的 case 标号放在别的的 switch 语句中。如例 3 中,把发生率高的case 标号放在外层的 switch 语句中,把发生频次低的放在缺省的(default)内层 switch 语句中。

  [plain] view plain copy print?

  switch (抒发式)

  {

  case 值1:

  语句1: break;

  case 值2:

  语句2:break;

  ……

  /*把发生频次低的放在内层的switch语句中*/

  default:

  switch (抒发式)

  {

  case 值n:

  语句n: break;

  case 值m:

  语句m: break;

  ……

  }

  }

  例子3 操纵嵌套switch语句进步法式履行效力。

  9、防止操纵规范库

  操纵 C说话规范库能够或许或许加速开辟进度,但因为规范库须要想法处置用户统统能够或许或许碰到的情况,以是良多规范库代码很大。比方规范库中的 sprintf函数很是大。这个庞杂的代码中有很大一局部用于处置浮点数,若是法式中不须要格局化浮点数值( 如%f),法式设想职员就能够或许或许按照现实情况用少许的代码实现这个功效。

  10、接纳数学体例优化法式

  数学是计较机之母,不数学的按照和根本,就不计较机的成长,以是在编写法式的时辰,接纳一些数学体例会对法式的履行效力稀有量级的进步。偶然辰这个题目经常被大师疏忽, 对不履历的法式员来讲更是如斯。比方:求 1~100 的和:

  sum = 100*(100+1)/2;

  数学公式: (a1 + an)*n/2

  操纵C说话的位操纵能够或许或许削减除法和取模的运算。在计较机法式中数据的位是能够或许或许操纵的最小数据单位,现实上能够或许或许用“位运算”来实现统统的运算和操纵。因此,矫捷的位操纵能够或许或许有用地进步法式运转的效力。比方用用位操纵区取代除法:比方:128 / 8 ->> 128 >> 3;

  优化算法和数据布局对进步代码的效力有很大的赞助。固然偶然辰时辰效力和空间效力是对峙的,此时应阐发哪一个更首要, 做出恰当的折衷。别的,在停止优化的时辰不要单方面的寻求松散的代码,因为松散的代码并不能发生高效力的机械码。

  11、存储器分派

  因为本钱限定,嵌入式体系存储器容量无穷。法式中统统的变量,包罗的库函数和仓库等都操纵无穷的内存:全局变量在全部法式范围内都有用。法式履行完后才会开释;静态变量的感化范围也是全部法式,只需局部变量中的静态变量在函数履行完后会开释。因此, 在法式中应尽量操纵局部变量,进步内存操纵效力。法式中堆的巨细受限于统统全局数据和栈空间都分派后的残剩量,若是堆太小,法式不能够或许或许或许在须要的时辰分派内存。因此在操纵 malloc 函数请求内存以后必然要用 free 函数停止开释, 防止内存泄漏。

  12、挑选好的无穷轮回

  在编程中,咱们经常须要用到无穷轮回,经常操纵的两种体例是while (1) 和 for (;;)。这两种体例结果完整一样,但那一种更好呢?然咱们看看它们编译后的代码:

  编译前:

  while (1);

  编译后:

  mov eax,1

  test eax,eax

  je foo+23h

  jmp foo+18h

  编译前:

  for (;;);

  编译后:

  jmp foo+23h

  较着,for (;;)指令少,不占用寄放器,并且不判定,跳转,比while (1)好。

  13、操纵Memoization,以防止递归反复计较

  斟酌Fibonacci(斐波那契)题目,Fibonacci题目是能够或许或许经由历程简略的递归体例来处置:

  [plain] view plain copy print?

  1. int fib ( n )

  2. {

  3. if ( n == 0 || n == 1 )

  4. {

  5. return 1;

  6. }

  7. else

  8. {

  9. return fib( n - 2 ) + fib ( n - 1 );

  10. }

  11. }

  注:在这里,咱们斟酌Fibonacci 系列从1起头,因此,该系列看起来:1,1,2,3,5,8,…

  注重:从递归树,咱们计较fib(3)函数2次,fib(2)函数3次。这是不异函数的反复计较。若是n很是大,fib函数的效力会比拟低。Memoization是一个简略的手艺,能够或许或许被用在递归,加强计较速率。fibonacci 函数Memoization的代码以下:

  [plain] view plain copy print?

  1. int calc_fib ( int n )

  2. {

  3. int val[ n ] , i;

  4. for ( i = 0; i <=n; i++ )

  5. {

  6. val[ i ] = -1; // Value of the first n + 1 terms of the fibonacci terms set to -1

  7. }

  8. val[ 0 ] = 1; // Value of fib ( 0 ) is set to 1

  9. val[ 1 ] = 1; // Value of fib ( 1 ) is set to 1

  10. return fib( n , val );

  11. }

  12.

  13. int fib( int n , int* value )

  14. {

  15. if ( value[ n ] != -1 )

  16. {

  17. return value[ n ]; // Using memoization

  18. }

  19. else

  20. {

  21. value[ n ] = fib( n - 2 , value ) + fib ( n - 1 , value ); // Computing the fibonacci term

  22. }

  23. return value[ n ]; // Returning the value

  24. }

  除编程上的技能外,为进步体系的运转效力,咱们凡是也须要最大能够或许或许地操纵各类硬件装备本身的特色来减小其运转开消,比方减小间断次数,操纵DMA传输体例等。

  嵌入式C说话简介

  简略地说,嵌入式体系集体系的操纵软件与硬件于一体,近似于 PC 中 BIOS 的使命体例,具备软件代码小、高度自动化、呼应速率快等特色,出格合适于请求及时和多使命的体系。嵌入式体系首要由嵌入式处置器、相干撑持硬件、嵌入式操纵体系及操纵软件体系等构成,它是可自力使命的“器件”。

  嵌入式体系几近包罗了糊口中的统统电器装备,如掌上 PDA 、挪动计较装备、电视机顶盒、手机上彀、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化体系、电梯、空调、宁静体系、自动售货机、蜂窝式德律风、破费电子装备、产业自动化仪表与医疗仪器等。

  嵌入式体系的硬件局部,包罗处置器 / 微处置器、存储器及外设器件和 I/O 端口、图形节制器等。嵌入式体系有别于普通的计较机处置体系,它不具备像硬盘那样大容量的存储介质,而大多操纵 EPROM 、 EEPROM 或闪存 (Flash Memory) 作为存储介质。软件局部包罗操纵体系软件 ( 请求及时和多使命操纵 ) 和操纵法式编程。操纵法式节制着体系的运作和行动;而操纵体系节制着操纵法式编程与硬件的交互感化。 据不完整统计,今朝全天下嵌入式处置器的品种总量已跨越 1000 种,风行的体系布局有 30 多个系列。此中 8051 体系占大都,出产这类单片机的半导体厂家有 20 多个,共 350 多种衍出产物,仅 Philips 就有近 100 种。此刻几近每一个半导体建造商都出产嵌入式处置器,越来越多的公司有本身的处置器设想局部。嵌入式处置器的寻址空间普通从 64kB 到 16MB ,处置速率为 0.1~2000MIPS ,经常操纵封装 8~144 个引脚。

  按照近况,嵌入式计较机可分红上面几类。

  (1) 嵌入衰落处置器 (Embedded Microprocessor Unit, EMPU)

  嵌入衰落处置器接纳“加强型”通用微处置器。因为嵌入式体系凡是操纵于情况比拟卑劣的情况中,因此嵌入衰落处置器在使命温度、电磁兼容性和靠得住性方面的请求较通用的规范微处置器高。可是,嵌入衰落处置器在功效方面与规范的微处置器根基上是一样的。按照现实嵌入式操纵请求,将嵌入衰落处置器拆卸在特地设想的主板上,只保留和嵌入式操纵有关的主板功效,如许能够或许或许大幅度减小体系的体积和功耗。和产业节制计较机比拟,嵌入衰落处置器构成的体系具备体积小、分量轻、本钱低、靠得住性高的长处,但在其电路板上必须包罗 ROM 、 RAM 、总线接口、各类外设等器件,从而下降了体系的靠得住性,手艺失密性也较差。由嵌入衰落处置器及其存储器、总线、外设等装置在一块电路主板上构成一个凡是所说的单板机体系。嵌入式处置器今朝首要有 Am186/88 、 386EX 、 SC-400 、 Power PC 、 68000 、 MIPS 、 ARM 系列等。

  (2) 嵌入衰落节制器 (Microcontroller Unit, MCU) (3) 嵌入式 DSP 处置器 (Embedded Digital Signal Processor, EDSP (4) 嵌入式片上体系 (System On Chip, SOC)

  跟着 EDI 的推行和 VLSI 设想的进步化,和半导体工艺的敏捷成长,能够或许或许在一块硅片上实现一个更加庞杂的体系,这就发生了 SOC 手艺。各类通用处置器内核将作为 SOC 设想公司的规范库,和其余良多嵌入式体系外设一样,成为 VLSI 设想中一种规范的器件,用规范的 VHDL 、 Verlog 等硬件说话描写,存储在器件库中。用户只需界说出其全部操纵体系,仿真经由历程后就能够或许或许将设想图交给半导体工场建造样品。如许除某些没法集成的器件以外,全部嵌入式体系大局部都可集成到一块或几块芯片中去,操纵体系电路板将变得很简略,对减小全部操纵体系体积和功耗、进步靠得住性很是有益。 SOC 可分为通用和公用两类,通用 SOC 如 Infineon(Siemens) 的 TriCore 、 Motorola 的 M-Core ,和某些 ARM 系列器件,如 Echelon 和 Motorola 连系研制的 Neuron 芯片等;公用 SOC 普通公用于某个或某类体系中,如 Philips 的 Smart XA ,它将 XA 单片机内核和撑持跨越 2048 位庞杂 RSA 算法的 CCU 单位建造在一块硅片上,构成一个可加载 Java 或 C 说话的公用 SOC ,可用于互联网宁静方面。

  嵌入式操纵体系是一种撑持嵌入式体系操纵的操纵体系软件,它是嵌入式体系 ( 包罗硬、软件体系 ) 极其首要的构成局部,凡是包罗与硬件相干的底层驱动软件、体系内核、装备驱动接口、通讯和谈、图形界面、规范化阅读器等 Browser 。嵌入式操纵体系具备通用操纵体系的根基特色,如能够或许或许或许有用办理越来越庞杂的体系资本;能够或许或许或许把硬件假造化,使得开辟职员从忙碌的驱动法式移植和保护中摆脱出来;能够或许或许或许供给库函数、驱动法式、东西集和操纵法式 。与通用操纵体系比拟拟,嵌入式操纵体系在体系及时高效性、硬件的相干依靠性、软件固态化和操纵的公用性等方面具备较为凸起的特色。

  1. 嵌入式操纵体系的品种

  普通情况下,嵌入式操纵体系能够或许或许分为两类,一类是面向节制、通讯等范畴的及时操纵体系,如 WindRiver 公司的 VxWorks 、 ISI 的 pSOS 、 QNX 体系软件公司的 QNX 、 ATI 的 Nucleus 等;别的一类是面向破费电子产物的非及时操纵体系,这类产物包罗小我数字助理 (PDA) 、挪动德律风、机顶盒、电子书、 WebPhone 等。

  a. 非及时操纵体系

  初期的嵌入式体系中不操纵体系的观点,法式员编写嵌入式法式凡是间接面临裸机及裸装备。在这类情况下,凡是把嵌入式法式分红两局部,即前台法式和背景法式。前台法式经由历程中段来处置事务,其布局普通为无穷轮回;背景法式则主持全部嵌入式体系软、硬件资本的分派、办理和使命的调剂,是一个体系办理调剂法式。这便是凡是所说的前背景体系。普通情况下,背景法式也叫使命级法式,前台法式也叫事务处置级法式。在法式运转时,背景法式查抄每一个使命是不是具备运转前提,经由历程必然的调剂算法来实现呼应的操纵。对及时性请求出格严酷的操纵凡是由间断来实现,仅在间断办事法式中标记事务的发生,不再做任何使命就加入间断,颠末背景法式的调剂,转由前台法式实现事务的处置,如许就不会形成在间断办事法式中处置费时的事务而影响后续和其余间断。

  现实上,前背景体系的及时性比估计的要差。这是因为前背景体系以为统统的使命具备不异的优先级别,便是同等的,并且使命的履行又是经由历程 FIFO 行列列队,因此对那些及时性请求高的使命不能够或许或许当即获得处置。别的,因为前台法式是一个无穷轮回的布局,一旦在这个轮回体中正在处置的使命瓦解,使得全部使命行列中的其余使命得不到机遇被处置,从而形成全部体系的瓦解。因为这类体系布局简略,几近不须要 RAM/ROM 的额定开消,因此在简略的嵌入式操纵被遍及操纵。

  b. 及时操纵体系

  及时体系是指能在肯定的时辰内履行其功效并对外部的异步事务做出呼应的计较机体系。其操纵的准确性不只依靠于逻辑设想的准确水平,并且与这些操纵停止的时辰有关。“在肯定的时辰内”是该界说的焦点。也便是说,及时体系是对呼合时辰有严酷请求的。

  及时体系对逻辑和时序的请求很是严酷,若是逻辑和时序呈现误差将会引发严峻效果。及时体系有两种范例:软及时体系和硬及时体系。软及时体系仅请求事务呼应是及时的,并不请求限定某一使命必须在多永劫辰内实现;而在硬及时体系中,不只请求使命呼应要及时,并且请求在划定的时辰内实现事务的处置。凡是,大大都及时体系是二者的连系。及时操纵软件的设想普通比非及时操纵软件的设想坚苦。及时体系的手艺关头是若何保障体系的及时性。

  及时多使命操纵体系是指具备及时性、能撑持及时节制体系使命的操纵体系。其首要使命是调剂统统可操纵的资本实现及时节制使命,其次才着眼于进步计较机体系的操纵效力,首要特色是要知足对时辰的限定和请求。及时操纵体系具备以下功效:使命办理 ( 多使命和基于优先级的使命调剂 ) 、使命间同步和通讯 ( 旌旗灯号量和邮箱等 ) 、存储器优化办理 ( 含 ROM 的办理 ) 、及时时钟办事、间断办理办事。及时操纵体系具备以下特色:范围小,间断被屏障的时辰很短,间断处置时辰短,使命切换很快。

  及时操纵体系可分为可抢占型和不可抢占型两类。对基于优先级的体系而言,可抢占型及时操纵体系是指内核能够或许或许抢占正在运转使命的 CPU 操纵权并将操纵权交给进入停当态的优先级更高的使命,是内核抢了 CPU 让别的使命运转。不可抢占型及时操纵体系操纵某种算法并决议让某个使命运转后,就把 CPU 的节制权完整交给了该使命,直到它自动将 CPU 节制权还返来。间断由间断办事法式来处置,能够或许或许激活一个休眠态的使命,使之进入停当态;而这个进入停当态的使命还不能运转,一向要比及以后运转的使命自动交出 CPU 的节制权。操纵这类及时操纵体系的及时性比不操纵及时操纵体系的体系机能好,其及时性取决于最长使命的履行时辰。不可抢占型及时操纵体系的毛病谬误也恰好是这一点,若是最长使命的履行时辰不能肯定,体系的及时性就不能肯定。

  可抢占型及时操纵体系的及时性好,优先级高的使命只需具备了运转的前提,或说进入了停当态,就能够或许或许当即运转。也便是说,除优先级最高的使命,其余使命在运转历程中都能够或许或许随时被比它优先级高的使命间断,让后者运转。经由历程这类体例的使命调剂保障了体系的及时性,可是,若是使命之间抢占 CPU 节制权处置不好,会发生体系瓦解、死机等严峻效果。

  2. 嵌入式操纵体系的成长

  嵌入式操纵体系伴跟着嵌入式体系的成长履历了 4 个比拟较着的阶段。

  第一阶段是无操纵体系的嵌入算法阶段,因此单芯片为焦点的可编程节制器情势的体系,同时具备与监测、伺服、唆使装备相配合的功效。这类体系大局部操纵于一些专业性极强的产业节制体系中,普通不操纵体系的撑持,经由历程汇编说话编程对体系停止间接节制,运转竣事后断根内存。这一阶段体系的首要特色是:体系布局和功效都绝对单一,处置效力较低,存储容量较小,几近不用户接口。因为这类嵌入式体系操纵简洁、价钱很低,之前在国际产业范畴操纵较为遍及,可是已远远不能顺应高效的、须要大容量存储介质的古代化产业节制和新兴的信息家电等范畴的须要。

  第二阶段因此嵌入式 CPU 为根本、以简略操纵体系为焦点的嵌入式体系。这一阶段体系的首要特色是: CPU 品种单一,通用性比拟差;体系开消小, 效力高;普通装备体系仿真器,操纵体系具备必然的兼容性和扩大性;操纵软件较专业,用户界面不够友爱;体系首要用来节制体系负载和监控操纵法式运转。

  第三阶段是通用的嵌入式及时操纵体系阶段,因此嵌入式操纵体系为焦点的嵌入式体系。这一阶段体系的首要特色是:嵌入式操纵体系能运转于各类差别范例的微处置器上,兼容性好;操纵体系内核精小、效力高,并且具备高度的模块化和扩大性;具备文件和目次办理、装备撑持、多使命、收集撑持、图形窗口和用户界面等功效;具备大批的操纵法式接口 (API) ,开辟操纵法式简略;嵌入式操纵软件丰硕。

  第四阶段因此基于 Internet 为标记的嵌入式体系,这是一个正在敏捷成长的阶段。今朝大大都嵌入式体系还伶仃于 Internet 以外,但跟着 Internet 的成长和 Internet 手艺与信息家电、产业节制手艺等连系日趋紧密亲密,嵌入式装备与 Internet 的连系将代表着嵌入式手艺的真正将来。

  3. 操纵及时操纵体系的须要性

  嵌入式及时操纵体系在今朝的嵌入式操纵顶用得越来越遍及,特别在功效庞杂、体系庞杂的操纵中显得越来越首要。

  起首,嵌入式及时操纵体系进步了体系的靠得住性。在节制体系中,出于宁静方面的斟酌,请求体系最少不能瓦解,并且还要有自愈才能。不只请求在硬件设想方面进步体系的靠得住性和抗搅扰性,并且也应在软件设想方面进步体系的抗搅扰性,尽能够或许或许地削减宁静缝隙和不靠得住的隐患。持久以来的前背景体系软件设想在碰到强搅扰时,使得运转的法式发生非常、犯错、跑飞,乃至死轮回,形成了体系的瓦解。而及时操纵体系办理的体系,这类搅扰能够或许或许只是引发多少历程中的一个被粉碎,能够或许或许经由历程体系运转的体系监控历程对其停止修复。凡是情况下,这个体系监督历程用来监督各历程运转状态,碰到非常情况时采用一些利于体系不变靠得住的办法,如把有题目的使命断根掉。从某种意思上说,不操纵体系的计较机 ( 裸机 ) 是不用的。在嵌入式操纵中,只需把 CPU 嵌入到体系中,同时又把操纵体系嵌入出来,才是真实的计较机嵌入式操纵。

  4. 及时操纵体系的优毛病谬误

  在嵌入式及时操纵体系情况下开辟及时操纵法式使法式的设想和扩大变得轻易,不须要大的修改就能够或许或许增添新的功效。经由历程将操纵法式朋分成多少自力的使命模块,使操纵法式的设想历程大为简化;并且对及时性请求刻薄的事务都获得了疾速、靠得住的处置。经由历程有用的体系办事,嵌入式及时操纵体系使得体系资本获得更好的操纵。

【嵌入式C说话优化技能】相干文章:

嵌入式C说话机能优化体例10-22

c说话空间换时辰优化代码的技能体例06-19

嵌入式C说话进修法门08-25

嵌入式C说话编程小常识12-20

C说话摆布法例的技能10-03

若何优化C说话(单片机)06-01

C说话高效编程的4个小技能10-27

C说话头文件防止反复包罗的体例技能08-28

C说话的布局10-14

C说话考点精选06-29