标题:希望大家帮助下!两道编程题!
只看楼主
glay
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-1-4
 问题点数:0 回复次数:5 
希望大家帮助下!两道编程题!
1.按下列要求编写一个子程序:
子程序名:ABSOLT
功能:求两数的和
输入参数:AX存放一个加数,BX存放另一个加数
输出参数:AX存放和

2.已知在以ARRAY为首地址的数据区中存放10个带符号字数据:
ARRAY DW,1,2,-1,3,4,-2,-3,4,5,-6
编程将ARRAY分成两个数组:正数数组P_ARY和负数数组N_ARY,并分别显示正数项个数和负数项个数。
要求:源程序格式完整。

自己想了好久也想不出来!我知道作为新手自己要多想,但我真的不会去表达!希望大家帮忙了!
如果编出来了,可以适当地写上一点注释!因为我太笨了,写上注释的话!这样我更能明白!
第一道题还有一点头绪!但不会表达!我刚学汇编没多久!
搜索更多相关主题的帖子: ARRAY ARY 数据区 参数 
2007-01-04 12:42
曾小
Rank: 1
等 级:新手上路
威 望:1
帖 子:239
专家分:0
注 册:2006-9-27
得分:0 
http://bbs.bc-cn.net/viewthread.php?tid=112507
论坛里都有类似的题啊,自己找找!

2007-01-04 18:50
glay
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-1-4
得分:0 

真的不会!
能给点提示吗??
谢谢!

2007-01-04 20:23
曾小
Rank: 1
等 级:新手上路
威 望:1
帖 子:239
专家分:0
注 册:2006-9-27
得分:0 
我的意思是论坛里有题目,你去参考一下!

2007-01-04 20:26
lefttime
Rank: 1
等 级:新手上路
帖 子:162
专家分:0
注 册:2006-10-6
得分:0 

首先第一题,只知道你想实现相加,在不溢出的情况下,来个例子(近)吧:
ABSOLT PROC
ADD AX,BX
RET
ABSOLT ENDP
第二题也不难吧:
OUTPUT MACRO NUM ;这里建的宏用来输入0-99的十进制数,已经说过了,这里不解释啦
LOCAL NEXT1
MOV AX,NUM
AAM
MOV DX,AX
MOV AH,2
OR DX,3030H
XCHG DH,DL
CMP DL,30H
JZ NEXT1
INT 21H
NEXT1: XCHG DH,DL
INT 21H
ENDM

DSEG SEGMENT
ARRAY DW 1,2,-1,3,4,-2,-3,4,5,-6 ;楼主给的数据
P_ARY DW 10 DUP(?) ;因为正数个数不知道情况下,就以最大为界,开辟10个字
N_ARY DW 10 DUP(?) ;同上
NOTE0 DB 0AH,0DH,'P_ARY : $'
NOTE1 DB 0AH,0DH,'N_ARY : $'
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
MAIN: MOV AX,DSEG
MOV DS,AX
MOV BX,0 ;用于获取数据的地址
MOV SI,0 ;用于正数存放地址的偏移量,也起着计数的作用
MOV DI,0 ;用于负数存放地址的偏移量,也起着计数的作用
LOP: MOV AX,[BX]
TEST AX,8000H ;测试正负
JZ STO_P
MOV N_ARY[DI],AX ;存放并计数
INC DI
JMP NEXT0
STO_P: MOV P_ARY[SI],AX
INC SI
NEXT0: INC BX
INC BX
CMP BX,20 ;以字为单位的话,这里就与20比较
JNZ LOP
MOV AH,9
LEA DX,NOTE0
INT 21H
OUTPUT SI ;调用宏,输出正数个数
MOV AH,9
LEA DX,NOTE1
INT 21H
OUTPUT DI ;输出负数个数
MOV AX,4C00H
INT 21H
CSEG ENDS
END MAIN


我是金子,我要闪光的
2007-01-04 21:31
glay
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-1-4
得分:0 
谢谢啊!第二题好复杂!(对我来说)你写得很祥细,也写出了注释!谢谢你!很感激!
2007-01-04 22:38



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




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

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