问答题 在A址起有一个50字节长的字符串,请查找串中含有最后一个“?”字符字节相对A址的距离(设串中含有多个“?”号)。
【正确答案】DATA  SEGMENT
     A DB'ABC……'
     N EQU$—A
   DATA  ENDS
   CODE  SEGMENT
     ASSUME  CS:CODE,DS:DATA
   START:MOV  AX,DATA
          MOV  DS,AX
          LEA  SI,A
          LEA  DI,A+49
          MOV  CX,N
   NEXT:CMP  BYTE PTR[DI],'?'    ;判断是否为“?”
         JZ   OVER    ;是则结束
         DEC  DI    ;不是,DI减1
         LOOP NEXT
   OVER:SUB  DI,SI
         MOV  AH,4CH
         INT  21H
   CODE ENDS
   END START
【答案解析】本题要求查找最后一个“?”,为编程方便可以从字符串的最后进行查找,第一个被找到的也就是最后一个“?”,用SUB DI,SI即可求出其距A的距离。