标题:请教几道简单的汇编题 麻烦给出程序
只看楼主
zfly
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-3-15
 问题点数:0 回复次数:3 
请教几道简单的汇编题 麻烦给出程序

1. 内存中有一组数据,将其奇数、偶数分开两组存放。试写出程序。

2. 有10个有符号整数,每个数长度是16bit,存放在数据段中。编写一个完整的程序,将该10个数字做累加运算,并将计算结果存入sum单元;同时计算出将该10个数中的最大数,并将计算结果存入max单元;计算中如发现有溢出情况,转向程序结束处理。

3. 内存中有一组有符号数,将其按升序排序。

麻烦给出程序好吗?多谢啦!!!

搜索更多相关主题的帖子: 内存 汇编 麻烦 
2006-04-26 12:50
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
得分:0 
这都是涉及到循环的问题,不难解决.我给出核心思路吧.
=========================
1.求出数据除以2的余数:
LOP:MOV BL,2    ;2是余数,把2存进BL里面
  DIV BL     ;内存的数据除以2
  MOV [DI],AH  ;把余数(在AH中)装进数据段DI里面
CMP [DI],1 ;余数和1比较
MOV 数据段1,数据 ;把这个数据放到定义好的数据段1里
CMP [DI],0 ;余数不等于1和话和0比较
MOV 数据段 2,数据 ;把这个数据放到数据段2里面
  LOOP LOP    ;循环直到数据送完

我的原则很简单:不做不喜欢的事!
2006-04-26 20:14
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
得分:0 
2. XOR MAX,MAX ;清0
MOV MAX,[DI]   ;把第一个数假定最大值
XOR SUM,SUM  ;清0
LOP: ADD SUM,[DI]    ;逐个累加
CMP [DI],MAX    ;和最大值比较
JG NEXT      ;大于的话转到NEXT
NEXT:MOV MAX,[DI]    ;把新的最大值给MAX
INC DI       ;指针加1,指向下一个
LOOP LOP      ;循环直到数据送完

我的原则很简单:不做不喜欢的事!
2006-04-26 20:20
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
得分:0 
3.和第二题思路差不多,我在这就不多说了.
  希望楼主好好努力,多问多想多动手实践

我的原则很简单:不做不喜欢的事!
2006-04-26 20:21



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




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

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