连接的时候出现there was a error detected
时间:2011-05-21
来源:互联网
如题:
程序如下:
;******************************************
; 模块1
;******************************************
public CNT
extrn cmpell:far
data segment
CNT dw 0
array label word
dw 1111h
dw 2222h
dw 3333h
case dw case0
dw case1
dw case2
data ends
stack segment
dw 100 dup(?)
tos label word
stack ends
code1 segment
assume cs:code1,ds:data,ss:stack
main proc far
start:
mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,offset tos
push ds
sub ax,ax
push ax
mov bx,array
push bx
mov bx,array+2
push bx
call far ptr cmpell
mov bx,array
push bx
mov bx,array+4
push bx
call far ptr cmpell
mov bx,array+2
push bx
mov bx,array+4
push bx
call far ptr cmpell
cmp CNT,0
jz case0
cmp CNT,2
jz case1
cmp CNT,3
jz case2
exit:
ret
case0:
mov dl,0
mov ah,2
int 21h
jmp exit
case1:
mov dl,1
mov ah,2
int 21h
jmp exit
case2:
mov dl,2
mov ah,2
int 21h
jmp exit
main endp
code1 ends
end
;***************************************
; 模块2
;***************************************
public cmpell
extrn CNT:word
stack segment common
dw 100 dup(?)
tos label word
stack ends
code2 segment
assume cs:code2,ss:stack
cmpell proc far
push bp
mov bp,sp
push ax
push bx
mov ax,ss:[bp+8]
mov bx,ss:[bp+6]
cmp ax,bx
jnz ne
add CNT,1
ne:
pop bx
pop ax
pop bp
ret 4
cmpell endp
code2 ends
end
编译是通过的~就是在连接的时候说there was one error detected ,请问是什么原因呢?应该怎么改呢?
这个程序我只是用来实践下而已的,本来题目是比较简单的
编写程序2:要求比较数组ARRAY中的三个16位补码数,并根据比较结果在屏幕上显示如下信息:
如果三个数都不相等则显示0;
如果有两个数相等则显示1;
如果三个数都相等则显示2。
请高手赐教下吧~
程序如下:
;******************************************
; 模块1
;******************************************
public CNT
extrn cmpell:far
data segment
CNT dw 0
array label word
dw 1111h
dw 2222h
dw 3333h
case dw case0
dw case1
dw case2
data ends
stack segment
dw 100 dup(?)
tos label word
stack ends
code1 segment
assume cs:code1,ds:data,ss:stack
main proc far
start:
mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,offset tos
push ds
sub ax,ax
push ax
mov bx,array
push bx
mov bx,array+2
push bx
call far ptr cmpell
mov bx,array
push bx
mov bx,array+4
push bx
call far ptr cmpell
mov bx,array+2
push bx
mov bx,array+4
push bx
call far ptr cmpell
cmp CNT,0
jz case0
cmp CNT,2
jz case1
cmp CNT,3
jz case2
exit:
ret
case0:
mov dl,0
mov ah,2
int 21h
jmp exit
case1:
mov dl,1
mov ah,2
int 21h
jmp exit
case2:
mov dl,2
mov ah,2
int 21h
jmp exit
main endp
code1 ends
end
;***************************************
; 模块2
;***************************************
public cmpell
extrn CNT:word
stack segment common
dw 100 dup(?)
tos label word
stack ends
code2 segment
assume cs:code2,ss:stack
cmpell proc far
push bp
mov bp,sp
push ax
push bx
mov ax,ss:[bp+8]
mov bx,ss:[bp+6]
cmp ax,bx
jnz ne
add CNT,1
ne:
pop bx
pop ax
pop bp
ret 4
cmpell endp
code2 ends
end
编译是通过的~就是在连接的时候说there was one error detected ,请问是什么原因呢?应该怎么改呢?
这个程序我只是用来实践下而已的,本来题目是比较简单的
编写程序2:要求比较数组ARRAY中的三个16位补码数,并根据比较结果在屏幕上显示如下信息:
如果三个数都不相等则显示0;
如果有两个数相等则显示1;
如果三个数都相等则显示2。
请高手赐教下吧~
作者: love277399986 发布时间: 2011-05-21
exe是会生成的,但在运行的时候说遇到无效的指令~应该怎么修改程序呢?
作者: love277399986 发布时间: 2011-05-21
引用 1 楼 love277399986 的回复:
exe是会生成的,但在运行的时候说遇到无效的指令~应该怎么修改程序呢?
exe是会生成的,但在运行的时候说遇到无效的指令~应该怎么修改程序呢?
调试检查 无效指令 的地址,然后回溯看如何到这个地址的。
作者: mydo 发布时间: 2011-05-21
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28