问答题 设一存储区中存放有10个带符号的单字节数(设为-10,15H,20H,-1,-23,46H,16H,-33,65H,88H),现要求分别求出其绝对值后存放到原单元中,试编写出汇编源程序。
【正确答案】程序如下:
DATA   SEGMENT
BLOCK  DB-10,15H,20H,-1,-23,46H,16H,-33,65H,88H
DATA   ENDS
CODE   SEGMENT
      ASSUME DS:DATA,CS:CODE
START:MOV AX,DATA
      MOV DS,AX
      MOV SI,OFFSET BLOCK
      MOV CX,10
AGAIN:MOV AL,[SI]
      TEST AL,80H           ;测试是否为正数
      JZ NEXT
      NEG AL                ;求负数的绝对值
      MOV [SI],AL
NEXT: INC SI
      L00P AGAIN
      MOV AH,4CH             ;返回DOS
      INT 21H
CODE   ENDS
      END START
【答案解析】