2023年错误总结[小编推荐]新编.docx

上传人:s9****2 文档编号:544312587 上传时间:2023-05-17 格式:DOCX 页数:7 大小:14.04KB
返回 下载 相关 举报
2023年错误总结[小编推荐]新编.docx_第1页
第1页 / 共7页
2023年错误总结[小编推荐]新编.docx_第2页
第2页 / 共7页
2023年错误总结[小编推荐]新编.docx_第3页
第3页 / 共7页
2023年错误总结[小编推荐]新编.docx_第4页
第4页 / 共7页
2023年错误总结[小编推荐]新编.docx_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《2023年错误总结[小编推荐]新编.docx》由会员分享,可在线阅读,更多相关《2023年错误总结[小编推荐]新编.docx(7页珍藏版)》请在金锄头文库上搜索。

1、错误总结小编推荐 1、test.asm(54):errora2022:blocknestingerror、 说明:此错误信息通常见于一个段定义起始段名和末尾段名不一致。说明:此错误信息通常见于一个段定义起始段名和末尾段名不一致。修改:检查段定义,使段名前后保持一致。修改:检查段定义,使段名前后保持一致。 2、test.asm(5):errora2023:symbolismultidefined:data说明:符号重复定义了。说明:此错误信息提示data符号重复定义了。修改:重新设置。修改:将其中一个符号data重新设置。 3、test.asm(7):errora202223:symbolnot

2、defined:b9h、 说明:行指令出错,查看该指令,说明:此错误信息为test.asm中第7行指令出错,查看该指令,源操作数为十六进制数b9h。按规定以字母开始的十六进制数,应在其。按规定以字母开始的十六进制数,以便汇编程序区分常数和符号。前面加上数字0以便汇编程序区分常数和符号。另一种出错的可能原因是程序中使用的符号变量没有定义。能原因是程序中使用的符号变量没有定义。修改:修改:以0b9h取代b9h;使用伪指令定义变量。;使用伪指令定义变量。 4、test.asm(11):errora202223:symbolnotdefined:no、 说明:说明:test.asm中第11行指令jle

3、no-count,符号中使用了中折线,中,符号中使用了中折线,折线在汇编中是作为减号,因此,没有定义。折线在汇编中是作为减号,因此,汇编提示标号no没有定义。注意,汇编语言规定符号中可以使用下划线。注意,汇编语言规定符号中可以使用下划线。修改:修改:将no-count改为no_count。 5、test.asm(28):errora202223:syntaxerror、说明:此错误信息提示源程序中第28行的指令语句的语法与任何可识别说明:的语法不匹配,出错。的语法不匹配,出错。修改:按照汇编指令的规定格式重新编写。修改:按照汇编指令的规定格式重新编写。 6、test.asm(2):errora

4、2023:operandmustberegister:dx、 说明:指定的存放器不是指令或伪指令所要求的。如:assumedx:data修改:查看汇编指令的规定格式。修改:查看汇编指令的规定格式。 7、test.asm(16):errora2028:operatorexpected、 说明:汇编程序需要的是操作符,得到的却是其它内容。说明:汇编程序需要的是操作符,得到的却是其它内容。test.asm中第16行movdxoffsetbuf2,显然是两操作数中间缺少“,显然是两操作数中间缺少“符号导致出错。符号导致出错。修改:两操作数之间用“号分隔。修改:两操作数之间用“,号分隔。 8、test.

5、asm(47):errora2029:divisionby0oroverflow、 说明:给出一个用零作除数的表达式或溢出。说明:给出一个用零作除数的表达式或溢出。test.asm中第47行指令andal,0020230000数据溢出,这是因为,汇编程序默认数制为数据溢出,这是因为,十进制,因而该指令中的源操作数超出范围。十进制,因而该指令中的源操作数超出范围。修改:假设欲输入的是二进制数,修改:假设欲输入的是二进制数,在该数后加b,说明为二进制数。,说明为二进制数。 9、test.asm(8):errora2048:mustbeindexorbaseregister、 说明:指令需要基址或变

6、址存放器,源程序中给出的是其它存放器。说明:指令需要基址或变址存放器,源程序中给出的是其它存放器。test.asm中第8行指令moval,si+dx,显然,dx,显然,存放器应存放器。为bx存放器。修改:按寻址方式规定修改。修改:按寻址方式规定修改。 2023、test.asm(6):errora2049:illegaluseofregister、 说明:此错误信息为test.asm中第6行出错,查看该指令,是由于将两说明:行出错,查看该指令,操作数之间的“号错为“号而出错。另外一种情况,操作数之间的“,号错为“.号而出错。另外一种情况,如moval,dl+20h,那么是源操作数为非法格式。,

7、那么是源操作数为非法格式。修改:按照汇编指令的规定格式重新编写。修改:按照汇编指令的规定格式重新编写。 11、test.asm(48):errora2050:valueoutofrange、 说明:出错。说明:test.asm中第48行指令andal,0002023000出错。因为汇编程序默认数制为十进制,因此,该指令源操作数为位立即数,序默认数制为十进制,因此,该指令源操作数为16位立即数,不位存放器。能送入8位存放器。修改:位存放器,修改:将8位存放器al改为16位存放器,如ax。 12、test.asm(2023):errora2052:improperoperandtype、 说明:非

8、法的操作数类型。说明:非法的操作数类型。如test.asm中第2023行指令movresult,si。汇编语言规定两个操作数不能同时为存储器操作数。汇编语言规定两个操作数不能同时为存储器操作数。修改:先将源操作数传送到存放器,再由存放器传送到另一个存储单元。修改:先将源操作数传送到存放器,再由存放器传送到另一个存储单元。 13、test.asm(3):errora2053:jumpoutofrangeby82byte(s)、说明:说明:此错误信息为源程序test.asm中第3行的转移指令指定的转移超出允许范围。出允许范围。修改:可在该转移指令与目标指令中增加一条无条件转移指令。修改:可在该转移

9、指令与目标指令中增加一条无条件转移指令。 14、test.asm(21):errora2056:immediatemodeillegal、 说明:错误,操作数不能是立即数。说明:test.asm中第21行指令idiv8错误,操作数不能是立即数。修改:在该指令前增加一条传送指令,修改:在该指令前增加一条传送指令,将该操作数8送入一个8位存放器存放,器存放,如bl,那么该指令可修改为idivbl。,。 15、test.asm(41):errora2062:missingorunreachablecs、 说明:伪指令导致。说明:这是由于缺乏段存放器说明assume伪指令导致。修改:在代码段中增加段存

10、放器说明assume伪指令。修改:伪指令。 16、test.asm(26):errora220235:expected:comma、 说明:双操作数指令中缺少逗号。说明:双操作数指令中缺少逗号。修改:在该指令的两个操作数中加上逗号。修改:在该指令的两个操作数中加上逗号。 17、test.asm(46):errora220235:expected:instructionordirective、 说明:通常是指令助记符输入错误。说明:通常是指令助记符输入错误。修改:检查指令助记符。修改:检查指令助记符。 18、test.asm(9):warninga4001:extracharactersonli

11、ne、 说明:当一行上已接受了定义指令说明的足够信息,说明:当一行上已接受了定义指令说明的足够信息,而又出现多余的字符,汇编程序提示出错。一般多由于指令中出现多余或非法的符汇编程序提示出错。号。修改:仔细检查该指令。修改:仔细检查该指令。 19、test.asm(13):warninga4016:reservedwordusedassymbol:aaa、 说明:企图非法使用一个汇编程序的保存字,是汇编的保存字(说明:企图非法使用一个汇编程序的保存字,aaa是汇编的保存字(指令助记符),不能作为符号使用。令助记符),不能作为符号使用。),不能作为符号使用修改:重新设置符号名。修改:重新设置符号名

12、。 20、test.asm(33):warninga4031:operandtypesmustmatch、 说明:test.asm中第33行指令movax,result,说明:,其中变量result定义的,其属性为字节,不匹配。是用db定义的,其属性为字节,因而与16位存放器ax不匹配。位存放器,另一种情况是两个操作数分别为8位存放器和18位存放器,同样也不匹配。也不匹配。修改:选用相应位数的存放器保证两个操作数为相同位数。修改:选用相应位数的存放器保证两个操作数为相同位数。 21、test.asm(19):warninga4057:illegalsizeforoperand、 说明:操作数的

13、长度非法,说明:操作数的长度非法,如pushal。非法。修改:改用指令规定位数的存放器,修改:改用指令规定位数的存放器,如pushax。 22、test.asm(55):warninga420235:endoffile,noenddirective、说明:源程序中缺乏模块结束伪指令end。修改:整个源程序最后增加模块结束伪指令end。 23、test.asm(32):warninga420231:missingdata;zeroassumed说明:行的指令少了操作数,说明:此错误信息提示源程序中第32行的指令少了操作数,即单操作数指令缺少操作数或双操作数指令缺少一个操作数。指令缺少操作数或双操作数指令缺少一个操作数。作数修改:给指令加上适当的操作数。修改:给指令加上适当的操作数。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 人事档案/员工关系

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号