|
主题 : : 本章检测题,请给答案。 [待解决] |
回复[ 25次 ]
点击[ 1938次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2007-10-21 21:50 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2007-09-30 21:53 |
下列程序中,出现逻辑错误的是:____
1、 assume cs:code
code segment
mov ax,2
add ax,ax
mov ax,4c00h
int 21h
code
end
2、 assume cs:code
code segment
mov ax,2
add ax,ax
code ends
end
3、 aume cs:code
code segment
mov ax,2
add ax,ax
mov ax,4c00h
int 21h
code ends
end
4、 assume cs:code
code segment
mov ax,2
add ax,ax
mov ax,4c00h
int 21h
code ends | | |
|
|
|
|
[第1楼]
[ 回复时间:2007-10-21 21:56 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2007-09-30 21:53 |
1.code 后应为code ends,属语法错误。
3.aume 无此关键字,属语法错误。
正确答案只能在2和4中选择了:
4.最后缺end,也应属于语法错误吧。
排除掉以上三个选择,只有2是逻辑错误了:缺
mov ax,4c00h
int 21h | | |
|
|
|
|
[第2楼]
[ 回复时间:2007-10-22 19:55 ]
[引用]
[回复]
[ top ] | |
荣誉值:32
信誉值:0
注册日期:2007-07-14 19:06 |
|
|
|
|
|
[第3楼]
[ 回复时间:2007-10-23 16:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:6
信誉值:0
注册日期:2007-10-05 15:18 |
可问题是,没有mov ax,4c00h/int 21h,程序是可以执行的呀,只是无法返回调用者,这能算是逻辑错误吗? | | |
|
|
|
|
[第4楼]
[ 回复时间:2007-10-23 17:56 ]
[引用]
[回复]
[ top ] | |
荣誉值:32
信誉值:0
注册日期:2007-07-14 19:06 |
|
|
|
|
|
[第5楼]
[ 回复时间:2007-10-24 10:17 ]
[引用]
[回复]
[ top ] | |
荣誉值:106
信誉值:0
注册日期:2007-06-26 15:10 |
|
|
|
|
|
[第6楼]
[ 回复时间:2007-11-29 21:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:1
注册日期:2007-11-25 09:37 |
|
|
|
|
|
[第7楼]
[ 回复时间:2008-02-13 17:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:3
信誉值:0
注册日期:2007-08-07 13:15 |
|
|
|
|
|
[第8楼]
[ 回复时间:2008-05-01 06:38 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2008-04-10 12:03 |
|
|
|
|
|
[第9楼]
[ 回复时间:2008-05-05 14:30 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:5
注册日期:2008-04-27 21:45 |
排除法可以做题,但学知识还是直面问题的好.书上82页就举个例子,但听楼主说程序还能执行,那就有点麻烦了.莫非书上定义不完全? | | |
|
|
|
|
[第10楼]
[ 回复时间:2008-05-05 14:31 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:5
注册日期:2008-04-27 21:45 |
排除法可以做题,但学知识还是直面问题的好.书上82页举了类似的例子,但听楼主说程序还能执行,那就有点麻烦了.莫非书上定义不完全? | | |
|
|
|
|
[第11楼]
[ 回复时间:2008-05-18 15:06 ]
[引用]
[回复]
[ top ] | |
荣誉值:6
信誉值:0
注册日期:2008-05-13 20:29 |
嘎嘎,,9楼灌水了哇!
逻辑错误一般不容易发现的。
语法错误在编译器编译时就会发现,若发现语法错误则不能生成OBJ目标文件。 | | |
|
|
|
|
[第12楼]
[ 回复时间:2008-11-03 09:53 ]
[引用]
[回复]
[ top ] | |
荣誉值:6
信誉值:6
注册日期:2008-10-15 11:11 |
郁闷!是逻辑错误码,我说怎么老是过不了。。火了!谢谢!各位! | | |
|
|
|
|
[第13楼]
[ 回复时间:2009-01-25 15:50 ]
[引用]
[回复]
[ top ] | |
荣誉值:12
信誉值:0
注册日期:2009-01-25 01:37 |
回复:[第12楼]
------------------
连MOV AX,4C00H
INT 21H
都没有还能不是逻辑错误呀,编译器根本就发现不了这错误 | | |
|
|
|
|
[第14楼]
[ 回复时间:2009-03-21 15:41 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:10
注册日期:2009-02-24 12:14 |
lz注意:'逻辑错误'指的是:汇编代码错误 其它的是:语法错误
题中2项汇编代码中明摆着没有'程序返回' | | |
|
|
|
|
[第15楼]
[ 回复时间:2009-07-20 14:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-07-11 13:50 |
|
|
|
|
|
[第16楼]
[ 回复时间:2009-10-22 11:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-09-19 12:28 |
是这样啊,
搞了我好几次了,
完全是搞文字游戏,
郁闷...... | | |
|
|
|
|
[第17楼]
[ 回复时间:2009-12-16 11:15 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-10-31 08:24 |
这个无法返回,书上有啊 我第一题错了,伪指令由编译器执行,编译器也属于计算机吧?只有CPU | | |
|
|
|
|
[第18楼]
[ 回复时间:2009-12-16 11:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-10-31 08:24 |
|
|
|
|
|
[第19楼]
[ 回复时间:2010-01-19 21:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-11-22 15:29 |
选4~~~语法正确程序可以运行但缺
mov ax,4c00h
int 21h
程序无法返回~~属于逻辑错误 | | |
|
|
|
|
[第20楼]
[ 回复时间:2010-03-27 22:54 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-02-08 17:15 |
|
|
|
|
|
[第21楼]
[ 回复时间:2010-07-19 02:59 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-06-22 11:52 |
测试了下,编译2无错误提示,直接生产EXE文件,但debug跟踪显示:
0B4E:0000 MOV AX,0002
0B4E:0003 ADD AX,AX
0B4E:0005 XCHG CX,AX
程序没有正常退出,和预期不一致
编译4直接报1个warning errors和一个severe errors,提示缺end.
根据课本上的定义,程序在编译时被编译器发现的错误是语法错误,在运行时发生的错误是逻辑错误。所以2是逻辑错误,4是语法错误 | | |
|
|
|
|
[第22楼]
[ 回复时间:2010-07-19 21:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-03-09 15:55 |
呵呵。
刚刚好做到这道题。。
选 2
语法错误:少了 mov ax,4c00h int 21h | | |
|
|
|
|
[第23楼]
[ 回复时间:2010-09-03 18:47 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-08-27 19:59 |
|
|
|
|
|
[第24楼]
[ 回复时间:2010-09-28 20:35 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-07-01 18:35 |
书的第82页,第6语法错误和逻辑错误 里已经说了,程序在编译时被编译器发现的错误时语法错误。在源程序编译后,在运行时发生的错误时逻辑错误。语法错误容易发现,也容易解决,而逻辑错误通常不容易被发现。
例题,程序4.2中的错误和测试题中的一样,都是缺少程序返回。
mav ax,4cooH
int 21H
到目前为止,缺这个的就是逻辑错误! | | |
|
|
|
|
[第25楼]
[ 回复时间:2011-12-05 18:17 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-11-19 15:29 |
逻辑错误和语法错误的比较。
这道题其实没有理解的话,直接写个4个asm,然后M一下就知道了,1.3.4肯定过不去。L都可以免掉的。
第23楼的解答正确合理。 | | |