www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]keil錯(cuò)誤;C51編譯器識(shí)別錯(cuò)類型有三種;1、致命錯(cuò)誤:偽指令控制行有錯(cuò),訪問不存在的原文;2、語法及語義錯(cuò)誤:語法和語義錯(cuò)誤都發(fā)生在原文件;3、警告:警告出現(xiàn)并不影響目標(biāo)文件的產(chǎn)生,但執(zhí)行;C_51FATAL_ERRORA

keil錯(cuò)誤;C51編譯器識(shí)別錯(cuò)類型有三種;1、致命錯(cuò)誤:偽指令控制行有錯(cuò),訪問不存在的原文;2、語法及語義錯(cuò)誤:語法和語義錯(cuò)誤都發(fā)生在原文件;3、警告:警告出現(xiàn)并不影響目標(biāo)文件的產(chǎn)生,但執(zhí)行;C_51FATAL_ERRORACTION:&l;ERROR:<錯(cuò)誤信息>termin;FILE:<錯(cuò)誤所在文件>;ERROR:<錯(cuò)誤信

keil錯(cuò)誤

C51編譯器識(shí)別錯(cuò)類型有三種

1、致命錯(cuò)誤:偽指令控制行有錯(cuò),訪問不存在的原文件或頭文件等。

2、語法及語義錯(cuò)誤:語法和語義錯(cuò)誤都發(fā)生在原文件中。有這類錯(cuò)誤時(shí),給出 提示但不產(chǎn)生目標(biāo)文件,錯(cuò)誤超過一定數(shù)量才終止編譯。

3、警告:警告出現(xiàn)并不影響目標(biāo)文件的產(chǎn)生,但執(zhí)行時(shí)有可能發(fā)生問題。程序 員應(yīng)斟酌處理。 D.1 致命錯(cuò)誤

C_51 FATAL_ERROR ACTION: <當(dāng)前行為> LINE: <錯(cuò)誤所在行>

ERROR: <錯(cuò)誤信息> terminated 或C_51 FATAL ERROR ACTION: <當(dāng)前行為>

FILE: <錯(cuò)誤所在文件>

ERROR: <錯(cuò)誤信息> terminated C_51 TERMINATED C_51 (1) ACTION 的有關(guān)信息

*PARSING INVOKE-/#PRAGMA_LINE

在對(duì)#pragma 指明的控制行作此法分析時(shí)出錯(cuò)。 *ALLOCATING MEMORY

系統(tǒng)分配存儲(chǔ)空間時(shí)出錯(cuò)。編譯較大程序需要512k空間。 *OPENING INPUT_FILE

打開文件時(shí),未找到或打不開源文件/頭文件。

*CREATE LIST_FILE/OBJECT_FILE/WORK_FILE 不能創(chuàng)建上述文件。可能磁盤滿或文件已存在而且寫保護(hù)。 *PARSING SOURCE_FILE/ANALYZING DECLARATIONS

分析源程序時(shí)發(fā)現(xiàn)外部引用名太多。 *GENERATING INTERMEDIATE CODE

源代碼被翻譯成內(nèi)部偽代碼,錯(cuò)誤可能來源于函數(shù)太大而超過內(nèi)部極限。 *WRITING TO FILE

在向文件(work,list,prelist或object file)寫時(shí)發(fā)生錯(cuò)誤。 (2)ERROR的有關(guān)信息

*MEMORY SPACE EXHAUSTED

所有可用系統(tǒng)空間耗盡。至少需要512k 字節(jié)空間。沒有足夠空間,用戶必須檢查常駐內(nèi)存 的驅(qū)動(dòng)程序是否太多。 *FILE DOES NOT EXIST FILE 行定的文本文件名未發(fā)現(xiàn)。 *CAN?T CREAT FILE

FILE行定義的文件不能被創(chuàng)建。

*SOURCE MUST COME FROMA DISK_FILE

源文件和頭文件必須存在于硬盤或軟盤上??刂婆_(tái)、CON、CI 或類似設(shè)備不允許作為輸入 文件。

*MORE THAN 256 SEGMENTS/PUBLICS/EXTERNALS

受OMF_51的歷史限制,一個(gè)源程序不能超過256個(gè)各種函數(shù)的類型段,256個(gè)全局變量, 256 個(gè)公共定義或外部引用名。不使用為變量可以減少使用的段數(shù)。使用static 存儲(chǔ)類型說

明符可減少全局變量的使用數(shù)目。合理調(diào)整定義性說明的位置可減少外部引用名的使用數(shù) 目。

*FILEWRITE ERROR

當(dāng)向list、prelist、work或object文件中寫內(nèi)容時(shí),由于空間不夠而發(fā)生錯(cuò)誤。 *NON_NULLARGUMENT EXPECTED

所選的控制參數(shù)需要一個(gè)括號(hào)內(nèi)的變量,如一個(gè)文件夾或一個(gè)數(shù)。 *“(”AFTER CONTROL EXPECTED 變量的左括號(hào)丟失。

*“)”AFTER PARAMETER EXPECTED 變量的右括號(hào)丟失。

*RESPECIFIED OR CONFLICTING CONTROL

所選的控制參數(shù)與前面發(fā)生沖突或重復(fù),例如CODE和NOCOND *BAD DECIMAL NUMBER

控制參數(shù)的數(shù)字含有非法數(shù),需要使用十進(jìn)制數(shù)。 *OUT OF RANGE DECIMAL NUMBER

控制參數(shù)的數(shù)字越界,例如OPTIMIZE 的參量為0-5。

*IDENTIFIER EXPECTED

控制參數(shù)DEFINE 需要一個(gè)標(biāo)識(shí)符做參量,與C語言的規(guī)則相同。

*PARSE STACK OVERFLOW

分析棧溢出。可能是源程序包含特別復(fù)雜的表達(dá)式,或功能塊嵌套數(shù)超過15。 *PREPOCESSOR: MACRO TO NESTED

宏擴(kuò)展期間,預(yù)處理器的棧耗用太大。表明宏嵌套太多,或有遞歸宏定義。 *PREPOCESSOR: LINE TOO LONG(510) 宏擴(kuò)展后行超過510個(gè)字符。

*CAN?T HAVE GENERAL CONTROL IN INVOCATION LINE

一般控制(如EJECT)不能是命令行的一部分,應(yīng)將它們放入源文件“pragma”預(yù)處理行 中。

D.2 語法及語義錯(cuò)誤 D.2.1 錯(cuò)誤格式

這類錯(cuò)誤在列表文件中產(chǎn)生如下格式的信息:

***ERRORIN LINEOF:error message ***WARINGIN LINEOF:warning message 表示錯(cuò)誤行;

表示源文件或頭文件中與錯(cuò)誤或警告相關(guān)的行; 指明了錯(cuò)誤所在的源文件或頭文件; D.2.2 錯(cuò)誤信息及可能發(fā)生的原因

*ERROR100:unprintable character 0x??skipped

源文件中發(fā)現(xiàn)非法字符(注意,注解內(nèi)的字符不做檢查)。 *ERROR101:unclosed string 串未用引號(hào)結(jié)尾。

*ERROR 102:string too long

串不得超過511 個(gè)字符。為了定義更長的串,用戶必須使用續(xù)行符??邏輯的繼續(xù)該串, 在詞匯分析時(shí)遇到以該符號(hào)結(jié)尾的行會(huì)與下行連接起來。 *ERROR 103: invalid character constant

試圖再聲明一個(gè)已定義的宏,已存在的宏可以用#undef指令刪除。預(yù)定義的宏不能刪除。 *ERROR 104: identifier expected

預(yù)處理器指令期望產(chǎn)生一個(gè)標(biāo)示符,如ifdef。 *ERROR 105: unclosed comment

當(dāng)注解無結(jié)束界定符(*/)時(shí)產(chǎn)生此錯(cuò)誤。 *EROOR 106: unbalanced#if-endif controls endif的數(shù)量與if或ifdef的數(shù)量不匹配。 *ERROR 107:include file nesting exceeds 9 include指令后的文件名無效或丟失

*ERROR 108: expected string,如#error “string” 預(yù)處理器指令期望一個(gè)串變量。

*ERROR 109:

由#error 偽指令引入的錯(cuò)誤信息以錯(cuò)誤信號(hào)形式顯示。 *ERROR 110:missing directive 預(yù)處理行#后缺少偽指令。

*ERROR 111:unknown directive 預(yù)處理行#后不是偽指令。 *ERROR 112:misplaced ?elif?

*ERROR 113:misplaced ?else? *ERROR 114:misplaced ?endif?

指令elif/else/endif只有在if、ifdef、ifndef指令內(nèi)才是合法的。 *ERROR 117:bad integer expression if/elif指令的數(shù)值表達(dá)式有語法錯(cuò)誤。

*ERROR 118:missing?(?after macro identifier 宏調(diào)用中實(shí)參表的左括號(hào)丟失

*ERROR 119:reuse of macro formal parameter 宏定義形參名重復(fù)使用

*ERROR 120:?C?unexpected in formal list 形參表中不允許有字符?c?,應(yīng)用逗號(hào)代替 *ERROR 121:missing ?)?after actual parameter 宏調(diào)用實(shí)參表的右括號(hào)丟失

*ERROR 122:illegal macro invocation 宏調(diào)用的實(shí)參表與宏定義中的形參表不同 *ERROR 123:missing macro name after ?define? #define 偽指令后缺預(yù)定義的宏

*ERROR 124:expected macro formal parameter 宏定義要求形參名

*ERROR 125:declarater too complex

說明過于復(fù)雜

*ERROR 126:type-stack underflow

對(duì)象的聲明至多只能包含20 個(gè)類型修飾符(【】,*,(),)錯(cuò)誤126 經(jīng)常在錯(cuò)誤125 之前,

兩者一起發(fā)生。

*ERROR 127:invalid storage class

對(duì)象用無效的存儲(chǔ)類所說明。當(dāng)在函數(shù)外用auto/register 存儲(chǔ)時(shí)會(huì)發(fā)生這種情況。 *ERROR 128:memory space: illegal memory space ?memory space ?used

函數(shù)參數(shù)的存儲(chǔ)類由存儲(chǔ)模式(SMALL LARGE COMPACT)決定用戶不能改變,使用不同

于存儲(chǔ)模式的自動(dòng)變量應(yīng)該為靜態(tài)的存儲(chǔ)類

*ERROR 129:missing? ;?before ?token?

該錯(cuò)誤表示分號(hào)丟失,通常該錯(cuò)誤會(huì)引發(fā)一連串的錯(cuò)誤,引發(fā)的這些錯(cuò)誤無關(guān)緊要。因?yàn)槿?少分號(hào)后編譯器不能做正確的語法分析 *ERROR 130:value out of range

using 或interrupt 指令后參數(shù)越限。using 用的寄存器組號(hào)位0-3,interrupt 需要0-15 的中 斷號(hào)

*ERROR 131:duplicate function-parameter 函數(shù)中形參名重復(fù),形參名應(yīng)彼此不同 *ERROR 132:not in formal parameter list 函數(shù)內(nèi)參數(shù)聲明使用的名字未出現(xiàn)在參數(shù)表中 *ERROR 133:char function(v0,v1,v2)

Char*v0,*v1,*v5;/ *?v5?在形參中未出現(xiàn)

*ERROR 134:xdata/idata/pdata/data on function not permitted

函數(shù)總是駐留于0x5xxxx 的code存儲(chǔ)區(qū),不能位于xdata/idata/pdata/data 空間 *ERROR 135:bad storage class for bit

位變量的定義可以接受static或extern的存儲(chǔ)類,用REGIESTER和ALIEN 都是非法的 *ERROR 136:?void?on variable

?void?類型只允許作為函數(shù)的返回類型或與指針類型合用(void*) *ERROR 137:illegal parameter type:?function?

函數(shù)參數(shù)的類型不能是函數(shù),然而函數(shù)指針可以作為參數(shù) *ERROR 138:interrupt ()may not receive or return value (s) 中斷函數(shù)既不能有參數(shù)又不能有返回值

*ERROR 139:illegal use of ?alien?

關(guān)鍵字alien 將函數(shù)定義為PL/M51 規(guī)定的過程與函數(shù)結(jié)構(gòu)。這意味著C函數(shù)中有參數(shù)的縮

記符號(hào)(即funct(…);)時(shí)是不能用alien的

*ERROR 140:bit in illegal memory-space

位變量的定義可包含修飾符DATA,如果無修飾符則假定為DATA。因?yàn)槲蛔兞渴冀K位于 0x4xxx 的內(nèi)部數(shù)據(jù)存儲(chǔ)器中,當(dāng)試圖采用其他存儲(chǔ)空間就會(huì)產(chǎn)生這個(gè)錯(cuò)誤。 *ERROR 141:NEAR:expected 編譯器所見的單詞是錯(cuò)誤的。期望正確的單詞

*ERROR 142:invalid base address

Sfr說明中的基址有錯(cuò)。有效基址為0x80-0xff。如果聲明采用base^pos形式,則基址是8的

整數(shù)倍

*ERROR 143:invalid absolute bit position

Sbit說明中位地址必須在0x80-0xff之間 *ERROR 144:base^pos:invalid bit position Sbit說明中位pos必須在0~7之間 *ERROR 145:undeclared sfr Sfr未說明

*ERROR 146:invalid sfr

絕對(duì)位地址說明(base^pos)包含無效的基地址。這個(gè)基地址必須與sfr名相對(duì)應(yīng) *ERROR 147:object too large 對(duì)象不能超過65536(64k)字節(jié)

*ERROR 148:field not permitted in union

聯(lián)合不能包含位成員,這個(gè)限制是由8051結(jié)構(gòu)決定的。 *ERROR 149:function member in struct/union

結(jié)構(gòu)或者聯(lián)合不能包含函數(shù)類型的成員。但是指向函數(shù)的指針是允許的 *ERROR 150:bit member in struct/union

結(jié)構(gòu)或者聯(lián)合不能包含位類型的成員,這個(gè)限制是由8051 結(jié)構(gòu)決定的 *ERROR 151:self relativestruct/union

結(jié)構(gòu)或者聯(lián)合不能包含自身

*ERROR 152:bit field type too small for number of bits 位域聲明中指定的位數(shù)超過所給原型中位的數(shù)量

*ERROR 153:named bit-field

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

北京2024年8月8日 /美通社/ -- 近日,軟通動(dòng)力T6司庫管理系統(tǒng)、票據(jù)管理系統(tǒng)IDMS、醫(yī)共體一體化管理平臺(tái)三款產(chǎn)品獲鯤鵬原生開發(fā)認(rèn)證(Kunpeng NATIVE)。這是軟通動(dòng)力自年初正式啟動(dòng)鯤鵬原生開發(fā)以來,...

關(guān)鍵字: PEN 編譯 DEVKIT 操作系統(tǒng)

KeilμVision4是Keil軟件公司為8051系列微控制器及其兼容產(chǎn)品設(shè)計(jì)的集成式軟件開發(fā)環(huán)境。μVision4集成了C51編譯器和A51匯編器,其界面類似于Microsoft VS,支持C語言和匯編語言程序的編寫...

關(guān)鍵字: 程序 編譯 鏈接

第五屆中國國際進(jìn)口博覽會(huì),丹納赫集團(tuán)攜手中國健康傳媒集團(tuán),在創(chuàng)新技術(shù)在疫苗、細(xì)胞治療藥物、中藥研發(fā)以及質(zhì)量控制中的應(yīng)用等領(lǐng)域簽署戰(zhàn)略合作。同時(shí),雙方將共同編譯并出版《生物制藥工藝》等書籍,以支持相關(guān)領(lǐng)域國際前沿技術(shù)工具在...

關(guān)鍵字: 編譯 質(zhì)量控制

(全球TMT2022年9月27日訊)新思科技近日宣布推出業(yè)內(nèi)首款基于其ZeBu? EP1硬件仿真系統(tǒng)的硬件仿真與原型驗(yàn)證統(tǒng)一硬件系統(tǒng),致力為SoC驗(yàn)證和前期軟件開發(fā)提供更高水平的性能和靈活性。新思科技ZeBu...

關(guān)鍵字: 硬件仿真 新思科技 硬件系統(tǒng) 編譯

3個(gè)SystemVerilog新特性!01`begin_keyword`end_keyword硬件描述語言中有很多特殊的編譯或者綜合等工具的預(yù)執(zhí)行指令,在某些場景下我們可以利用一下HDL之外的語法去指導(dǎo)工具,而不是信馬由...

關(guān)鍵字: SYSTEMVERILOG DEFINE PACKAGE 編譯

你知道,為什么在C中使用了pow函數(shù)不需要鏈接libm庫嗎?什么情況需要指定鏈接庫?在解釋之前,先回顧一下。//來源:公眾號(hào)【編程珠璣】//https://www.yanbinghu.com#include#includ...

關(guān)鍵字: 編譯 POW IBM TEST

????關(guān)注、星標(biāo)公眾號(hào),直達(dá)精彩內(nèi)容作者:hguisu一、地址概念和程序如何運(yùn)行在多道程序環(huán)境下,要使程序運(yùn)行,必須先為之創(chuàng)建進(jìn)程。而創(chuàng)建進(jìn)程的第一件事,便是將程序和數(shù)據(jù)裝入內(nèi)存。如何將一個(gè)用戶源程序變?yōu)橐粋€(gè)可在內(nèi)存中...

關(guān)鍵字: 編譯

作?者:道哥,10年嵌入式開發(fā)老兵,專注于:C/C、嵌入式、Linux。關(guān)注下方公眾號(hào),回復(fù)【書籍】,獲取Linux、嵌入式領(lǐng)域經(jīng)典書籍;回復(fù)【PDF】,獲取所有原創(chuàng)文章(PDF格式)。目錄學(xué)習(xí)的困惑實(shí)踐環(huán)境編譯進(jìn)內(nèi)核編...

關(guān)鍵字: 內(nèi)核 編譯 驅(qū)動(dòng)程序

不知道各位小伙伴是否碰到過這樣的情況:一個(gè).c文件include另一個(gè).h頭文件,使用Makefile來構(gòu)建(編譯)應(yīng)用程序。第一次編譯、執(zhí)行,很正常!但是此時(shí),如果修改了.h頭文件,再次編譯時(shí),就出現(xiàn)問題了:預(yù)期的執(zhí)行...

關(guān)鍵字: 編譯

一、前言老周這里編譯Kafka的版本是2.7,為啥采用這個(gè)版本來搭建源碼的閱讀環(huán)境呢?因?yàn)樵摪姹鞠鄬?duì)來說比較新。而我為啥不用2.7后的版本呢?比如2.8,這是因?yàn)槿サ袅薢ooKeeper,還不太穩(wěn)定,生產(chǎn)環(huán)境也不太建議使...

關(guān)鍵字: 源碼 編譯
關(guān)閉
關(guān)閉