用8086汇编计算两个矩阵每行元素之和的完整代码
时间: 2023-06-17 17:02:07 浏览: 95
以下是用8086汇编计算两个矩阵每行元素之和的完整代码。其中,矩阵A和矩阵B的行数和列数都是4,存储在data段中的数组中,结果存储在sumA和sumB数组中。
```
data segment
matrixA db 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
matrixB db 16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1
sumA db 0,0,0,0
sumB db 0,0,0,0
data ends
code segment
assume cs:code, ds:data
start:
mov ax, data
mov ds, ax
; 计算矩阵A每行元素之和
mov si, 0
mov cx, 4 ; 矩阵行数
mov di, 0
mov bx, 0 ; 存储每行元素之和
calc_sumA:
mov al, [matrixA+si]
add bx, al
inc si
cmp si, 4 ; 矩阵列数
jne calc_sumA
mov [sumA+di], bl
mov bx, 0
inc di
cmp di, 4 ; 矩阵行数
jne calc_sumA
; 计算矩阵B每行元素之和
mov si, 0
mov cx, 4 ; 矩阵行数
mov di, 0
mov bx, 0 ; 存储每行元素之和
calc_sumB:
mov al, [matrixB+si]
add bx, al
inc si
cmp si, 4 ; 矩阵列数
jne calc_sumB
mov [sumB+di], bl
mov bx, 0
inc di
cmp di, 4 ; 矩阵行数
jne calc_sumB
; 显示结果
mov ah, 09h
mov dx, offset sumA
int 21h
mov ah, 09h
mov dx, offset sumB
int 21h
mov ah, 4ch
int 21h
code ends
end start
```
阅读全文