当前位置:文档之家› 汇编错误总结

汇编错误总结

汇编错误总结
汇编错误总结

1、test.asm(54):error A2000:Block nesting error、

说明:此错误信息通常见于一个段定义起始段名和末尾段名不一

致。说明:此错误信息通常见于一个段定义起始段名和末尾段

名不一致。修改:检查段定义,使段名前后保持一致。修改:

检查段定义,使段名前后保持一致。

2、test.asm(5):error A2005:Symbol is multidefined:DATA

说明:符号重复定义了。说明:此错误信息提示DATA符号

重复定义了。修改:重新设置。修改:将其中一个符号DATA

重新设置。

3、test.asm(7):error A2009:Symbol not defined:B9H、

说明:行指令出错,查看该指令,说明:此错误信息为

test.asm中第7行指令出错,查看该指令,源操作数为十六

进制数B9H。按规定以字母开始的十六进制数,应在其。按规

定以字母开始的十六进制数,以便汇编程序区分常数和符号。

前面加上数字0以便汇编程序区分常数和符号。另一种出错的

可能原因是程序中使用的符号变量没有定义。能原因是程序中

使用的符号变量没有定义。修改:修改:以0B9H取代B9H;

使用伪指令定义变量。;使用伪指令定义变量。

4、test.asm(11):error A2009:Symbol not defined:NO、

说明:说明:test.asm中第11行指令JLE no-count,符号

中使用了中折线,中,符号中使用了中折线,折线在汇编中是

作为减号,因此,没有定义。折线在汇编中是作为减号,因此,汇编提示标号NO没有定义。注意,汇编语言规定符号中可以

使用下划线。注意,汇编语言规定符号中可以使用下划线。修

改:修改:将no-count改为no_count。。

5、test.asm(28):error A2010:Syntax error、

说明:此错误信息提示源程序中第28行的指令语句的语法与

任何可识别说明:的语法不匹配,出错。的语法不匹配,出

错。修改:按照汇编指令的规定格式重新编写。修改:按照汇

编指令的规定格式重新编写。

6、test.asm(2):error A2018:Operand must be register:DX、

说明:指定的寄存器不是指令或伪指令所

要求的。如:ASSUME DX:DATA修改:查看汇编指令的规

定格式。修改:查看汇编指令的规定格式。

7、test.asm(16):error A2028:Operator expected、

说明:汇编程序需要的是操作符,得到的却是其它内容。说明:汇编程序需要的是操作符,得到的却是其它内容。test.asm中

第16行MOV DX OFFSET BUF2,显然是两操作数中间缺少

“,”,显然是两操作数中间缺少“”符号导致出错。符号

导致出错。修改:两操作数之间用“”号分隔。修改:两操

作数之间用“,”号分隔。

8、test.asm(47):error A2029:Division by0or overflow、

说明:给出一个用零作除数的表达式或溢出。说明:给出一个

用零作除数的表达式或溢出。test.asm中第47行指令AND AL, 00100000数据溢出,这是因为,汇编程序默认数制为数据溢

出,这是因为,十进制,因而该指令中的源操作数超出范围。

十进制,因而该指令中的源操作数超出范围。修改:若欲输入

的是二进制数,修改:若欲输入的是二进制数,在该数后加b,说明为二进制数。,说明为二进制数。

9、test.asm(8):error A2048:Must be index or base

register、

说明:指令需要基址或变址寄存器,源程序中给出的是其它寄

存器。说明:指令需要基址或变址寄存器,源程序中给出

的是其它寄存器。test.asm中第8行指令MOV AL,[SI+DX],显然,DX,显然,寄存器应寄存器。为BX寄存器。修

改:按寻址方式规定修改。修改:按寻址方式规定修改。

10、test.asm(6):error A2049:Illegal use of register、

说明:此错误信息为test.asm中第6行出错,查看该指令,

是由于将两说明:行出错,查看该指令,操作数之间的“”

号错为“”号而出错。另外一种情况,操作数之间的“,”号

错为“.”号而出错。另外一种情况,如MOV

AL,DL+20H,则是源操作数为非法格式。,则是源操作数为非

法格式。修改:按照汇编指令的规定格式重新编写。修改:按

照汇编指令的规定格式重新编写。

11、test.asm(48):error A2050:Value out of range、

说明:出错。说明:test.asm中第48行指令AND AL,

00010000出错。因为汇编程序默认数制为十进制,因此,该

指令源操作数为位立即数,序默认数制为十进制,因此,该指

令源操作数为16位立即数,不位寄存器。能送入8位寄存

器。修改:位寄存器,修改:将8位寄存器AL改为16位

寄存器,如AX。。

12、test.asm(10):error A2052:Improper operand type、

说明:非法的操作数类型。说明:非法的操作数类型。如

test.asm中第10行指令MOV RESULT,[SI]。汇编语言规定两

个操作数不能同时为存储器操作数。。汇编语言规定两个操作

数不能同时为存储器操作数。修改:先将源操作数传送到寄存

器,再由寄存器传送到另一个存储单元。修改:先将源操作数

传送到寄存器,再由寄存器传送到另一个存储单元。

13、test.asm(3):error A2053:Jump out of range by82byte(s)、

说明:说明:此错误信息为源程序test.asm中第3行的转

移指令指定的转移超出允许范围。出允许范围。修改:可在

该转移指令与目标指令中增加一条无条件转移指令。修改:可

在该转移指令与目标指令中增加一条无条件转移指令。

14、test.asm(21):error A2056:Immediate mode illegal、

说明:错误,操作数不能是立即数。说明:test.asm中第

21行指令IDIV8错误,操作数不能是立即数。修改:在该指

令前增加一条传送指令,修改:在该指令前增加一条传送指令,将该操作数8送入一个8位寄存器存放,器存放,如BL,

则该指令可修改为IDIV BL。,。

15、test.asm(41):error A2062:Missing or unreachable CS、

说明:伪指令导致。说明:这是由于缺乏段寄存器说明

ASSUME伪指令导致。修改:在代码段中增加段寄存器说明

ASSUME伪指令。修改:伪指令。

16、test.asm(26):error A2105:Expected:comma、

说明:双操作数指令中缺少逗号。说明:双操作数指令中缺少

逗号。修改:在该指令的两个操作数中加上逗号。修改:在该

指令的两个操作数中加上逗号。

17、test.asm(46):error A2105:Expected:instruction or

directive、

说明:通常是指令助记符输入错误。说明:通常是指令助记符

输入错误。修改:检查指令助记符。修改:检查指令助记符。

18、test.asm(9):warning A4001:Extra characters on line、

说明:当一行上已接受了定义指令说明的足够信息,说明:当

一行上已接受了定义指令说明的足够信息,而又出现多余的字

符,汇编程序提示出错。一般多由于指令中出现多余或非法的符

汇编程序提示出错。号。修改:仔细检查该指令。修改:仔

细检查该指令。

19、test.asm(13):warning A4016:Reserved word used as

symbol:AAA、

说明:企图非法使用一个汇编程序的保留字,是汇编的保留字

(说明:企图非法使用一个汇编程序的保留字,AAA是汇编的

保留字(指令助记符),不能作为符号使用。令助记符),不

能作为符号使用。),不能作为符号使用修改:重新设置符号

名。修改:重新设置符号名。

20、test.asm(33):warning A4031:Operand types must match、

说明:test.asm中第33行指令MOV AX,RESULT,说明:,其中变量RESULT定义的,其属性为字节,不匹配。是用DB

定义的,其属性为字节,因而与16位寄存器AX不匹配。

位寄存器,另一种情况是两个操作数分别为8位寄存器和18

位寄存器,同样也不匹配。也不匹配。修改:选用相应位数

的寄存器保证两个操作数为相同位数。修改:选用相应位数的

寄存器保证两个操作数为相同位数。

21、test.asm(19):warning A4057:Illegal size for operand、

说明:操作数的长度非法,说明:操作数的长度非法,如PUSH

AL。非法。修改:改用指令规定位数的寄存器,修改:改用

指令规定位数的寄存器,如PUSH AX。。

22、test.asm(55):warning A4085:End of file,no END

directive、说明:源程序中缺乏模块结束伪指令END。。

修改:整个源程序最后增加模块结束伪指令END。。

23、test.asm(32):warning A4101:Missing data;zero assumed

说明:行的指令少了操作数,说明:此错误信息提示源程序中第32行的指令少了操作数,即单操作数指令缺少操作数或双操作数指令缺少一个操作数。指令缺少操作数或双操作数指令缺少一个操作数。作数修改:给指令加上适当的操作数。

修改:给指令加上适当的操作数。

汇编错误对照表

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,停止汇编 invalid 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 预期操作数

农行网银错误信息代码一览.doc

农行网银错误信息代码一览 ..农行网银错误信息代码一览错误代码错误详细描述错误信息0000 交易成功交易成功[0000] 0001 账户不存在账户不存在[0001] 0002 账户金额不足账户余额不足[0002] 0003 账户被全额冻结账户被冻结[0003] 0004 账户被部分冻结金额不足账户被部分冻结,余额不足[0004] 0005 账户密码错误账户密码错误[0005] 0007 对方账户不存在对方账户不存在[0007] 0008 交易金额不符合业务系统限制交易金额不符合业务系统限制[0008] 0009 未授权未授权[0009] 0010 授权金额不足授权金额不足[0010] 0011 权限不足无此权限[0011] 0012 账户已销户账户已销户[0012] 0013 账户已经临时挂失账户已经临时挂失[0013] 0014 账户已经挂失账户已经挂失[0014] 0015 对方账户状态错误对方账户状态错误[0015] 0016 账户已超过有效期账户已超过有效期[0016] 0017 对该账户没有操作权限对该账户没有操作权限[0017] 0018 账户钞汇标志不符账户钞汇标志不符[0018] 0019 账户币种不符账户币种不符[0019] 0020 账户不允许通存通兑账户不允许通存通兑[0020] 0021 支款控制方式不符支款控制方式不符[0021] 0030 交易金额必须大于0 交易金额必须大于0[0030] 0031 交易金额必须等于月存金额交易金额必须等于月存金额[0031] 0040 未找到符合查询条件的记录未找到符合查询条件的记录[0040] 0051 转入账户不存在转入账户不存在[0051] 0052 转出账户不存在转出账户不存在[0052] 0060 开户证件号码不存在开户证件号码不存在[0060] 0061 开户证件类型不存在开户证件类型不

Oracle错误代码案例总结及解决方案

常见错误: ORA-00001:违反唯一约束条件(主键错误) ORA-00028:无法连接数据库进程 ORA-00900:无效sql语句 ORA-00904:字段名写错或是建表时最后一个字段有逗号 ORA-00907:缺少右括号 ORA-00911:无效字符 ORA-00917:缺少逗号 ORA-00918:未明确定义列 ORA-00922:丢失或无效的选项(表名等可能有空格) ORA-00923:未找到FROM关键字 ORA-00926:缺少value ORA-00933: SQL命令未正确结束 ORA-00936:缺少表达式 ORA-00937:不是单组分组函数 ORA-00942:表或视图不存在 ORA-00947:没有足够的值(一般是插入语句出现的错,插入值的数量与字段不符) ORA-00979:不是group by的表达式 ORA-01009:缺少法定参数(eg:sql做参数时,且sql语句为空时,报错) ORA-01098:数据库无法关闭及启动 ORA-01400:无法将null值插入 ORA-01401:插入的值对于列过大 ORA-01476:sql中存在除数为零 ORA-01579: 恢复过程中出现写错误 ORA-01580: 创建控制备份文件时出错 ORA-01581: 尝试使用已分配的回退段() 新区()

ORA-01582: 无法打开要备份的控制文件 ORA-01583: 无法获得要备份的控制文件的块大小 ORA-01584: 无法获得要备份的控制文件的文件大小 ORA-01585: 标识备份文件时出错 ORA-01586: 无法打开要备份的目标文件 ORA-01587: 复制控制文件的备份文件时出错 ORA-01588: 要打开数据库则必须使用RESETLOGS 选项 ORA-01589: 要打开数据库则必须使用RESETLOGS 或NORESETLOGS 选项ORA-01590: 段可用列表数() 超出最大数 ORA-01591: 锁定已被有问题的分配事务处理挂起 ORA-01592: 将第7 版回退段() 转换为Oracle 8 版格式时出错 ORA-01593: 回退段最佳大小( blks) 小于计算的初始大小( blks) ORA-01594: 尝试放回已释放的回退段() 区() ORA-01595: 释放区() 回退段() 时出错 ORA-01596: 无法在参数中指定系统 ORA-01597: 无法改变联机或脱机系统回退段 ORA-01598: 回退段''未联机 ORA-01599: 无法获得回退段(), 高速缓存空间已满 ORA-01600: 至多只有一个""在子句""()中 ORA-01601: 子句""()中的存储桶大小非法 ORA-01603: 子句""()中的分组大小非法 ORA-01604: 子句""()中的编号范围非法 ORA-01605: 子句""()中缺少编号 ORA-01606: gc_files_to_locks 不同于另一已安装例程的参数 ORA-01608: 无法将回退段''联机,其状态为() ORA-01609: 日志是线程的当前日志- 无法删除成员 ORA-01610: 使用BACKUP CONTROLFILE 选项的恢复必须已完成 ORA-01611: 线程编号无效- 必须介于1 和之间 ORA-01612: 线程已经启用 ORA-01613: 线程只有日志- 要求至少启用2 个日志 ORA-01614: 线程正忙- 无法启用 ORA-01615: 线程已安装- 无法禁用 ORA-01616: 线程已打开- 无法禁用 ORA-01617: 无法安装: 不是有效的线程编号 ORA-01618: 线程未启用- 无法安装

MT4错误代码最完整汇总要点

请问MT4 EA不能开单,日志显示“OrderSend error 130”是什么意思 最好能直接给我一个能用的ORDERSEND的代码,希望能根据相应条件,每个货币对都能开单而且只开一单。 举报违规检举侵权投诉|2013-08-23 13:19 提问者采纳 百度啊,大哥。也有MT4错误代码表的。 ERR_INVALID_STOPS,检查你的止损价位,是不是太近、甚至设反了。 ====================================================================== MT4错误代码最完整汇总(2011-05-16 09:44:02)转载▼标签:杂谈分类:外汇 MT4 的错误代码是存放在MetaEditor的libraries文件夹下 stdlib.mq4或stderror.mq4文件中 但是内容都是英文,我将这部分的翻译转过来,以供参考 case 1: error_string="no error"; 没有错误返回。; case 2: error_string="common error"; 没有错误返回但结果不明; case 3: error_string="invalid trade parameters"; 一般错误; case 4: error_string="trade server is busy";无效交易参量; case 5: error_string="old version of the client terminal";交易服务器繁忙; case 6: error_string="no connection with trade server";客户终端旧版本; case 7: error_string="not enough rights";没有连接服务器; case 8: error_string="too frequent requests";没有权限; case 9: error_string="malfunctional trade operation (never returned error)";请求过于频繁; case 64: error_string="account disabled"; 交易运行故障; case 65: error_string="invalid account";账户禁止; case 128: error_string="trade timeout";无效超时; case 129: error_string="invalid price"; 无效价格; case 130: error_string="invalid stops";无效停止; case 131: error_string="invalid trade volume";无效交易量; case 132: error_string="market is closed";市场关闭; case 133: error_string="trade is disabled";交易被禁止; case 134: error_string="not enough money";资金不足; case 135: error_string="price changed";价格改变; case 136: error_string="off quotes"; 开价; case 137: error_string="broker is busy (never returned error)";经纪繁忙; case 138: error_string="requote";重新开价; case 139: error_string="order is locked";定单被锁定; case 140: error_string="long positions only allowed";只允许看涨仓位; case 141: error_string="too many requests";过多请求; case 145: error_string="modification denied because order too close to market";因为过于接近市场,修改否定; case 146: error_string="trade context is busy";交易文本已满;

汇编语言出错信息说明

汇编程序出错信息说明 汇编程序出错信息 编 码 提示说明 0Block nesting error 嵌套过程、段、结构、宏指令、IRC、IRP或REPT不是正确结束,如嵌套的外层已终止,而内层还是打开状态。 1Extra characters on line 当一行上已接受了定义指令说明的足够信息,而又出现多余的字符。 2Register already defined汇编内部出现逻辑错误。 3Unknown symbol type 符号语句的类型字段中有些不能识别的东西。 4Redefinition of symbol在第二遍扫视时,连续地定义了一个符号。5Symbol is multi-defined重复定义一个符号。 6Phase error between passes 程序中有模棱两可的指令,以至于在汇编程序的两次扫视中,程序标号的位置在数值上改变了。 7Already had ELSE clause在ELSE从句中试图再定义ELSE语句。 8Not in conditional block 在没有提供条件汇编指令的情况下,指定了ENDIF或ELSE。 9Symbol not defined符号没有定义 10Syntax error语句的语法与任何可识别的语法不匹配11Type illegal in context指定的类型在长度上不可接收 12Should have been group name给出的组名不符合要求 13Must be declared in pass1得到的不是汇编程序所要求的常数值,例如:向前引用的长度 14Symbol type usage illegal PUBLIC符号的使用不合法 15Symbol already different kind 企图定义与以前定义不同的符号 16Symbol is reserved word企图非法使用一个汇编程序的保留字 17Forward reference is illegal向前引用必须是在第一遍扫视中定义过的 18Must be register 希望寄存器作为操作数,但用户提供的是符号而不是寄存器 19Wrong type of register 指定的寄存器类型并不是指令或伪操作所要求的,例如:ASSUME AX 20Must be segment or group希望给出段或组,而不是其它

错误代码总结

1 10 上次升级的版本日期: 10/ 11/90. 21 10 警告:严重错误%1! 发生于%2!。请记下错误和时间,然后与系统管理员联系。 102 15 在''%1!'' 附近有语法错误。 103 15 以''%2!'' 开头的%1! 太长。最大长度为%4!。 104 15 如果语句中包含UNION 运算符,那么ORDER BY 子句中的项就必须出现在选择列表中。 105 15 字符串''%1!'' 之前有未闭合的引号。 106 16 查询中的表名太多。允许的最大数目为%1!。 107 15 列前缀''%1!'' 与查询中所用的表名或别名不匹配。 108 15 ORDER BY 子句中的位置号%1! 超过了选择列表中项数目。 109 15 INSERT 语句中列的数目大于VALUES 子句中指定的值的数目。VALUES 子句中值的数目必须与INSERT 语句中指定的列的数目匹配。 110 15 INSERT 语句中列的数目小于VALUES 子句中指定的值的数目。VALUES 子句中值的数目必须与INSERT 语句中指定的列的数目匹配。 111 15 ''%1!'' 必须是批查询中的第一条语句。 112 15 %1! 语句中不允许有变量。 113 15 缺少注释的结尾标记'*/'。 114 15 对于将值赋给变量的语句,浏览模式无效。 116 15 当没有用EXISTS 引入子查询时,在选择列表中只能指定一个表达式。 117 15 %1! 名称''%2!'' 包含的前缀数目超过了最大值。最大值为%4!。 118 15 只有sysadmin 角色的成员才能指定%2! 语句的%1! 选项。 119 15 必须传递参数个数%1!,并以'@name = value' 的形式传递后续的参数。一旦使用了'@name = value' 形式之后,所有后续的参数就必须以'@name = value' 的形式传递。 120 15 INSERT 语句的选择列表包含的项少于插入列表中的项。SELECT 语句中值的数目必须与INSERT 语句中列的数目匹配。 121 15 INSERT 语句的选择列表包含的项多于插入列表中的项。SELECT 语句中值的数目必须与INSERT 语句中列的数目匹配。 122 15 %1! 选项只允许用于%2! 语法。 123 15 批/过程超过了%1! 个字符的最大长度。 124 15 CREATE PROCEDURE 不包含任何语句。 125 15 Case 表达式只能嵌套到%1! 层。 128 15 在此上下文中不允许使用名称''%1!''。此处只允许使用常量、表达式或变量。不允许使用列名。 129 15 填充因子%1! 是无效百分比;填充因子必须介于1 到100 之间。 130 16 不能对包含聚合或子查询的表达式执行聚合函数。 131 15 赋予%2! ''%3!'' 的大小(%1!)超过了任意数据类型的最大允许值(%5!)。132 15 标签''%1!'' 已声明。标签名称在批查询或存储过程内部必须唯一。 133 15 GOTO 语句指向了标签''%1!'',但该标签尚未声明。 134 15 变量名''%1!'' 已声明。变量名在批查询或存储过程内部必须唯一。 135 15 不能在WHILE 语句的作用域之外使用BREAK 语句。 136 15 不能在WHILE 语句的作用域之外使用CONTINUE 语句。 137 15 必须声明变量''%1!''。

汇编错误总结

1、test.asm(54): error A2000: Block nesting error 、 说明:此错误信息通常见于一个段定义起始段名和末尾段名不一 致。说明:此错误信息通常见于一个段定义起始段名和末尾段 名不一致。修改:检查段定义,使段名前后保持一致。修改: 检查段定义,使段名前后保持一致。 2、test.asm(5): error A2005: Symbol is multidefined: DATA 说明:符号重复定义了。说明:此错误信息提示 DATA 符号重 复定义了。修改:重新设置。修改:将其中一个符号 DATA 重 新设置。 3、test.asm(7): error A2009: Symbol not defined: B9H 、 说明:行指令出错,查看该指令,说明:此错误信息为 test.asm 中第 7 行指令出错,查看该指令,源操作数为十六进制 数 B9H。按规定以字母开始的十六进制数,应在其。按规定以 字母开始的十六进制数,以便汇编程序区分常数和符号。前面 加上数字 0 以便汇编程序区分常数和符号。另一种出错的可能 原因是程序中使用的符号变量没有定义。能原因是程序中使用 的符号变量没有定义。修改:修改:以 0B9H 取代 B9H;使用 伪指令定义变量。;使用伪指令定义变量。 4、test.asm(11): error A2009: Symbol not defined: NO 、 说明:说明:test.asm 中第 11 行指令 JLE no-count,符号中使 用了中折线,中,符号中使用了中折线,折线在汇编中是作为 减号,因此,没有定义。折线在汇编中是作为减号,因此,汇 编提示标号 NO 没有定义。注意,汇编语言规定符号中可以使 用下划线。注意,汇编语言规定符号中可以使用下划线。修改:修改:将 no-count 改为 no_count。。 5、test.asm(28): error A2010: Syntax error 、

总结电脑各种错误代码

总结各种代码(硬盘故障,ADSL错误代码表,Windows死机)一硬盘故障提示信息的含义 (1)Date error(数据错误) 从软盘或硬盘上读取的数据存在不可修复错误,磁盘上有坏扇区和 坏的文件分配表。 (2)Hard disk configuration error(硬盘配置错误) 硬盘配置不正确,跳线不对,硬盘参数设置不正确等。 (3)Hard disk controller failure(硬盘控制器失效) 控制器卡(多功能卡)松动,连线不对,硬盘参数设置不正确等。 (4)Hard disk failure(硬盘失效故障) 控制器卡(多功能卡)故障,硬盘配置不正确,跳线不对,硬盘物 理故障。 (5)Hard disk drive read failure(硬盘驱动器读取失效) 控制器卡(多功能卡)松动,硬盘配置不正确,硬盘参数设置不正 确,硬盘记录数据破坏等。 (6)No boot device available(无引导设备) 系统找不到作为引导设备的软盘或者硬盘。 (7)No boot sector on hard disk drive(硬盘上无引导扇区) 硬盘上引导扇区丢失,感染有病毒或者配置参数不正确。 (8)Non system disk or disk error(非系统盘或者磁盘错误) 作为引导盘的磁盘不是系统盘,不含有系统引导和核心文件,或者 磁盘片本身故障。 (9)Sectornot found(扇区未找到) 系统盘在软盘和硬盘上不能定位给定扇区。 (10)Seek error(搜索错误) 系统在软盘和硬盘上不能定位给定扇区、磁道或磁头。 (11)Reset Failed(硬盘复位失败) 硬盘或硬盘接口的电路故障。 (12)Fatal Error Bad Hard Disk(硬盘致命错误) 硬盘或硬盘接口故障。 (13)No Hard Disk Installed(没有安装硬盘) 没有安装硬盘,但是CMOS参数中设置了硬盘;

MASM汇编错误信息说明 ASM问题汇总

MASM汇编错误信息说明 test.asm(54):error A2000:Block nesting error 1.1.test.asm(54): 说明:此错误信息通常见于一个段定义起始段名和末尾段名不一致。 修改:检查段定义,使段名前后保持一致。 test.asm(5):error A2005:Symbol is multidefined:DATA 2.2.test.asm(5): 说明:此错误信息提示DATA符号重复定义了。 修改:将其中一个符号DATA重新设置。 test.asm(7):error A2009:Symbol not defined:B9H 3.3.test.asm(7): 说明:此错误信息为test.asm中第7行指令出错,查看该指令,源操作数为十六进制数B9H。按规定以字母开始的十六进制数,应在其前面加上数字0以便汇编程序区分常数和符号。另一种出错的可能原因是程序中使用的符号变量没有定义。 修改:以0B9H取代B9H;使用伪指令定义变量。 test.asm(11):error A2009:Symbol not defined:NO 4.4.test.asm(11): 说明:test.asm中第11行指令JLE no-count,符号中使用了中折线,中折线在汇编中是作减号,因此,汇编提示标号NO没有定义。注意,汇编语言规定符号中可以使用下划线。 修改:将no-count改为no_count。 test.asm(28):error A2010:Syntax error 5.5.test.asm(28): 说明:此错误信息提示源程序中第28行的指令语句的语法与任何可识别的语法不匹配,出错。 修改:按照汇编指令的规定格式重新编写。 6.6.test.asm(2): test.asm(2):error A2018:Operand must be register:DX 说明:指定的寄存器不是指令或伪指令所要求的。如:ASSUME DX:DATA 修改:查看汇编指令的规定格式。

PIC16系列_单片机常用伪指令(汇编)

PIC 单片机端口电平变化中断使用必须注意的问题 PICC18使用说明 PIC 单片机常用伪指令 PIC单片机2009-02-19 11:16:40 阅读8 评论0 字号:大中小订阅 3.2.3 MPASM 的伪指令 我们在第一章中已经详细介绍了中档PIC 单片机的35 条指令,源程序的编写主要就是用这些基本的指令实现你的控制任务。但为了增加源程序的可读性和可维护性,我们引入了伪指令的概念。伪指令本身不会产生可执行的汇编指令,但它们可以帮组“管理”你编写的程序,其实用性和必要性绝不亚于35 条正真的汇编指令。我们在此着重介绍最常用的几种 伪指令。 #include 或include #include 伪指令的作用是把另外一个文件的内容全部包含复制到本伪指令所在的位置。 被包含复制的文件可以是任何形式的文本文件,当然文件中的内容和语法结构必须是MPASM 能够识别的。最经常被“include”的是针对PIC 单片机内部特殊功能寄存器定义的包含头文件,在MPLAB 安装后它们全部放在路径“ C:\Program Files\MPLAB IDE\MCHIP_Tools”下,每一个型号的PIC 单片机都有一个对应的预定义包含头文件,扩展名是“.inc”。除了一些符号预定义文件,你也可以把现有的其它程序文件作为一个代码模块直接“包含”进来作为自己程序的一部分。见例3-01。 #include ;把预定义的PIC16F877A 寄存器符号包含到此处 #include ”math.asm” ;把现有的程序文件包含进来作为自己代码的一部分 例3-01 请注意被包含文件的引用方式。一种是<>尖括号引用,这种引用意味着让编译器去默认的路径下寻找该文件,MPASM 默认的寄存器预定义文件存放路径即为上面提及的MPLAB 安装后的目录;另一种是””双引号引用,这种引用方式的意思是指示编译器从引号中指定的全程文件路径下寻找该文件。例3-01 中”math.asm”没有指定路径,即意味着在当前项目路径下寻找math.asm 文件。如果编译器找不到被包含的文件,将会有错误信息告 知。 请在你的源程序中尽量用MPLAB 标准头文件定义的寄存器符号。一来这些被定义的寄存器符号和芯片数据手册上的描述一一对应,理解起来即直观又容易;二来如果用你自己定义符号就缺乏一个大家能一起交流的标准平台,其他人要解读你的代码时将费时费力。故例3-01 中的首行#include 包含引用伪指令可以说是PIC 单片机程序编写时的标准必备。

单片机汇编语言常见错误分析

单片机汇编语言常见错误分析 一、汇编软件汇编失败原因分析: 这里采用Keil C51 软件包中的宏汇编器A51 作为编绎器,单片机的汇编语言编写时要注意一定的语法,详细介绍可以参考相关参考书,语法错误会造成 汇编失败,常见的汇编错误如下:1. 标号重复:常见于复制、粘贴程序时忘 记修改标号,造成出现多个相同的标号,标号是不允许重复的。2.标点符号 以全角方式输入:汇编程序要求标点符号为半角方式,否则汇编失败。可以 在输入:,;时切换到半角方式,或者在大写状态输入标点符号,这也是很容易 犯而且不容易发觉的错误。3.数值#FFH 前遗漏0:根据要求应该在a~f 前加0,写成#0FFH4.字母O 和数字0 搞混:有时候这两个字看上去完全相同,要注意哦~~5.标号后边遗漏”:”6.标号使用了特殊字符:标号不能用指令 助记符、伪指令、特殊功能寄存器名和8051 在指令系统中用的“#”、“@”等,长 度以2~6 字符为宜,第一字母必须是英文字母。比如:T1、T2、A、B 这些字 符有特定的含义,不允许用于标号。7.AJMP 跳转超过2K 地址:AJMP 属于短跳转命令,有2K 地址范围的限制。8.超过地址范围:JB P3.2,EXIT 跳转超过-128~127 个地址范围。这个是最容易出现的错误!你有可能程序刚才还 能汇编编译成功,你加了一段程序后程序就提示出错了,你可以把JB P3.2,EXIT 转换成JNB P3.2,LD01AJMP EXITLD01: AJMP EXIT……9.字母I 和数字1 混淆:冒失鬼的常见问题。10.创造发明不存在的汇编语言指令:在编写程序程序的过程中可不欢迎这种创新,这种指令汇编程序不支持,芯片也不 认可。11.符号“:”“;”最好用半角书写。 二、程序出错: 1.寄存器重复调用:比如主程序中设定了R4=5,表示主程序循环执行5 次,

iCAP 分析错误代码汇总

'F', //OVER_FAIL, fail check high 超过检查规定值,失败 'F', //BELOW_FAIL, fail check low 低于检查规定值,失败 'W', //OVER_WARN, warn check high 超过警告规定值,失败 'W', //BELOW_WARN, warn check low 低于警告规定值,失败 '>', //OVER_PRLIM, over print limits 超过规定打印限值 '<', //BELOW_PRLIM, below print limits 低于规定打印限值 '?', //CALCERR, general calculation error 计算错误 'C', //OVERCAL_ERR, concentration beyond calibrated range (past inflection point) 浓度超出计算范围(超过校准点) 'c', //UNDERCAL_ERR, concentration yields negative value (below blank standard) 浓度在无效范围(在空白标准以下) 'z', //GAIN_ZERO_ERR, divide by 0 A1 (gain) calibratio coefficient 被0除计算错误 'k', //IEC_ERR, error on an interferent line 干扰错误出现干扰线 'i', //INSTD_ERR, error on the internal standard line 内标标准错误内标标准线错误 "i"- Interferent (Overlapping Subarrays) - data can be used 干扰(图谱交迭) 'I' - Interferent (overlapping subarrays) - data cannot be used 干扰(图谱交迭) 'D', //PEAK_OFFCHIP, analyte peak off chip (data not returned) 分析峰偏离 '^', //SATURATED, peak saturated (data not returned) 饱和,峰能量过高 'P', //PLASMA_ERR, torch went out or other plasma condition failed 等离子体错误,火炬熄灭或者其他等离子体状况 '*', //GEN_ERR, global failure - NO DATA ACQUIRED 没有获取数据库 '*', //MEM_ERR, memory error (too many data points) 记忆错误(太多数据点) 'o', //OVERLAP_WARN, overlapping subarrays 过高警告 '*', //READ_ERR, could not read subarray 读取错误,不能读取谱峰 '*', //CID_ERR, CID all zeros - CID error CID 错误,所有点为0 'Z', //IS_ZERO_ERR, divide by 0 background corrected internal standard value error 被内标准的0背景除 'N', //line de-selected before exposure 在暴光前没有去除选择的谱线

单片机编程时常见的十大问题解答

单片机编程时常见的十大问题解答 1.C 语言和汇编语言在单片机编程时各有哪些优缺点?答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。 C 语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。 对于目前普遍使用的RISC 架构的8bit MCU 来说,其内部ROM、RAM、STACK 等资源都有限,如果使用C 语言编写,一条C 语言指令编译后,会变成很多条机器码,很容易出现ROM 空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C 编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。 2.C 或汇编语言可以用于单片机,C++能吗?答:在单片机编程中,主要是汇编和C,没有用C++的。 3.搞单片机编程,一定要会C 吗?答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。 对于目前普遍使用的RISC 架构的8bit MCU 来说,其内部ROM、RAM、STACK 等资源都有限,如果使用C 语言编写,一条C 语言指令编译后,会变成很多条机器码,很容易出现ROM 空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C 编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什么动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在资源较少单片机开发中,我们还是建议采用汇编语言比较好。 而C 语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言

汇编语言常见指令

?PTR?操作符:强制类型转换 MOV BYTE PTR [BX], 20H ;1B立即数20H送DS:[BX] MOV WORD PTR [BX], 20H ;立即数20H送DS:[BX], ;00H送DS:[BX+1] 2.LEA(Load Effective Address) 设:变量X的偏移地址为1020H , (BP)=0020H 执行指令后: LEA DX, X LEA BX, [BP] ; 执行后, (DX) = 1020H ; 执行后, (BX) = 0020H 3.地址传送指令LDS,LES LDS REG16, MEM ; 从存储器取出4B,送入REG16和DS LES REG16, MEM ; 从存储器取出4B,送入REG16和ES 4.符号扩展指令CBW,CWD CBW ;将AL寄存器内容符号位扩展到AH CWD ;将AX寄存器内容符号位扩展到DX 设:(AX)= 8060H,(DX)=1234H 执行下列指令后 CBW ;(AX)= 0060H 设:(AX)= 8060H,(DX)=1234H 执行下列指令后 CWD ;(DX)= 0FFFFH,(AX)= 8060H 5.交换指令XCHG 例如,(AX)= 5678H 执行下面指令后 XCHG AH, AL ;(AX)= 7856H 6.换码指令XLAT XLAT ;AL←DS: [BX+AL] 表格的首地址事先存放在内存逻辑地址DS: BX中, AL的内容是相对于表格的位移量, 把对应内存的内容取出放在AL寄存器。 7.逻辑运算符 SHR(右移) SHL(左移) AND(与) OR(或) XOR(异或)

天正给排水常见问题汇编

TWT常见问题汇编 为了大家能尽快掌握软件,节约重复提问所花费的时间,特将比较常见的问题整理总结,希望能对大家有所帮助,有错误的地方还请大家多多指正,共同讨论,不断完善这个汇编,谢谢!:) ---------------------------------------------- 夫君子之行,静以修身,俭以养德,非淡泊无以明志,非宁静无以致远。 好评:0差评:0精华度:0% ID:yxt119 等级:列兵 积分:45 经验:202 留言 [ 申请博客] [ 引用] 2005-07-14 11:47:56.0 第2 楼 汇编在那儿呢 [ 样本] 金州代表业绩[ 样本] 项目管理与咨询业务 ID:qie3519 等级:下士 积分:1152 经验:1491 留言 [ 申请博客] [ 引用] 2005-07-14 11:59:22.0 第3 楼 天正的软件工具栏、工具条怎么调不出来? 1.首先把请把原来装过的天正非正版通过:添加\删除程序全部卸载——再把安装目录下的天

正给排水文件夹删除——最后删除注册表中的twt文件夹(current_user和local_machine中),重新安装天正。 2.调出菜单的方法:Ctrl+F12 或命令行键入tmnload(?:\Tangent\TWT6\sys\tch.tmn文件加载)。 3.调出工具条的方法:工具-自定义-工具栏-TCH 前面打上对钩即可或初始设置中[启动天正快捷工具条]前面打上对钩即可。 4.如果始终不出现工具条和菜单,检查一下是否您改动过系统时间,软件过期也不会出现工具条和菜单(试用版)。 为何天正里画的墙体、管线和标注的文字用R14或CAD2000以上版本打开时看不到?(打印时不显示等类似问题)? 1.天正实体在cad中是看不到的,需要用到天正菜单中的【另存旧版】或【批转旧版】命令,保存成天正3的格式,就可以用14或其它版本打开了;如果是2004及以上版本需要先用CAD文件菜单中提供的【另存为】到02,再用另存旧版到天正3即可;如果是用天正打开而不显示,可能是本图已损坏,或可能使用过盗版在存盘时出现问题。注意:【另存旧版】与【另存为】有本质不同。前者分解转存天正实体,后者只转存一般CAD对象。 2.安装天正插件,不破坏实体而能看到图形,但不能编辑。 如何设置CAD图只能看不能改和编辑? 天正给排水6.5可以,不过要小心,自己的图要留备份。 未公开命令:图纸保护 T68_TProtect 用来图纸加密,一定要记住秘密,否则再也不能编辑了,注:被加密的图无法炸开。 解密只要双击图,然后输入秘密,再炸开,一切又恢复正常。 多文档显示的问题?(文档标签) HKEY_CURRENT_USER\Software\Tangent\TWT\6.0\Settings\DwgTabBar 设为1为显示,否则不显示。 在CAD中的Ctrl+c、Ctrl+p、Ctrl+z等都无效了,在工具—自定义—键盘中设置后可以使用,但是只要退出CAD,再进入的时候又不能用了。不知如何解决? 重新加载ACAD菜单。menu 选择*.mnu 为什么管径标注离管线很远或覆盖在管线上? 管径标注离管的距离由2个方面控制: (1)【初始设置】的“标注离管距离”控制,它的单位是MM (2)受当前比例控制。比如:当希望标注离管线2mm时,【初始设置】为2,当前比例是1:100时,则实际管线离标注距离为:200;这时字高不变,比例变为1:200,标注会盖在管线上,那么原离管距离就不符合此情况,需要调整到4mm才行。 注意:标注文字字高过大、离管距离过小→标注覆盖在管线上 标注文字字高过小、离管距离合适或过大→标注离管线过远 卫生器具的标住文字在圆中不居中的问题? 字体原因,用默认的“twt_win”windows字体就没事了。

Windows错误代码解释汇总

遇到什么错误了就找找,应该会有帮助的。 6001 0x1771 指定的文件无法解密。 6002 0x1772 指定的文件已加密,而且用户没有能力解密。 6003 0x1773 这个系统没有有效的加密恢复策略配置。 6004 0x1774 所需的加密驱动程序并未加载到系统中。 6005 0x1775 文件加密所使用的加密驱动程序与目前加载的加密驱动程序不同。 6006 0x1776 没有为用户定义EFS 关键字。 6007 0x1777 指定的文件并未加密。 6008 0x1778 指定的文件不是定义的EFS 导出格式。 6009 0x1779 指定的文件是只读文件。 6010 0x177A 已为加密而停用目录。 6011 0x177B 不信任服务器来进行远程加密操作。 6012 0x177C 为此系统配置的恢复策略包含无效恢复证书。 6013 0x177D 用在此源文件上的加密算法需要比目标文件上更大的密钥缓冲区。 6014 0x177E 磁盘分区不支持文件加密。 6015 0x177F 这台机器已为文件加密而停用。 6016 0x1780 需要一个更新的系统来解密此加密文件。 6118 0x17E6 此工作组的服务器列表当前无法使用 6200 0x1838 要正常运行,任务计划程序服务的配置必须在系统帐户中运行。单独的任务可以被配 置成在其他帐户中运行。 6600 0x19C8 日志服务遇到无效日志扇区。 6601 0x19C9 日志服务遇到块校验无效的日志扇区。 6602 0x19CA 日志服务遇到重映射的日志扇区。 6603 0x19CB 日志服务遇到部分或未完成的日志块。 6604 0x19CC 日志服务遇到错误,原因:试图访问活动日志范围外的数据。 6605 0x19CD 日志服务用户排列缓冲区已用尽。 6606 0x19CE 日志服务遇到错误,原因:试图从读取上下文无效的排列区读取。 6607 0x19CF 日志服务遇到无效日志重新启动区域。 6608 0x19D0 日志服务遇到无效日志块版本。 6609 0x19D1 日志服务遇到无效日志块。 6610 0x19D2 日志服务遇到错误,原因:试图以无效读取模式读取。 6611 0x19D3 日志服务遇到错误,原因:日志流没有重启动区。 6612 0x19D4 日志服务遇到损坏的元数据文件。 6613 0x19D5 日志服务遇到无法由日志文件系统创建的元数据文件。 6614 0x19D6 日志服务遇到数据不一致的元数据文件。 6615 0x19D7 日志服务遇到错误,原因:试图分配和排列保留空间。 6616 0x19D8 BITS 报告计划下载已经失败了%2 次。原因是: %1。日志服务无法删除日志文件或 文件系统容器。 6617 0x19D9 日志已经达到允许分配给日志文件的容器的上限。 6618 0x19DA 日志服务试图读取或写入日志开始之前的位置。

相关主题
文本预览
相关文档 最新文档