


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.1 C51的數(shù)據(jù)類型、變量及模式2012/10/76數(shù)據(jù)類型長度(bit/Byte)取值范圍bit10,1unsigned char8 (1B)0255signed char8 (1B)-128127unsigned int16 (2B)065535signed int16 (2B)-3276832767unsigned long32 (4B)0(即232-1)signed long32 (4B)-21474836482147483647float32 (4B)±1.175494E-38±3.402823E+38通
2、用指針24 (3B)可尋址空間范圍065535具體指針8/16 (1/2B)可尋址空間范圍0255 / 065535單片機(jī)原理及系統(tǒng)設(shè)計5.1.1 C51的數(shù)據(jù)類型、變量及模式1、C51的數(shù)據(jù)類型lC51的數(shù)據(jù)結(jié)構(gòu)是以數(shù)據(jù)類型的形式出現(xiàn)的,數(shù)據(jù)類型可分為基本數(shù)據(jù)類型和構(gòu)造(復(fù)雜)數(shù)據(jù)類型, 構(gòu)造數(shù)據(jù)類型是由基本數(shù)據(jù)類型構(gòu)造而成;lC51支持的數(shù)據(jù)類型如下表所示:2012/10/75第五章單片機(jī)C語言程序設(shè)計5.1 C51的數(shù)據(jù)類型與基本運算2012/10/74單片機(jī)原理及系統(tǒng)設(shè)計為什么要使用C語言進(jìn)行程序開發(fā)lC語言對使用者盡可能地隱藏了處理器底層的操作, 使得代碼可以在不同的目標(biāo)系統(tǒng)(CPU
3、)之間方便地 移植。目前幾乎所有微處理器都有配套的C編譯器;l即使如此,匯編語言仍不可替代。首先,掌握匯 編語言有利于寫出高質(zhì)量的C語言代碼;其次,在一些時間/速度敏感的操作(如中斷處理)中,使用匯編語言往往是唯一的選擇。2012/10/73單片機(jī)原理及系統(tǒng)設(shè)計為什么要使用C語言進(jìn)行程序開發(fā)lC 語言有很好的結(jié)構(gòu)性,便于模塊化,更容易閱讀和維護(hù),程序有很好的可移植性,能夠很方便的從一個工程移植到另一個工程,從而減少開發(fā)時間;l用C編寫程序比匯編更符合人們的思考習(xí)慣,開發(fā)者可以更專心的考慮解決問題的算法,而不是考慮一些使用匯編語言上的細(xì)節(jié)問題,這樣可從總體上減少開發(fā)和調(diào)試的時間。2012/10/
4、72第五章單片機(jī)C語言程序設(shè)計概述2012/10/712南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(3)自增量和自減量運算符l基本的運算符有兩種:+增量運算符-減量運算符l作用:對運算對象作加l和減1運算l特點:位置相關(guān),+i與i+加1操作執(zhí)行順序不同l+/-只能用于變量,不能用于常數(shù)或表達(dá)式2012/10/712單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(2) 算術(shù)運算符l基本的算術(shù)運算符有五種:+加或取正值運算符-減或取負(fù)值運算符*乘運算符/除運算符%取余運算符l運算優(yōu)先級:先乘除、取模,后加減,括號最優(yōu)先l運算時類型轉(zhuǎn)換優(yōu)
5、先級char à int à long à double à float2012/10/711單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(1) 賦值運算符l在C語言中,符號“=”被稱為賦值運算符。賦值運算符的作用是將一個數(shù)據(jù)的值賦給一個變量。l利用賦值運算符將一個變量與一個表達(dá)式連接起來的式子稱為賦值表達(dá)式,在賦值表達(dá)式的后面加一個分號“;”便 了賦值語句。一個賦值語句的格式如下:變量= 表達(dá)式; 例如:x = 9;2012/10/710單片機(jī)原理及系統(tǒng)設(shè)計5.1.1 C51的數(shù)據(jù)類型、變量及模式lSFR在頭文件中的定義sfrSCON=
6、0x98;/ 定義SCONsbitSM0 =0x9F;/ 定義SCON 的各位sbitSM1 =0x9E;sbitSM2 =0x9D;sbitREN =0x9C;sbitTB8 =0x9B;sbitRB8 =0X9A;sbitTI=0x99;sbitRI=0x98;2012/10/79單片機(jī)原理及系統(tǒng)設(shè)計5.1.1 C51的數(shù)據(jù)類型、變量及模式l特殊功能寄存器Ø特殊功能寄存器用sfr 來定義,而sfr16 用來定義16 位的特殊功能寄存器如DPTR;Ø可以通過名字或地址來 特殊功能寄存器。 可位尋址的特殊功能寄存器(如SCON)的位變量定義用關(guān)鍵 字sbit 。這些定義是用
7、引入頭文件(* H)實現(xiàn)的;ØKeil為目前大多數(shù)51內(nèi)核的單片機(jī)配備了相應(yīng)的頭文件, 這些頭文件包含了該種單片機(jī)所有的特殊功能寄存器以及位的定義,通過包含這些頭文件可以很容易的進(jìn)行新的擴(kuò)展。2012/10/78單片機(jī)原理及系統(tǒng)設(shè)計5.1.1 C51的數(shù)據(jù)類型、變量及模式l為了更加有利地利用8051的結(jié)構(gòu),C51引入了一種特殊的位數(shù)據(jù)類型(bit)。位數(shù)據(jù)在CPU內(nèi)部的位尋址區(qū)中,可像操作其它變量一樣對其操作,但是位變量不能進(jìn)行指針操作。2012/10/773南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(9)指針和地址運算符l對于指針和地
8、址,C語言提供了兩種運算符:*指針,取指向的內(nèi)容&地址,取變量的地址l取內(nèi)容和取地址運算的一般形式分別為:變量 = *指針變量;指針變量 = &目標(biāo)變量;2012/10/718單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(8)條件運算符l“?:”是C語言中唯一的一個三目運算符,將三個表達(dá)式連接起來一個條件表達(dá)式,格式為:邏輯表達(dá)式 ? 表達(dá)式1 : 表達(dá)式2l當(dāng)邏輯表達(dá)式為真時,返回表達(dá)式1的值,否則返回表達(dá)式2的值。l例如:max = a>b ? a : b; / 取a和b中的大值等價于:if(a>b) max = a;else max = b;2
9、012/10/717單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(7)復(fù)合賦值運算符l在賦值運算符“=”的前面加上其它運算符,就構(gòu)成了復(fù)合賦值運算符。l可以和“=”復(fù)合賦值運算符的運算符包括:+、-、*、/、%、<<、>>、&、|、l例如:x += 2;/ 將變量x加2后存回x中等價于:x = x+2;2012/10/716單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(6)位運算符l基本的位運算符有六種:按位取反<<左移>>右移&按位與按位異或|按位或l按位對變量進(jìn)行運算,但并不改變參與運算的變量的
10、值。位運算的一般形式如下:x << 2;/ 將變量x中的各位左移2位2012/10/715單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(5)邏輯運算符l基本的邏輯運算符有三種:|邏輯或&&邏輯與!邏輯非l使用邏輯運算符求某個條件表達(dá)式的邏輯值,就是邏輯表達(dá)式,例如:x && y;/ x,y都為真時返回真a | b;/ a,b任一為真時返回真!z;/ 對z取非2012/10/714單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(4)關(guān)系運算符l基本的關(guān)系運算符有六種:>大于<小于>=大于等于優(yōu)先級相同(高
11、)<=小于等于=等于!=不等于優(yōu)先級相同(低)l格式:表達(dá)式1 關(guān)系運算符 表達(dá)式2l特點:用來判別某個條件是否滿足,當(dāng)所指定的條件滿足時結(jié)果為1,不滿足時結(jié)果為0。2012/10/7134南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式lC51還程序指定變量的器類型。C51編譯器支持的器類型及空間以及方式為:區(qū)變量位置及方式data變量于內(nèi)部RAM 的低128字節(jié),可在一個周期內(nèi)直接尋址bdata變量于內(nèi)部RAM 20H2FH共16個字節(jié)的可位尋址區(qū)idata變量于內(nèi)部RAM的高128個字節(jié),采用間接尋址方式pdata變量于外部RAM區(qū)的低256字節(jié),使用MO
12、VX Ri指令通過P0口輸出8位地址對其進(jìn)行間接尋址,需要兩個周期xdata變量存放于整個外部RAM區(qū),使用DPTR間接尋址的方式,可空間范圍為64KBcode變量存放于程序器區(qū),使用DPTR或PC尋址,尋址范圍64KB2012/10/724單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式lC51編譯器完全支持MCS-51型單片機(jī)的結(jié)構(gòu)。該編譯器引入了模式關(guān)鍵字,通過將變量、 常量定義成不同的模式(類型)的方法,將它們在不同的空間中。在C51中對變量進(jìn)行定義的格式如下:種類 數(shù)據(jù)類型 器類型 變量名表;l種類和器類型是可選項。變量的種類有自動(auto)、外部(extern)、靜態(tài)(static)
13、和寄存器(register)共四種。如果定義變量時省略了種類,則該變量缺省為自動(auto)變量。2012/10/723單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(11) sizeof運算符lC語言中提供了一種用于求取數(shù)據(jù)類型、變量以及表達(dá)式在 器中占用的字節(jié)數(shù)的運算符:sizeof, 該運算符的一般使用形式為:sizeof(表達(dá)式);或 sizeof(數(shù)據(jù)類型);l例如:sizeof(char); sizeof(int);l注意:sizeof是一個表達(dá)式而不是一個函數(shù),這個表達(dá)式的值在編譯時就已經(jīng)由編譯器計算出來了, 而不是在程序執(zhí)行的過程中計算的。2012/10/722單
14、片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(10) 類型轉(zhuǎn)換lC語言中還可以用括號進(jìn)行強(qiáng)制的類型轉(zhuǎn)換,方法為:(類型名) 變量名;或:(類型名) 表達(dá)式;l例如:int var1;unsigned char var2;var1 = (int) var2;/ var2轉(zhuǎn)換為整型var2 = (unsigned char) var1;/ var1轉(zhuǎn)換為字符型2012/10/721單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(10) 類型轉(zhuǎn)換lC語言中可以進(jìn)行兩種類型轉(zhuǎn)換:隱式類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換l當(dāng)程序中兩種不同類型的變量互相賦值或進(jìn)行運算時,編譯器會自動進(jìn)行隱式類
15、型轉(zhuǎn)換,將低優(yōu)先級的數(shù)據(jù)類型轉(zhuǎn)換為高優(yōu)先級的數(shù)據(jù)。轉(zhuǎn)換優(yōu)先級從低到高為:char à int à long à double à float2012/10/720單片機(jī)原理及系統(tǒng)設(shè)計5.1.2 C51運算符、表達(dá)式及其規(guī)則(9)指針和地址運算符l例如:int i,j,*ptr;i = 100;/ 將100賦值給iptr = &i;/ 此時ptr指向變量i,即ptr中/ 存放的是變量i的地址j = *ptr;/ 將ptr指向的地址單元中的/ 值賦給j,即執(zhí)行后j也為1002012/10/7195南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.
16、1.3 C51的模式4、pdata和xdata模式lpdata區(qū)對應(yīng)外部RAM最低256字節(jié)的空間,通過MOVX R0/R1間址方式尋址。lxdata區(qū)則對應(yīng)全部外部RAM的64K尋址空間,通過MOVX DPTR方式尋址。l由于pdata區(qū)的地址為8位而xdata區(qū)為16位,因此p data區(qū)的尋址比xdata區(qū)的尋址快。unsigned char xdata system_status=0; unsigned int pdata unit_id2;xdata char input_string16; pdata float output_value;2012/10/730單片機(jī)原理及系統(tǒng)設(shè)計
17、5.1.3 C51的模式3、idata模式lidata區(qū)對應(yīng)MCS-52系列單片機(jī)內(nèi)部RAM的高128字節(jié)的空間,也可存放使用比較頻繁的變量。這些變量使用MOV Ri的寄存器間接尋址方式進(jìn)行尋址。和外部器尋址比較,它的指令執(zhí)行周期和代碼長度都比較短。l例如:unsigned char idata system_status=0; unsigned int idata unit_id2;idata char input_string16; idata float output_value;2012/10/729單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式2、bdata模式l定義為bdata 類型
18、的變量,可以進(jìn)行位尋址, 可 位變量。這對于一些需要單獨操作字節(jié)中某些位的應(yīng)用場合非常適用;l但是要注意,bdata 區(qū)只能 字符型及整型變量,編譯器不 在bdata 區(qū)中定義float、d ouble類型的變量。2012/10/728單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式1、data模式l只要不超過內(nèi)部data區(qū)的范圍,系統(tǒng)變量和用戶變量均可存放在其中。使用時要考慮到C51使用寄存 器組傳遞函數(shù)的參數(shù)(因此data區(qū)至少被占用8字 節(jié)),此外還要留出足夠的堆??臻g(大小和中斷源數(shù)、函數(shù)調(diào)用嵌套層數(shù)相關(guān),編譯器會自動處理, 用戶基本不用考慮此問題。這一點也是高級語言比匯編更方便的之一)。
19、2012/10/727單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式1、data模式ldata模式的如下: unsigned char data system_status=0; unsigned int data unit_id2;data char input_string16; float data output_value; mytype data new_var;l注意:如果某變量未指定類型,則編譯器會將其放在當(dāng)前模式的缺省數(shù)據(jù)區(qū)。2012/10/726單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式1、data模式l由于編譯器會把為data的變量存放在單片機(jī)內(nèi) 部RAM的低128字節(jié),并
20、通過直接尋址的方式, 因此對data區(qū)的尋址是最快的,所以應(yīng)該把使用頻 率高的變量放在data區(qū)。但要注意的是為data類的區(qū)除了包含程序變量外,還包含了堆棧和寄存器組。使用時要加以注意。ldata模式的如下:2012/10/7256南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.5 C51的中斷服務(wù)程序l 在C51中可以用C來 中斷和編寫中斷服務(wù)程序。中斷過程通過使用interrupt關(guān)鍵字和中斷號(031)來實現(xiàn)。編譯器根據(jù)中斷號計算中斷服務(wù)程序的 地址。中斷號和MCS-51中斷源之間的關(guān)系如下:2012/10/736中斷號中斷源0外部中斷01定時器/計數(shù)器0溢出中斷2外部中斷1
21、3定時器/計數(shù)器1溢出中斷4串行口中斷5定時器/計數(shù)器2溢出中斷單片機(jī)原理及系統(tǒng)設(shè)計5.1.4 C51的指針使用指針時必須注意1、指針不能越界;這種錯誤編譯器無法發(fā)現(xiàn),且調(diào)試中不 易發(fā)現(xiàn);2、不同類型的指針之間如果需要賦值,必須經(jīng)過顯式強(qiáng)制 類型轉(zhuǎn)換。2012/10/735指針類型空間通用指針3字節(jié)xdata指針2字節(jié)code指針2字節(jié)pdata指針1字節(jié)data指針1字節(jié)idata指針1字節(jié)單片機(jī)原理及系統(tǒng)設(shè)計5.1.4 C51的指針lKeil使用者規(guī)定指針指向的區(qū)。這種指針叫具體指針。使用具體指針的好處是節(jié)省了空間,編譯器不用根據(jù)指針類型選擇空間、確定尋址方式,這樣就使代碼更加簡短。cha
22、r *str1;/ 未指明空間,通用指針char data *str2;/ 指明空間,具體指針l由于具體指針操作比通用指針的操作快得多,因此在一般情況下,不推薦使用通用指針。2012/10/734單片機(jī)原理及系統(tǒng)設(shè)計5.1.4 C51的指針l指針的本質(zhì)是一個與地址相關(guān)的復(fù)合類型,它的值是數(shù)據(jù)存放的位址)。C51提供一個3字節(jié) 的通用器指針,通用指針的第一個字節(jié)表明指針?biāo)赶虻淖兞康目臻g,另外兩個字節(jié)存儲16位偏移量。對明確為data、idata和pdata類型的指針只需要8位偏移量。2012/10/733單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式5、code模式lMCS-51的代碼區(qū)為只讀器
23、,不可重寫。一般代碼區(qū)中除了程序代碼外,還可存放數(shù)據(jù)表。數(shù)據(jù)表在源程序中定義,在編譯過程中初始化。unsigned int code unit_id = 1234;unsigned char code Table =0x00, 0x01, 0x02, 0x03, 0x04, 0x05;2012/10/732單片機(jī)原理及系統(tǒng)設(shè)計5.1.3 C51的模式4、pdata和xdata模式l外部RAM地址除了 物理 器的地址外,還包含I/O器件的譯碼選通地址。對外部器件尋址可通過指針或C51提供的宏來完成,可讀性更好。l宏定義看上去像char或int類型的數(shù)組:inp_byte = XBYTE0x850
24、0; / 從XRAM地址8500H讀一個字節(jié)inp_word = XWORD0x4000; / 從XRAM地址4000H讀兩個字節(jié)XBYTE0x7500=out_val; / 寫一個字節(jié)到XRAM的7500Hl可對外部RAM的所有單元采用以上方法進(jìn)行尋址。使用絕對地址的宏需要包含頭文件absacc.h2012/10/7317南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程4、盡可能多使用位變量l對于程序中使用的只有兩種取值的標(biāo)志位,應(yīng)盡可能使用位變量而不是char。這將提高操作效率, 節(jié)省內(nèi)存。2012/10/742單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51
25、編程3、避免使用浮點數(shù)及浮點數(shù)指針l在8位字長的單片機(jī)系統(tǒng)上使用32位浮點數(shù)會引起程序體積的增大和程序效率的極大下降。在實際使用中,可以通過提高數(shù)值數(shù)量級和使用整型運算來避免使用浮點數(shù)/指針運算。2012/10/741單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程2、盡量使用無符號類型變量l由于MCS-51并不支持符號運算,符號運算要通過庫函數(shù)等方式實現(xiàn),這會引起程序性能的下降。編程者應(yīng)根據(jù)應(yīng)用的具體情況,盡量不使用帶符號的變量。2012/10/740單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程1、采用短變量l一個提高代碼效率的最基本的方式就是減小變量 的字長,提高速度。例如,使用傳
26、統(tǒng)C編程時我們都習(xí)慣于對循環(huán)變量使用int類型,如果循環(huán)次數(shù)在255次以下,完全可以采用unsigned char型變量作為循環(huán)變量。編程者應(yīng)該根據(jù)變量值可能的取值范圍選擇合適的變量類型(字長)。2012/10/739單片機(jī)原理及系統(tǒng)設(shè)計5.1.5 C51的中斷服務(wù)程序l此時在ISR處將不再產(chǎn)生將當(dāng)前寄存器組壓入堆棧的代碼,這樣有利于快速響應(yīng)中斷。但因為在C中所有函數(shù)參數(shù)傳遞、指針等都要用到寄存器間接尋址的方式,因此,這種方法帶來的副作用是:所有ISR中調(diào)用的函數(shù)、使用的變量都必 須基于同一個寄存器組,否則將出錯。2012/10/738單片機(jī)原理及系統(tǒng)設(shè)計5.1.5 C51的中斷服務(wù)程序l編譯
27、器在生成中斷服務(wù)程序時,會自動在 處保護(hù)所有將在ISR中使用的寄存器、 單元(壓入堆棧),并在 ISR之前恢復(fù)現(xiàn)場。l可以通過using關(guān)鍵字指定某ISR使用的具體的寄存器組:void Int0Isr(void) interrupt 0 using 3 2012/10/7378南京郵電大學(xué)計算機(jī)學(xué)院 倪曉軍單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程9、必要時使用宏來替代函數(shù)l對于小段頻繁使用的代碼,例如使能某些電路或從鎖存器中 數(shù)據(jù)等,可把代碼定義在宏中, 通過宏來替代函數(shù),使得程序有更好的可讀性和執(zhí)行效率(不用頻繁調(diào)用函數(shù))。編譯器在遇到宏時, 用事先定義的代碼去替代宏。當(dāng)需要改變宏
28、時,只要修改該宏的定義即可。2012/10/748單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程8、使用內(nèi)聯(lián)函數(shù)l例如,和單字節(jié)循環(huán)位移指令RL A和RR A相對應(yīng)的內(nèi)聯(lián)函數(shù)是_crol_(循環(huán)左移)和_cror_(循環(huán)右移)。對于int類型,對應(yīng)的內(nèi)聯(lián)函數(shù)為_irol_,_iror_,對于long類型的內(nèi)聯(lián)函數(shù)為_lrol_, _lror_;l在C51中也提供了和匯編中JBC指令對應(yīng)的內(nèi)聯(lián)函 數(shù):_testbit_,如果參數(shù)位置位,函數(shù)返回1,同時清除該位,否則返回0。這在檢查標(biāo)志位時十分有用,且使C51的代碼更具有可讀性。2012/10/747單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程8、使用內(nèi)聯(lián)函數(shù)l對于一些簡單的操作如變量循環(huán)位移,編譯器提供了一些內(nèi)聯(lián)函數(shù)供用戶調(diào)用。多數(shù)內(nèi)聯(lián)函數(shù)直接對應(yīng)著匯編指令,因此可較大地提高程序的性能。少數(shù)的比較復(fù)雜的內(nèi)聯(lián)函數(shù)也是和ANSI兼容的;l所有的內(nèi)聯(lián)函數(shù)都是可重入函數(shù),可以在任何地方安全的調(diào)用。2012/10/746單片機(jī)原理及系統(tǒng)設(shè)計5.1.6 高質(zhì)量的C51編程7、使用特定指針l在定義指針時應(yīng)明確指定其所指向的類型, 如data、xdata等,這樣編譯器會根據(jù)指針的空間自動生成合適的指針代碼,這樣速度更快, 代碼更
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境采樣員技能培訓(xùn)課件
- 2025年P(guān)CB感光油墨項目發(fā)展計劃
- 森林火災(zāi)風(fēng)險評價與防范措施考核試卷
- 名片設(shè)計排版
- 老年人日常生活能力訓(xùn)練方法考核試卷
- 數(shù)字智慧方案5488丨如何提升企業(yè)信息化管理能力
- 蔬菜種植的土壤健康與生物多樣性考核試卷
- 病房護(hù)理團(tuán)隊合作與溝通考核試卷
- 西樂器生產(chǎn)中的質(zhì)量管理體系考核試卷
- 2024年工地開復(fù)工肺炎疫情防疫方案
- 腎移植與術(shù)后感染
- 浙江省杭州市2023年中考英語試題(附真題答案)
- 孕婦與乳母的飲食與睡眠質(zhì)量
- 食品原料采購協(xié)議書
- 建筑物防火卷簾門的保養(yǎng)與維修
- 物品的交接單
- 采購管理中的原材料采購合規(guī)性審查
- 2024年山東省春季高考技能考試汽車專業(yè)試題庫-下(判斷題匯總)
- 慢性腎衰竭的中醫(yī)診療現(xiàn)狀
- 專題08 一元一次不等式(組)應(yīng)用的兩種考法(學(xué)生版)-2023年初中數(shù)學(xué)7年級下冊同步壓軸題
- 城鎮(zhèn)排水管道檢測記錄表、缺陷圖圖例、檢測成果表、等級劃分及樣圖
評論
0/150
提交評論