|
主题 : : 请教:第二章检测题虽然通过了,但第二题就是不明白这题的考察点与判断的理由。 [已解决] |
回复[ 10次 ]
点击[ 548次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2010-12-24 12:21 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2010-12-13 12:23 |
下列程序中,出现逻辑错误的是:__4__
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楼]
[ 回复时间:2010-12-24 12:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:268
信誉值:12
注册日期:2010-06-18 22:19 |
1,错,code 后面少了ends,正确格式
code segment
。。。
code ends
2,对
3,错,assume拼写错误
4,错, 少了end,用于代码结束 | | |
|
|
|
|
[第2楼]
[ 回复时间:2010-12-24 17:17 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2010-12-13 12:23 |
问题是“出现逻辑错误的是”,答案是4,不知道为什么? | | |
|
|
|
|
[第3楼]
[ 回复时间:2010-12-28 08:58 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2010-12-13 12:23 |
更正一下,答案是2,
到现在也没明白这考题在考什么,我要掌握哪些这章才算真正通过 | | |
|
|
|
|
[第4楼]
[ 回复时间:2010-12-31 17:51 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-12-31 17:25 |
2,没有mov ax,4c00h
int 21h
这两句,编译的时候也没有报错 但是如果运行肯定不是想要的结果
应该是这样.... | | |
|
|
|
|
[第5楼]
[ 回复时间:2011-01-01 23:06 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-05-23 12:24 |
把下面的内容复制到新建文本文挡,然后改为**.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>第二题判断的理由</title>
</head>
<body>
<body>
<p>语法错误:程序在编译器发现的错误;<br>
逻辑错误:程序运行时发生的错误;<br>
我认为2是对的;<br>
1.少了ends.<br>
3.asum不正确。<br>
4.少了end.<br>
理由:这本书中4.2(6)有这样一句话::(对程序4.2的更正)<br>
语法错误容易发现,也容易解决。而逻辑错误通常不容易被发现。<br>
不过,<font color="#FF00CC" size="+3">程
序4.2中的错误却显而易见</font>,我们将它该正过来:</p>
<p>assume cs:abc</p>
<p>abc segment</p>
<p> mov ax,2</p>
<p> add ax,ax</p>
<p> add ax,ax</p>
<p><font color="#FF00CC" size="+3"> mov ax, 4c00H</font></p>
<p><font color="#FF00CC" size="+3"> int 21H </font></p>
<p>abc ends</p>
<p>end</p>
</body>
</html>
</body>
</html> | | |
|
|
|
|
[第6楼]
[ 回复时间:2011-03-04 11:55 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-02-23 05:51 |
我也卡这题呢,知道其他是错的,就 是不知道第二为什么逻辑错误,没看出第二错哪 | | |
|
|
|
|
[第7楼]
[ 回复时间:2011-03-06 21:04 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-10-06 11:12 |
书上说错误分为两种:语法错误和逻辑错误
语法错误是写的那种编译器都识别不成功的
逻辑错误是在运行时,发生的错误
第一个是语法错误,没有指明这个code段的结束
第二个是逻辑错误,end指明了程序的结束,但在运行的时候没有mov ah,4ch int21h指明程序的返回
第三个aume 编译器就并通过 语法错误了
第四个没有end指明程序的结束 语法错误 | | |
|
|
|
|
[第8楼]
[ 回复时间:2011-04-09 10:42 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-04-05 12:00 |
7楼正解,补充下 逻辑错误是能通过编译的,而语法错误一定通不过编译 | | |
|
|
|
|
[第9楼]
[ 回复时间:2011-05-07 17:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-04-25 00:59 |
伪指令错误就是语法错误,由编译器处理。汇编指令错误就是逻辑错误,编译为机器码,由cpu执行 | | |
|
|
|
|
[第10楼]
[ 回复时间:2011-09-25 11:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2010-12-13 12:23 |
此贴由 贴主 于 [ 2011-09-25 11:19 ] 结贴。 结贴原因:问题已解决 | | |