汇编语言常见错误信息中文注解

所属分类: 软件编程 / C 语言 阅读数: 90
收藏 0 赞 0 分享

本文的目标是收集大部分汇编中常见错误信息及对其的中文注解,方便大家在写汇编程序时能够快速地定位错误并解决问题。

ml.exe错误信息:

复制代码 代码如下:

FATAL   严重错误
cannot open file不能打开文件
I/O error closing fileI/O错误 正在关闭文件
I/O error writing fileI/O错误 正在写文件
I/O error reading file            I/O错误 正在读取文件
out of memory              缺少内存
assembler limit : macro parameter name table full      汇编限制:宏参数名表已满
invalid command-line option           无效命令行参数
nesting level too deep             嵌套过深
unmatched macro nesting            不正确的宏嵌套
line too long                  行太长
unmatched block nesting                   不正确的区、段嵌套
directive must be in control block                指令必须在控制段
error count exceeds 100; stopping assembly             错误数超过100,停止汇编 i
nvalid numerical command-line argument                无效命令行参数
too many arguments                                     太多参数、定义、冲突
statement too complex                                   声明太复杂
Internal Assembler Error                         内部汇编错误
missing source filename                                找不到源文件名
COFF error writing file                      COFF错误,正在写文件
invalid debug and browser data; file exceeds line limit        不能排除故障和浏览数据;文件超过行限制
cannot find link.exe                              找不到连接程序
cannot find cvpack.exe                          找不到
cvpack.exe  SEVERE                              严重的错误
memory operand not allowed in context                  内存操作数无法载入上下文环境
immediate operand not allowed                      当前操作数无法载入
cannot have more than one ELSE clause per IF block            IF段只能有一个ELSE从句
extra characters after statement                           附加的字符在声明之后
symbol type conflict                             符号类型冲突
symbol redefinition                           符号已经定义
undefined symbol                          符号没有定义
non-benign record redefinition                      没有利于记录的定义
syntax error                                语法错误
syntax error in expression                   表达式存在语法错误
invalid type expression                      无效的类型表达式
distance invalid for word size of current segment           当前区、段的大小命令无效
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                         区、段属性不能更换
expression expected                   预期表达式
operator expected                      预期操作数
invalid use of external symbol               使用了无效的外部符号
operand must be RECORD type or field            操作数必须是RECORD类型或域
identifier not a record                      没有记录标示符
record constants may not span line breaks                 连续记录不能超过行间隔
instruction operands must be the same size        命令操作数必须是一样的长度
instruction operand must have size             命令操作数必须有长度
invalid operand size for instruction            操作数长度对于指令无效
operands must be in same segment              操作数必须在相同的段
constant expected                         连续预期
operand must be a memory expression             操作数必须是一个内存表达式
expression must be a code address             表达式必须是一个代码地址
multiple base registers not allowed             不允许多重基础寄存器
multiple index registers not allowed           不允许多重标志寄存器
must be index or base register                  必须是基础或标志寄存器
invalid use of register                     使用的寄存器无效
invalid INVOKE argument                   无效的INVOKE符号
must be in segment block                  必须在区、段、块中
DUP too complex                          DUP太复杂
too many initial values for structure                太多结构的基础资料
statement not allowed inside structure definition         声明不允许在结构里面
missing operand for macro operator             找不到宏的操作数
line too long
segment register not allowed in context            上下文不允许有寄存器
string or text literal too long                 文本或字符串太长
statement too complex                    声明太复杂
identifier too long                       标识符太长
invalid character in file                 文件里有无效字符
missing angle bracket or brace in literal         语句里找不到同样的括弧或框架
missing single or double quotation mark in string          找不到单引号或双引号
empty (null) string                没有字符串
nondigit in number                   没有总数
syntax error in floating-point constant           不确定的指向中有语法错误
real or BCD number not allowed                不允许real或BCD编码
text item required                       必须的文本项
forced error                           强制错误
forced error : value equal to 0                 标准等于零
forced error : value not equal to 0             标准不等于零
forced error : symbol not defined            符号没有定义
forced error : symbol defined               符号已定义
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不允许单独汇编
expression too complex for .UNTILCXZ             .UNTILCXZ表达式太复杂
can ALIGN only to power of 2                    仅能对齐到2的幂
structure alignment must be 1, 2, 4, 8, or 16             结构对齐必须是1,2,4,8或16
expected               预定义
incompatible CPU mode and segment size              不匹配的CPU模式和段尺寸
LOCK must be followed by a memory operation          LOCK指令必须跟在内存操作之后
instruction prefix not allowed                    不允许的命令前缀
no operands allowed for this instruction          指令没有操作数
invalid instruction operands                   无效的指令操作数
initializer magnitude too large for specified size        初始指定尺寸太大
cannot access symbol in given segment or group        在特定的段或类不能存取符号
operands have different frames                  操作数存在不同的结构
cannot access label through segment registers        在段寄存器中不能存取标记
jump destination too far                            跳转目标太远
jump destination must specify a label           跳转目标必须指定一个标记
instruction does not allow NEAR indirect addressing      指令不允许近间接寻址
instruction does not allow FAR indirect addressing      指令不允许远间接寻址

以上就是汇编中常见错误信息及中文注解,希望对你有所帮助

更多精彩内容其他人还在看

用标准c++实现string与各种类型之间的转换

这个类在头文件中定义, < sstream>库定义了三种类:istringstream、ostringstream和stringstream,分别用来进行流的输入、输出和输入输出操作。另外,每个类都有一个对应的宽字符集版本
收藏 0 赞 0 分享

C++如何通过ostringstream实现任意类型转string

再使用整型转string的时候感觉有点棘手,因为itoa不是标准C里面的,而且即便是有itoa,其他类型转string不是很方便。后来去网上找了一下,发现有一个好方法
收藏 0 赞 0 分享

C/C++指针小结

要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区
收藏 0 赞 0 分享

C++ 类的静态成员深入解析

在C++中类的静态成员变量和静态成员函数是个容易出错的地方,本文先通过几个例子来总结静态成员变量和成员函数使用规则,再给出一个实例来加深印象
收藏 0 赞 0 分享

C++类的静态成员初始化详细讲解

通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化
收藏 0 赞 0 分享

C++类静态成员与类静态成员函数详解

静态成员不可在类体内进行赋值,因为它是被所有该类的对象所共享的。你在一个对象里给它赋值,其他对象里的该成员也会发生变化。为了避免混乱,所以不可在类体内进行赋值
收藏 0 赞 0 分享

C++中的friend友元函数详细解析

友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。友元函数的特点是能够访问类中的私有成员的非成员函数。友元函数从语法上看,它与普通函数一样,即在定义上和调用上与普通函数一样
收藏 0 赞 0 分享

static全局变量与普通的全局变量的区别详细解析

以下是对static全局变量与普通的全局变量的区别进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助
收藏 0 赞 0 分享

C++ explicit关键字的应用方法详细讲解

C++ explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?下面就让我们一起来看看这方面的知识吧
收藏 0 赞 0 分享

教你5分钟轻松搞定内存字节对齐

随便google一下,人家就可以跟你解释的,一大堆的道理,我们没怎么多时间,讨论为何要对齐.直入主题,怎么判断内存对齐规则,sizeof的结果怎么来的,请牢记以下3条原则
收藏 0 赞 0 分享
查看更多