公告

Gentoo交流群:838664909 欢迎您的加入

#1 2022-08-25 14:04:39

batsom
管理团队
注册时间: 2022-08-03
帖子: 607
个人网站

找出数组中第一个负数

题目描述
在字节数组中找出第一个负数,并将该负数存入RES单元中;假设该数组中包含20个带符号数,且至少有1个负数。
代码及注释

DATA SEGMENT
      RES DB ?
      BUF DB 2,3,9,-4,8,6,0,3,-3,-4,8,7,9,2,3,5,-9,4,5,8
      COUNT EQU 20      ;题目要求20个带符号数,直接存诚20
DATA ENDS
CODE SEGMENT
      ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA;
      MOV DS,AX
      MOV SI,OFFSET BUF;       ;SI作为指针
      XOR AX,AX
LOP:MOV AL,[SI]
      MOV BL,0
      CMP AL,BL       ;比较当前数和0
      JL STORE       ;有符号数比较,若当前数为负数,跳转
      INC SI
      JMP LOP       ;题目要求一定有至少一个负数,所以可以使用无条件跳转
STORE:MOV RES,AL     ;将AL,即负数的当前数存入RES
      MOV AH,4CH
      INT 21H
CODE ENDS
      END START

离线

页脚

Powered by FluxBB

本站由XREA提供空间支持