本文的目標(biāo)是收集大部分匯編中常見(jiàn)錯(cuò)誤信息及對(duì)其的中文注解,方便大家在寫(xiě)匯編程序時(shí)能夠快速地定位錯(cuò)誤并解決問(wèn)題。
ml.exe錯(cuò)誤信息:
FATAL 嚴(yán)重錯(cuò)誤
cannot open file不能打開(kāi)文件
I/O error closing fileI/O錯(cuò)誤 正在關(guān)閉文件
I/O error writing fileI/O錯(cuò)誤 正在寫(xiě)文件
I/O error reading file I/O錯(cuò)誤 正在讀取文件
out of memory 缺少內(nèi)存
assembler limit : macro parameter name table full 匯編限制:宏參數(shù)名表已滿
invalid command-line option 無(wú)效命令行參數(shù)
nesting level too deep 嵌套過(guò)深
unmatched macro nesting 不正確的宏嵌套
line too long 行太長(zhǎng)
unmatched block nesting 不正確的區(qū)、段嵌套
directive must be in control block 指令必須在控制段
error count exceeds 100; stopping assembly 錯(cuò)誤數(shù)超過(guò)100,停止匯編 i
nvalid numerical command-line argument 無(wú)效命令行參數(shù)
too many arguments 太多參數(shù)、定義、沖突
statement too complex 聲明太復(fù)雜
Internal Assembler Error 內(nèi)部匯編錯(cuò)誤
missing source filename 找不到源文件名
COFF error writing file COFF錯(cuò)誤,正在寫(xiě)文件
invalid debug and browser data; file exceeds line limit 不能排除故障和瀏覽數(shù)據(jù);文件超過(guò)行限制
cannot find link.exe 找不到連接程序
cannot find cvpack.exe 找不到
cvpack.exe SEVERE 嚴(yán)重的錯(cuò)誤
memory operand not allowed in context 內(nèi)存操作數(shù)無(wú)法載入上下文環(huán)境
immediate operand not allowed 當(dāng)前操作數(shù)無(wú)法載入
cannot have more than one ELSE clause per IF block IF段只能有一個(gè)ELSE從句
extra characters after statement 附加的字符在聲明之后
symbol type conflict 符號(hào)類型沖突
symbol redefinition 符號(hào)已經(jīng)定義
undefined symbol 符號(hào)沒(méi)有定義
non-benign record redefinition 沒(méi)有利于記錄的定義
syntax error 語(yǔ)法錯(cuò)誤
syntax error in expression 表達(dá)式存在語(yǔ)法錯(cuò)誤
invalid type expression 無(wú)效的類型表達(dá)式
distance invalid for word size of current segment 當(dāng)前區(qū)、段的大小命令無(wú)效
PROC, MACRO, or macro repeat directive must precede LOCAL PROC, MACRO, 或 macro repeat指令必須在LOCAL之前
.MODEL must precede this directive .MODEL必須在指令之前
cannot define as public or external 不能定義為公有或外部的
segment attributes cannot change 區(qū)、段屬性不能更換
expression expected 預(yù)期表達(dá)式
operator expected 預(yù)期操作數(shù)
invalid use of external symbol 使用了無(wú)效的外部符號(hào)
operand must be RECORD type or field 操作數(shù)必須是RECORD類型或域
identifier not a record 沒(méi)有記錄標(biāo)示符
record constants may not span line breaks 連續(xù)記錄不能超過(guò)行間隔
instruction operands must be the same size 命令操作數(shù)必須是一樣的長(zhǎng)度
instruction operand must have size 命令操作數(shù)必須有長(zhǎng)度
invalid operand size for instruction 操作數(shù)長(zhǎng)度對(duì)于指令無(wú)效
operands must be in same segment 操作數(shù)必須在相同的段
constant expected 連續(xù)預(yù)期
operand must be a memory expression 操作數(shù)必須是一個(gè)內(nèi)存表達(dá)式
expression must be a code address 表達(dá)式必須是一個(gè)代碼地址
multiple base registers not allowed 不允許多重基礎(chǔ)寄存器
multiple index registers not allowed 不允許多重標(biāo)志寄存器
must be index or base register 必須是基礎(chǔ)或標(biāo)志寄存器
invalid use of register 使用的寄存器無(wú)效
invalid INVOKE argument 無(wú)效的INVOKE符號(hào)
must be in segment block 必須在區(qū)、段、塊中
DUP too complex DUP太復(fù)雜
too many initial values for structure 太多結(jié)構(gòu)的基礎(chǔ)資料
statement not allowed inside structure definition 聲明不允許在結(jié)構(gòu)里面
missing operand for macro operator 找不到宏的操作數(shù)
line too long
segment register not allowed in context 上下文不允許有寄存器
string or text literal too long 文本或字符串太長(zhǎng)
statement too complex 聲明太復(fù)雜
identifier too long 標(biāo)識(shí)符太長(zhǎng)
invalid character in file 文件里有無(wú)效字符
missing angle bracket or brace in literal 語(yǔ)句里找不到同樣的括弧或框架
missing single or double quotation mark in string 找不到單引號(hào)或雙引號(hào)
empty (null) string 沒(méi)有字符串
nondigit in number 沒(méi)有總數(shù)
syntax error in floating-point constant 不確定的指向中有語(yǔ)法錯(cuò)誤
real or BCD number not allowed 不允許real或BCD編碼
text item required 必須的文本項(xiàng)
forced error 強(qiáng)制錯(cuò)誤
forced error : value equal to 0 標(biāo)準(zhǔn)等于零
forced error : value not equal to 0 標(biāo)準(zhǔn)不等于零
forced error : symbol not defined 符號(hào)沒(méi)有定義
forced error : symbol defined 符號(hào)已定義
forced error : string blank 字符串是空的
forced error : string not blank 字符串不是空的
forced error : strings equal 字符串是相同的
forced error : strings not equal 字符串不是相同的
[ELSE]IF2/.ERR2 not allowed : single-pass assembler [ELSE]IF2/.ERR2不允許單獨(dú)匯編
expression too complex for .UNTILCXZ .UNTILCXZ表達(dá)式太復(fù)雜
can ALIGN only to power of 2 僅能對(duì)齊到2的冪
structure alignment must be 1, 2, 4, 8, or 16 結(jié)構(gòu)對(duì)齊必須是1,2,4,8或16
expected 預(yù)定義
incompatible CPU mode and segment size 不匹配的CPU模式和段尺寸
LOCK must be followed by a memory operation LOCK指令必須跟在內(nèi)存操作之后
instruction prefix not allowed 不允許的命令前綴
no operands allowed for this instruction 指令沒(méi)有操作數(shù)
invalid instruction operands 無(wú)效的指令操作數(shù)
initializer magnitude too large for specified size 初始指定尺寸太大
cannot access symbol in given segment or group 在特定的段或類不能存取符號(hào)
operands have different frames 操作數(shù)存在不同的結(jié)構(gòu)
cannot access label through segment registers 在段寄存器中不能存取標(biāo)記
jump destination too far 跳轉(zhuǎn)目標(biāo)太遠(yuǎn)
jump destination must specify a label 跳轉(zhuǎn)目標(biāo)必須指定一個(gè)標(biāo)記
instruction does not allow NEAR indirect addressing 指令不允許近間接尋址
instruction does not allow FAR indirect addressing 指令不允許遠(yuǎn)間接尋址
以上就是匯編中常見(jiàn)錯(cuò)誤信息及中文注解,希望對(duì)你有所幫助