随机产生两个数 求他们的和 与出现的次数
随机产生一个0-9的数字, 将他们的出现次数记录下来
将array的数据编号当为数字本身,将里面的数据作为这个数字的计数器
但是除了九的那个计数器对了之外其他的几个都错了, 能告诉我下原因吗?
cmd显示,请详细解释,新手刚接触
randloopt:
mov eax,10
call randomrange ;产生随机数字
call writedec
mov esi,0 ;数字的计数器加1
mov esi,eax
inc numberarray[esi]
loop randloopt
这是打印出结果的loop
mov ecx,10
mov esi,0
loopprint:
call writestring
mov eax,numberarray[esi] ;个数
call writedec
mov edx,offset space
call writestring
mov eax,esi
call writedec ;数字本身
inc esi
loop loopprint
[解决办法]
所有的 numberarray[esi] 应该是 numberarray[esi*4] 吧。汇编不是高级语言,数组的单元大小需要自己进行计算的。