| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 576 人关注过本帖
标题:[求助]请改下我的程序,有点问题:(
取消只看楼主 加入收藏
manestang
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-4-18
收藏
 问题点数:0 回复次数:1 
[求助]请改下我的程序,有点问题:(

要求是程序运行后 先显示:please input an integer
然后输入0-11的中的一个数 显示出它的平方数
自己做的问题太多了。。。。。


stack SEGMENT STACK
stack ENDS
DATA SEGMENT
STARTBUFF DB 'please input an integer'
TABLE DB 0,1,4,9,16,25,36,49,64,81,100,121
FACTOR DB 100, 10, 1
;STRRESULT DB 31,32,33,"$"
STRRESULT DB ?,?,?,"$"
RSLT DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA, SS:stack
START: MOV AX,DATA
MOV DS,AX
MOV AH,00H
INT 16H
AND AL,0FH
XOR BX,BX
MOV BL,AL
LEA SI,TABLE

MOV AL,[SI+BX]
;MOV RSLT,AL


LEA SI,STRRESULT
LEA DI, FACTOR
XOR DX,DX
MOV BX,100
;MOV AX, 3
MOV CX, 3

AGAIN: DIV BYTE PTR[DI];AX除因子
ADD AL,30H;商加上30即可得到相应数字的ASCII码
MOV BYTE PTR[SI],AL
INC SI;结果
INC DI;因子
MOV DX,CX
MOV CL,8
SHR AX,CL;将余数作为下一次的被除数
MOV CX,DX
LOOP AGAIN
LEA SI,STRRESULT
bb:
CMP BYTE PTR [SI],'0' ;不输出前面的0字符
JNE print
INC SI
LOOP bb
print:
MOV DX,SI
MOV AH,09h
INT 21h

;MOV DL, [SI]
;MOV AH,02h
;INT 21h


MOV AH,00H
INT 16H

MOV AH,4CH
INT 21H
CODE ENDS
END START

搜索更多相关主题的帖子: please 
2006-12-04 15:43
manestang
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-4-18
收藏
得分:0 
看了 还是不太知道怎么改
2006-12-04 18:40
快速回复:[求助]请改下我的程序,有点问题:(
数据加载中...
 
   



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

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