Двумерный массив геометрический прогрессия - Assembler

Узнай цену своей работы

Формулировка задачи:

name "matrix"
 
org 100h
 
m dw 4
n dw 5
nabor db 1h,2h,3h,4h,5h
   
prog:
lea si,nabor
 
mov cx,n
stroki:
 
mov ax,[si] 
inc si   
 
call print_ax  
   mul [si]
mov [si], ax
mov ah,02h
mov dl,' '
int 21h
loop stroki;  
 
call print_nl 
dec m;   
cmp m,0
 
jne prog
 
ret
 
print_ax proc
cmp ax,0
jne print_ax_r
    push ax
    mov al, '0'
    mov ah, 0eh
    int 10h
    pop ax
    ret
print_ax_r:
    pusha
    mov dx, 0
    cmp ax, 0
    je pn_done
    mov bx, 10
    div bx
    call print_ax_r
    mov ax, dx
    add al, 30h
    mov ah, 0eh
    int 10h
    jmp pn_done
pn_done:
    popa
    ret
endp

print_nl proc
    push ax
    push dx
    mov ah, 2
    mov dl, 0Dh
    int 21h
    mov dl, 0Ah
    int 21h
    pop dx
    pop ax
    ret
endp
Помогите не могу понять как сделать последующие строки геометрической прогрессией например 1 2 3 4 5 1 4 9 16 25 1 8 27 64 125 и т.д.

Решение задачи: «Двумерный массив геометрический прогрессия»

textual
Листинг программы
model tiny
.code
org 100h
 
m   equ 4
n   equ 5
 
begin:  lea bx,nabor
    mov cx,m
    xor di,di
lp1:    push    cx
 
    mov cx,n
    xor si,si
lp2:    mov ax,[bx+di]
    mul word ptr[bx+si]
    mov [bx+di+2*n],ax
    add si,2
    add di,2
    loop    lp2
 
    pop cx
    loop    lp1
 
    mov cx,n
lp3:    mov si,bx
    push    cx
 
    mov cx,m+1
lp4:    mov ax,[si]
    call    outAX
    add si,2*n
    loop    lp4
 
    call    outNL
    pop cx
    add bx,2
    loop    lp3
 
    xor ax,ax
    int 16h
    ret
 
 
outAX:  push    cx
    xor cx,cx
    mov di,10
out1:   xor dx,dx
    div di
    or  dx,'0'
    push    dx
    inc cx
    or  ax,ax
    jne out1
    mov ax,20h
out2:   push    ax
    inc cx
    cmp cx,6
    jnz out2
out3:   pop ax
    int 29h
    loop    out3
    pop cx
    ret
 
outNL:
    mov al,0dh
    int 29h
    mov al,0ah
    int 29h
    ret
 
nabor   dw  1,2,3,4,5
    dw  m*n dup(?)
    end begin

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы