编写程序,找出一个字数组中最小的偶数,并存到AX中,汇编语言
时间: 2023-10-03 18:03:08 浏览: 99
汇编程序代码 查找最小偶数并输出
5星 · 资源好评率100%
以下是一份示例代码:
```
DATA SEGMENT
ARR DB 1, 3, 5, 2, 4, 6, 8, 7, 9 ; 字节数组
LEN EQU $-ARR ; 数组长度
DATA ENDS
CODE SEGMENT
START:
MOV AX, 0 ; 初始化 AX 为 0
MOV CX, LEN ; CX 为计数器,初始化为数组长度
MOV BL, 0FFH ; 初始化 BL 为最大值,即数组中没有偶数时的默认值
LOOP1:
DEC CX ; 计数器减 1
JS FINISH ; 如果计数器已经减到 0,则结束循环
MOV DL, ARR[CX] ; 将当前数组元素加载到 DL 寄存器中
AND DL, 1 ; 判断当前元素是否为偶数,偶数的二进制末位为 0
JZ FOUND ; 如果是偶数,则跳转到 FOUND 标签
CMP DL, BL ; 如果不是偶数,则将当前元素与 BL 中的最小偶数比较
JNC LOOP1 ; 如果当前元素比 BL 中的最小偶数大,则继续循环
MOV BL, DL ; 如果当前元素比 BL 中的最小偶数小,则将 BL 更新为当前元素
JMP LOOP1 ; 继续循环
FOUND:
MOV BL, DL ; 如果找到了偶数,则将 BL 更新为当前元素
JMP LOOP1 ; 继续循环
FINISH:
MOV AX, BX ; 将 BL 中存储的最小偶数移动到 AX 中
INT 3 ; 结束程序
CODE ENDS
END START
```
以上代码会遍历数组中的每个元素,如果当前元素是偶数,则将其与 BL 中存储的最小偶数比较,如果当前元素比 BL 中存储的最小偶数小,则更新 BL 中的值为当前元素。最终,BL 中存储的就是数组中最小的偶数,将其移动到 AX 中即可。
阅读全文