简答题

编写程序,求20元素无符号字数组ARRAY中最小的奇数,存入ODD单元,如果不存在奇数,将ODD单元清零。

正确答案

DATASEGEMNT
ARRAY
DW 56,12,88,126,5,16,32,99,72,18
DW 116,34,92,32,156,42,816,16,15,218
ODD DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BX,0
MOV ODD,65535;将65535假设为最小的奇数
LEA SI,ARRAY
MOV CX,20
AGAIN:
MOV AX,[SI]
TEST AX,1;测试是否为奇数
JZ SKIP;不是奇数跳过
INC BX;记录奇数个数
CMP AX,ODD;奇数与预设的最小奇数比较
JGE SKIP;大于预设奇数,跳过
MOV ODD,AX;小于预设奇数,保留
SKIP:ADD SI,2
LOOP AGAIN
CMP BX,0;判有无出现过奇数
JNZ DONE
MOV ODD,0;未出现过,把ODD单元清零
DONE://MOV AX,4C00H
INT 21H
CODEENDS
END START

答案解析

相似试题
  • 编写程序,求20元素无符号字数组ARRAY中最小的奇数,存入ODD单元,如果不存在奇数,将ODD单元清零。

    简答题查看答案

  • 编写程序,求20元素无符号字数组ARRAY中最小的奇数,存入ODD单元,如果不存在奇数,将ODD单元清零。

    简答题查看答案

  • 编写程序,实现对无符号字数组ARRAY的6个元素从小到大排序。

    简答题查看答案

  • 编写程序,求10元素字数组LIST中绝对值最小的数,存入MIN单元。

    简答题查看答案

  • 编写程序,求10元素字数组LIST中绝对值最小的数,存入MIN单元。

    简答题查看答案

  • 编写程序,求10元素字数组LIST中绝对值最小的数,存入MIN单元。

    简答题查看答案

  • 编写宏定义程序,可以对任意字数组求元素之和,数组名称、元素个数和结果存放单元为宏定义的哑元。

    简答题查看答案

  • 字数组ARRAY为有符号数,第一个单元为元素个数N,后面为N个元素,编写程序,求数组元素中的最大值,并把它放入MAX单元。

    简答题查看答案

  • 编写程序,把一个30个元素的有符号字数组ARRAY按照各元素的正负分别送入数组P和M,正数和零元素送P数组,负数送M数组。

    简答题查看答案