回覆列表
  • 1 # 使用者646602480848

    ASSUME CS:CODE, DS:DATA

    DATA SEGMENT

    NUM DB 9, -1, -2, 8, 123, 17, -23, -78, -56 ;5個負數

    LEN EQU $ - NUM

    DATA ENDS

    CODE SEGMENT

    START:

    MOV AX, DATA

    MOV DS, AX

    SUB BX, BX

    LEA SI, NUM

    MOV CX, LEN

    LP:TEST BYTE PTR [SI], 80H ;讓[SI]中的數的符號位和1000 0000B相與,如果結果不是0,那麼代表是負數,反之,正數

    JZ OVER ;結果為0,跳轉到OVER

    INC BX ;不為0, BX加1, BX在這裡是記錄負數的個數的

    OVER:INC SI

    LOOP LP

    MOV AX,4C00H

    INT 21H

    CODE ENDS

    END START

    效果圖

    PS:若有不明白的地方, 可以追問

  • 中秋節和大豐收的關聯?
  • NBA狀元錫安和探花巴雷特,同門師兄弟誰會更早適應NBA,帶球隊走向復興?