Показать сообщение отдельно
Старый 20.11.2005, 21:00     # 1
modest
Junior Member
 
Аватар для modest
 
Регистрация: 10.05.2003
Адрес: S-Petersburg Russia
Пол: Male
Сообщения: 92

modest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собойmodest Имеются все основания чтобы гордиться собой
Задачка на assembler

Есть задачка на на ассемблере: сформировать одномерный массив А= {ai} (i=1...40) где ai вычисляется по формулам: ai= (3*i*i+10)/5 + i/3 0<i<41. Я тут набросал исходник, но что-то он не работает. Подскажите что я тут не правильно сделал.

Код:
sseg segment stack
    db 64 dup(" ")
sseg ends
data segment
    mas dw 40 dup ("?") 
    count dw 1
data ends
cseg segment
     assume cs:cseg,ds:data,ss:sseg
start:
    mov ax,data
    mov ds,ax	
    mov ax,0
    mov dx,0
    mov di,0
m1: mov bx,count
    cmp bx,41
    je m2
    mov ax,3
    mul bx
    mul bx
    add ax,10
    mov dx,5
    div ax
    push ax
    mov dx,count
    mov ax,3
    div ax
    mov ax,cx
    pop dx
    add cx,dx
    mov di,count
    mov mas[di],ax
    inc count
    jmp m1
m2: mov ax,4C00h
    int 21h
cseg ends
     end start
modest вне форума