好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

汇编程序出错信息.doc

8页
  • 卖家[上传人]:kms****20
  • 文档编号:39638137
  • 上传时间:2018-05-18
  • 文档格式:DOC
  • 文档大小:120.50KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 汇编程序出错信息汇编程序出错信息序号序号显显 示示编编 码码 说说 明明0Block nesting error嵌套过程、段、结构、宏指令、IRP、IRPC 或 REPT 不是正确结束如嵌套的外层已终止,而内层还是打开状态 1Extra characters on line当一行上已接受了定义指令的足够信息,又出现了多余的字符 2Register already defined汇编内部出现逻辑错误 3Unknown symbol type在符号语句的类型字段中,有些不能识别的东西4Redefinition of symbol在第二遍扫视时,接着又定义一个符号5 5Symbol is multi-defined重复定义一个符号6Phase error between passes程序中有模棱两可的指令,以至于在汇编程序的两次扫视中,程序标号的位置在数值上改变了7 7Already had ELSE clause在 ELSE 从句中试图再定义 ELSE 从句8 8Not in conditional block在没有提供条件汇编指令的情况下,指定了 ENDIF 或 ELSE.9 9Symbol not defined符号没有定义1010Syntax error语句的语法与任何可识别的语法不匹配1111Type illegal in context指定的类型在长度上不可接收1212Should have been group name给出的组合不符合要求1313Must be declared in pass得到的不是汇编程序所要求的常数值。

      例如,向前引用的向量长度1414Symbol type usage illegal PUBLEC 符号的使用不合法1515Symbol already different kind企图定义与以前定义不同的符号1616Symbol is reserved word企图非法使用一个汇编程序的保留字(例如,宣布 MOV 为一个变量) 1717Forward references is illegal向前引用必须是在第一遍扫视中定义过的1818Must be register希望寄存器作为操作数,但用户提供的是符号而不是寄存器1919Wrong type of register指定的寄存器类型并不是指令中或伪操作中所要求的,例如 ASSUME AX2020Must be Segment or group希望给出段或组,而不是其它2121Symbol has no segment想使用带有 SEG 的变量,而这个变量不能识别段2222Must be symbol type必须是 WORD、DW、QW、BYTE 或 TB,但接收的是其它内容2323Already defined locally试图定义一个符号作为 EXTERNAL,但这个符号已经在局部定义过了2424Segment parameters are changedSEGMENT 的自变量表与第一次使用的这个段的情况不一样2525Not proper align/combine typeSEGMENT 参数不正确2626Reference to mult defined指令引用的内容已是多次定义过的2727Operand was expected汇编程序需要的是操作数,但得到的却是其它内容2828Operator was expected汇编程序需要的是操作符,但得到的却是其它内容2929Division by 0 or overflow给出一个用 0 作除数的表达式3030Shift count is negative移位表达式产生的移位计数值为负数3131Operand type must match在自变量的长度或类型应该一致的情况下,汇编程序得到的并不一样,例如,交换 3232Illegal use of external用非法手段进行外部使用3333Must be record field name需要的是记录字段名,但得到的是其它东西3434Must be record or field name需要的是记录名或字段名,但得到的是其它东西3535Operand must have size需要的是操作数的长度,但得到的是其它内容3636Must be var, label or constant需要的是变量,标号或常数,但得到的是其它内容3737Must be structure field name需要的是结构字段名,但得到是其它内容3838Left operand must have segment右操作数所用的某些东西要求左操作数必须有一个段(例如:“:“)3939One operand must be const一个操作数必须是常数4040Operands must be same or labs操作符必须相同或是编号4141Normal type operand expected当需要变量标号时,得到的却是STRUCT,FIELDS,NAMES,BYTE,WORD 或 DW4242Constant was expected.需要的是一个常量,得到的却是另外的内容4343Operand must have segmentSEG 伪操作使用不合法4444Must be associated with code有关项用的是代码,而这里需要的是数据,例如一个过程的 DS 取代4545Must be associated with code有关项用的是数据,而这里需要的是代码4646Already have base register试图重复基地址4747Already have index register试图重复变址地址4848Must be index or base register指令需要基址或变址寄存器,而指定的是其它寄存器4949illegal use of register在指令中使用了 8088 指令中没有的寄存器5050Value is out of range数值大于需要使用的,例如将 DW 传送到寄存器中5151Operand not in IP segment由于操作数不在当前 IP 段中,因此不能存取 5252Improper Operand type使用的操作数不能产生操作码5353Relative jump out of range指定的转移超出了允许的范围 (-128~+127).5454Index displ. must be cinstant 试图使用脱离变址寄存器的变量位移量。

      位移量必须是常数5555illegal register value.指定的寄存器值不能放入“reg“字段中即“reg“字段大于 7).5656No immediate mode指定的立即方式或操作码都不能接收立即数例如:PUSH.5757illegal size for item引用的项的长度是非法的例如:双字移位 5858Byte register is illegal使用一个字节寄存器是非法的,例如:PUSH AL 5959CS register illegal usage试图非法使用 CS 寄存器例如: XCHG CS,AX.6060Must be AX or AL.某些指令只能用 AX 或 AL例如:IN 指令 6161Improper use of segment reg段寄存器使用不合法例如:1 立即数传送到段寄存器6262No or unreachable CS试图转移到不可到达的标号6363Operand combination illegal 在双操作数指令中,两个操作数的组合不合法 6464Near JMP/CALL to different CS企图在不同的代码段内执行 NEAR 转移或调用6565Label can't have seg override.非法使用段取代 6666Must have opcode after prefix使用前缀指令之后,没有正确的操作码说明6767Can't override ES segment企图非法地在一条指令中取代 ES 寄存器。

      例如:存储字符串6868Can't reach with segment reg.没有使变量可达到的 ASSUME 语句6969Must be in segment block企图在段外产生代码7070Can't use EVEN on BYTE segment被提出的是一个字段,但试图使用 EVEN7171Forward needs override目前不使用这个信息7272Illegal value for DUP count. DUP计数必须是常数,不能是 0 或负数 7373Symbol already external企图定义一个局部符号,但此符号已经是外部符号了7474DUP is too large for linkerDUP 定义太大7575Usage of ? (indeterminate) bad“?“使用不合适例如: ? +57676More values than defined with7777Only initialize list legal7878Directive illegal in STRUC.7979Override with DUP is illegal8080Field cannot be overridden8181Override is of wrong type8282Register can't be forward ref.8383Circular chain of EQU aliases.8484Feature not supported by Small Assembler(ASM)。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.