欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

汇编语言实验——求绝对值之和

程序员文章站 2024-02-02 15:46:22
...

求绝对值之和

在BUF1和BUF2两个数据区中,各定义有10个带符号字数据,试编制一完整的源程序,求它们对应项的绝对值之和,并将和数存入以SUM为受地址的数据区中

ASSUME CS:CODE,DS:DATA,SS:STACK
;在BUF1和BUF2两个数据区中,各定义有10个带符号字数据,试编制一完整的源程序,求它们对应项的绝对值之和,并将和数存入以SUM为受地址的数据区中。
DATA SEGMENT
        BUF1 DW -56,24,54,-1,89
        BUF2 DW 45,-23,124,345,-265
        SUM DW 10 DUP(0)
        NOTE DB 'The result are:',0AH,0DH,'$'
DATA ENDS
STACK SEGMENT
        DB 128 DUP (0)
STACK ENDS
CODE SEGMENT
START:
        MOV AX,DATA
        MOV DS,AX
        MOV AX,STACK
        MOV SS,AX
        MOV SP,128

        LEA DX,NOTE
        MOV AH,9
        INT 21H

        MOV CX,5
        MOV SI,0
DEAL1:
        MOV AX,BUF1[SI]
        TEST AX, 8000H ;判断最高位
        JNZ OVER_ZERO
        JMP BACK
OVER_ZERO:
        DEC AX
        NOT AX
        JMP BACK
BACK:
        MOV BUF1[SI],AX
        ADD SI,2
        LOOP DEAL1

相关标签: 汇编语言实验