任务描述
本关任务:编写一个能求出多个成绩中最高成绩的小程序。
编程要求
在寄存器RSI
中存放了一个字节型数组的地址,数组中存放有多个成绩数据,均为正数。在寄存器AX
中则存有这个数组的长度。
请编写代码,求出这个数组中的最高成绩,并将其放入到AX
中。
注意:数组的最小长度为1
,最大为20
。
输入数据由评测系统读取,并存放到指定寄存器中,程序运行结果也由评测系统读取并输出,学员只需要实现任务逻辑即可。
测试说明
平台会对你编写的代码进行测试:
测试输入:021030
预期输出:30
测试输入:0450346010
预期输出:60
测试输入的前两个字符是数组的长度的十六进制表示,之后每两个字符组成一个十六进制数,代表数组中的值。
Max:
mov cx, ax
mov al, byte [rsi]
find:
mov ah, byte [rsi]
cmp al, ah
jg g
mov al, ah
g:
inc rsi
loop find
ret