标题:我编的自考大专实验题一,请版主帮忙看看错在哪里。
只看楼主
xiaoxiao1551
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-2-4
 问题点数:0 回复次数:1 
我编的自考大专实验题一,请版主帮忙看看错在哪里。

请高手帮忙看看,急。自考大专汇编实践题一
汇编和链接都过去了,可是执行时出现了“遇到无效指令的对话框”马上就要考试了,请会的同学帮忙看看是怎么回事
;编写一段程序,在内存中自SQTAB(0200H)地址开始的连续10个单元中存放0-9的
;平方值.要求利用简单查表法求NUM(0210H)单元中指定数(0-9)的平方值,并将所求平方值
;存入RESULT(0211H)单元.
CODE SEGMENT
ASSUME CS:CODE,DS:CODE
ORG 200H ;程序从200H开始执行
START:JMP BEGIN
SQTAB DB 0,1,4,9,16,25,36,49,64,81
NUM DB ?
RESULT DB ?
BEGIN:MOV AX,CODE
MOV DS,AX ;设置段地址
CALL PUTINDEC ;调用十进制的输入子程序(输0-9)
MOV NUM,BL ;输入的十进制数放入NUM
MOV CX,10 ;计数器置1
MOV DX,OFFSET RESULT ;DX存放找到的平方值
MOV BX,OFFSET SQTAB ;SQTAB的首地址赋予BX
LOP: MOV AL,[BX]
SUB AL,BL ;SQTAB的内容减输入的十进制数,其差赋予AL
SUB AL,BL ;SQTAB的内容再次减输入的十进制数,其值赋予AL
JZ TT ;等于零则执行TT
INC BX
DEC CX
JNZ LOP
TT: MOV AH,BL
MOV AH,BL
MOV RESULT, AH
MOV AH,00H
INT 21H
putindec proc ;以下是十进制的输入子程序
push cx
mov bl,0
ppp: mov ah,1
int 21h
cmp al,0dh
je putinexit
sub al,30h
mov ah,0
xchg al,bl
mov bh,10
mul bh
xchg al,bl
add bl,al
jmp ppp
putinexit:pop cx
ret
putindec endp
CODE ENDS
END

搜索更多相关主题的帖子: 自考 大专 版主 实验 
2007-02-04 22:22
菜鸟上路
Rank: 4
等 级:贵宾
威 望:14
帖 子:1120
专家分:0
注 册:2006-3-21
得分:0 
SQTAB DB 0,1,4,9,16,25,36,49,64,81
NUM DB ?
RESULT DB ?
最好定义在数据段

2007-02-07 15:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-119647-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022116 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved